Tag Archives: Linux

Linux 硬件时区折腾备忘

前段时间折腾家中 Nas的虚拟化服务,有时候虚拟机系统时间总是快8个小时。Guest这边设好了,到了 物理机就会慢8个小时。网上说只要修改/etc/default/rcS中的 UTC=no就行了,但还是没反映,没办法,一步步找问题。发现在/etc/rcS.d/S05hwclock.sh有这样一段话: # 2012-02-16 Roger Leigh rleigh@debian.org # – Use the UTC/LOCAL setting in /etc/adjtime rather than # the UTC setting in /etc/default/rcS. Additionally # source /etc/default/hwclock to permit configuration.   也就是说时间是按照/etc/adjtime设置的,而不是/etc/default/rcS,晕倒。查了下adjtime文件,原来这个才是现在调整时间的设置文件,那个rcS已经被忽略了,也就是网上的那些方法只适合以前的系统,看来走了不少弯路啊。 将 /etc/adjtime 第三行由 UTC 改为 LOCAL 即可。

Loading

Posted in 随笔 | Tagged | 1 Comment

Linux 线上系统调优备忘

大公司呆久了,都会对 SA的依赖十分强烈,很多事情 SA都帮我们搞定了。如今控制成本,没有招聘 SA,又没有购买 VPS,从买物理机开始到 IDC部署,服务器调优,虚拟机管理,全部都是自己来,才发现,安装一台 Linux机器自己玩很简单,但是要达到线上服务器的标准,还有若干调优工作需要做,有 SA的日志是多幸福的事情啊。 物理机设备驱动 Dell服务器默认安装系统后会报找不到驱动: W: Possible missing firmware /lib/firmware/tigon/tg3_tso5.bin 因为 Debian/Ubuntu 的包都是开源的,默认开源驱动性能不行,于是需要添加 non-free源: deb http://ftp.de.debian.org/debian main contrib non-free deb-src http://ftp.de.debian.org/debian main contrib non-free 然后: apt-get update apt-get install firmware-linux-free firmware-linux-nonfree 解决 Dell驱动报错问题。 配置限制 查看 /etc/security/limits.conf 没有就新建,加入 … Continue reading

Loading

Posted in 随笔 | Tagged | 2 Comments

Linux 下配置 Iptables 端口转发

经常需要对服务端的端口进行转发映射,让链接A服务器(202.181.55.93:8080)端口的所有tcp数据,forward到B服务器(106.185.43.22:80)端口,比如国内联通出国访问比较快,而电信比较坑爹,如果你家是电信网络,你却想畅快的访问境外的 vps,那么可以在你联通网络的境内服务器上进行这样一个端口映射,你链接境内服务器(201.181.55.93:8080)端口相当于链接境外服务器的(106.185.43.22:80)端口。 Linux内核的 Iptables很强大,它维护一组内核变量,使用 /sbin/iptables命令进行直接规则设置,且通过配置新规则,可以直接支持端口转发,简单在 A服务器上使用下面这个 shell脚本即可: #! /bin/sh # create forward rule by source interface # http://serverfault.com/questions/532569/how-to-do-port-forwarding-redirecting-on-debian PortForward1() { local IN_IF=$1 local IN_PORT=$2 local OUT_IP=$3 local OUT_PORT=$4 local IPTBL=”/sbin/iptables” echo “1” > /proc/sys/net/ipv4/ip_forward $IPTBL -A PREROUTING -t nat -i … Continue reading

Loading

Posted in 随笔 | Tagged | Leave a comment

EPoll 和高性能没什么关系

现在很多人一提高性能后端开发,就总会想起 EPoll 来。其实一个成熟的高性能服务器,epoll相关的代码,不到万分之一。 而往往入门服务端的人,都天真的人为:高性能服务端开发 == EPOLL,真好笑,之所以会出现 epoll这种被捧上天的垃圾,明明就是 posix 或者最早版本的 unix/bsd/systemv 的设计考虑不完善。 按今天的眼光反思 posix 和 unix/bsd/systemv 当年的设计,epoll 这种补丁就不应该实现。 异步 reactor 框架应该就只有一个简单而统一的 selector 就足够了,所有系统都相同,提供: register: 注册 unregister:删除 set:设置 wait:等待事件 read:读取事件 wake:将等待中的 wait 无条件唤醒 别以为这些 poll / epoll / kevent / pollset / … Continue reading

Loading

Posted in 网络编程 | Tagged | Leave a comment