其实很简单的三招就可以让你的系统性能提升许多。
第一招:为分区添加 noatime 挂载选项
具体做法是修改 /etc/fstab,在分区的 default 选项后面添加 noatime 挂载选项,用逗号和 default 隔开。就像这样:
1 |
/dev/hda1 / jfs defaults,noatime 0 1 |
第二招:使用 deadline 调度器
具体的做法是在启动时加上内核选项 “elevator=deadline”. (是 elevat 后面加 or。不知道为什么 or 会变成 x?)
通常情况下默认的调度器是 cfq。gentoo wiki 上有关于 cfq 的这样一段描述:
CFQ: Only use it on ext3, this scheduler’s goal is not performance, but about balancing IO among all resources.
我看了后有点无语,怎么 ext3 那套都不是优先考虑性能的。所以,如果你是桌面应用的话,使用 deadline 调度器吧。
要查看当前系统所使用的调度器可以 cat 一下 /sys/block/sda/queue/scheduler 文件,sda 换成你自己对应的硬盘。用中括号括起来的就是正在使用的调度器。
还有一个说法是 jfs 配合 deadline 调度器使用性能超好。arch wiki 上关于 jfs 的文章说:
Indeed, JFS’s performance seems to exceed that of other GNU/Linux file systems with this particular scheduler being employed.
关于此话题可以参考 linuxfans 上的 这篇帖子。
第三招:使用 tmpfs
可以把 /tmp 挂载成 tmpfs 来获得性能提升。做法是在 /etc/fstab 中添加:
1 |
tmpfs /tmp tmpfs defaults 0 0 |
这招对于提高 mplayer 的播放性能有很大帮助,因为 mplayer 是把影片 cache 在 /tmp 目录下的。这个我是深有体会,以前看 720p 的片子那个卡啊。用了上面说的第二招后有所改观。当用了这招后,720p 的影片播放起来相当流畅!这个地方搞错了,播放时直接指定缓存大小即可!
你还可以让更多的目录使用 tmpfs。比如在 /etc/default/rcS 文件中设定
1 |
RAMRUN=yes |
这样 /var/run 和 /var/lock 目录也会使用 tmpfs。
debian 默认将 /dev/shm 挂载成 tmpfs,你可以把些编译的活放到这下面进行,当然你的内存要够用哦。