系统优化小技巧三则

其实很简单的三招就可以让你的系统性能提升许多。

第一招:为分区添加noatime挂载选项
具体做法是修改/etc/fstab,在分区的default选项后面添加noatime挂载选项,用逗号和default隔开。就像这样:

/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中添加:

tmpfs   /tmp   tmpfs   defaults   0   0

这招对于提高mplayer的播放性能有很大帮助,因为mplayer是把影片cache在/tmp目录下的。这个我是深有体会,以前看720p的片子那个卡啊。用了上面说的第二招后有所改观。当用了这招后,720p的影片播放起来相当流畅!这个地方搞错了,播放时直接指定缓存大小即可!
你还可以让更多的目录使用tmpfs。比如在/etc/default/rcS文件中设定

RAMRUN=yes
RAMLOCK=yes

这样/var/run和/var/lock目录也会使用tmpfs。
debian默认将/dev/shm挂载成tmpfs,你可以把些编译的活放到这下面进行,当然你的内存要够用哦。

如何翻译Debian的Package description

Debian package description,即软件包描述,就是您执行apt-cache show pkgname时所看到的关于软件包功能的介绍。Debian或Ubuntu用户可能都有发现,有些软件包描述是中文的,但大部分是英文的。中文软件包描述可以极大方便新用户选择软件包,所以翻译它绝对是个好主意。想想吧,能够看到中文的软件包描述是件多好的事。

其实Debian早已准备好了,此项目叫做DDTP (The Debian Description Translation Project)。它有个Web翻译平台,叫DDTSS,这个平台的操作方式有点类似于wiki,你可以匿名进行翻译,也可以注册一个帐号。如果14天未使用帐号,那么帐号将被自动取消。一旦某个软件包的描述被翻译成中文后,就会进入review (复查)状态,要成为translated状态,review数必须达到3,也即有三个不同的人review后都觉得没问题,才会变为translated。当然你不可以自己review自己的翻译,DDTSS会记录你的IP的。如果某人在review时,觉得哪里翻译得不妥当,于是更改了,那么这个软件包就会重新进入review过程,review数重新从0开始。听起来要想进入translated状态还真难,稍有异意就又要从头开始review。不过这也有助于保证翻译的质量,一定要有个大家都认可的翻译才行。

知道怎么操作了,那就开始释放你的翻译激情吧。也可以做做复查工作,看看别人的翻译有没有蹩脚的地方,哪里还需要改进。无需注册,无需担心重复劳动,也无需任何经验,一切只要通过浏览器即可。那么还等什么呢?赶快贡献自己的一份力吧!

mlocate──不狂读硬盘的locate

mlocate是GNU locate的一个变种。相比原始的locate,它具有一个很好优点:

* 每次更新数据库时并不需要重新读取全部目录的内容。mlocate 在数据库中保存了
时间戳信息,无需重新读取,就能判断目录内容是否改变。所以更新的速度更快,对硬盘
的占用也更少。这是 mlocate 特有的功能。

上面这段是已经翻译过来的mlocate的deb包描述,向译者致敬!这个功能非常好,以前用locate时,每次更新数据库时硬盘吱吱作响,搞得我不得不将它改为每周更新一次数据库。而mlocate几乎让我感觉不到它的存在。

似乎mlocate已成了Debian的标配了,因为我并没有安装过,它就已经在那了。本来想装locate的,发现已有locate命令,后来才发现是mlocate提供的。

有了mlocate,就可以把locate给删了,要不然你的系统会更新两套不同的数据库。

让Iceweasel在kde4下更顺眼

即使是让gtk程序使用kde的外观,gtk程序在kde4下的显示还是不完美的。尤其是Iceweasel,网页中的控件都渲染不完全,很难看。

我想,既然kde的oxygen主题对gtk程序渲染不好,那有没有为gtk准备的oxygen主题?于是就到gnome-look.org上找,果然被我找到了。http://kims-area.com/?q=node/63

首先,适合于gtk的oxygen主题叫KDE4 Oxygenstyle,可以从这里下载,居然还提供deb包的 ;-) 。装好后在kde系统设置里把gtk程序设成使用那个主题就好了。

不过这样会有个问题,图标不再是oxygen的了。不过幸好,已经有人为我们准备好了oxygen图标了。可以从这里下载。装好后修改.gtkrc-2.0-kde4,在最后加一行:

gtk-icon-theme-name="OxygenRefit2"

这样gtk程序就会使用OxygenRefit2图标主题了。个人感觉这样比让gtk使用kde的oxygen来得漂亮。

好了,下面开始给Iceweasel整容,让它更oxygen。其实也就是装个皮肤了,呵呵。用这个叫KFirefox的皮肤。这个皮肤很强大,是我见过的最强大的皮肤!

OpenOffice.org也变得好看了,如果是用OOo的gtk界面的话,那就是oxygen感觉的,用kde的oxygen渲染OOo的gtk界面试过的都知道,那是根本不能用的。当然为什么不用OOo的kde界面?因为那是qt3的,更不协调了。

现在就留下qt3程序没办法了,没有为qt3准备的oxygen。

参考网址:
http://gnome-look.org/content/show.php/Oxygen+Refit+2?content=79756
http://kims-area.com/?q=node/63
http://ramonantonio.net/kde-firefox/
http://www.leninlee.cn/?p=315

让永中office 2009个人版在awesome下正常显示

在awesome中永中office 2009个人版显示不出来。到永中论坛上求助,有人说是java toolkit的问题。于是我export了变量,但问题依旧。

仔细查看/usr/bin/eio文件发现,其实命令开始就已经指定好了环境变量。这样问题就变得简单了。直接编辑/usr/bin/eio文件,把没用的行都注释掉,变成下面这样:

#!/bin/bash
#if test -n "$(grep  "Ubuntu"  /proc/version)"; then
   export AWT_TOOLKIT=MToolkit
#else
#   export AWT_TOOLKIT=XToolkit
#fi
exec 4<&0 0</etc/Evermore/EIOffice/installinfo.cfg
read line1
exec 0/dev/null

再在awesome下运行永中,界面就正常了。

永中论坛上的帖子见这里:http://forum.evermoresw.com/thread-14597-1-1.html