Linux的优化技术,Linux优化的一些方法

本文介绍了一系列提高Linux系统性能的方法,包括使用特定编译选项、优化内核编译、关闭不必要的服务、合理规划文件系统及禁用X窗口系统等。

编译选项

当我们采用 -O9 来编译程序时,或许文件字节数是最大的,但是往往其运行速度也是最快的。

根据不同的机器架构,你可以把下面的语句加入 /etc/profile 。

i686:

export CFLAGS=-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer -fno-exceptions

i586:

export CFLAGS=-O3 -march=pentium -mcpu=pentium -ffast-math -funroll-loops -fomit-frame-pointer -fforce-mem -fforce-addr -malign-double -fno-exceptions

i486:

FLAGS=-O3 -funroll-all-loops -malign-double -mcpu=i486 -march=i486 -fomit-frame-pointer -fno-exceptions

另外,安装程序时,使用 tarball 格式总要比 RPM 格式来得好,因为, tarball 需要重新编译,能针对你的机器架构作优化,得到最好的性能。这也是本站下载中心提供的都是 .tar.gz 格式的原因吧!

重新编译内核

一般的 Linux 发行商发布的 Linux 版本,其内核总是会带有一些对你来说不是很实用的东西,例如对无线火腿(HAM Radio)的支持,对 Token Ring 的支持等。

在任何一个子目录下 untar 解开新的内核源程序。

tar xvfz linux-x.x.xx

rm /usr/src/linux

这通常是一个符号连接。

在 /usr/src/ 下建立一个符号连接到你的新内核目录。

ln -s xxx/yyy/xxx/linux.x.x.xx /usr/src/linux

将当前目录变成 /usr/src/linux

cd /usr/src/linux

变成超级用户

su

配置内核

如果你在 X window 下并且希望有图形界面:

make xconfig

如果你不在 X Window 下或不想使用图形界面:

make config

逐个回答完问题后稍等片刻,等提示符出现或图形界面消失,系统就配置好了。

生成新内核:

make dep ; make clean

make zImage

注意大小写一定要搞对!

如果你用了模块,你还需要生成和安装模块

make modules

make modules-install

察看你的 /etc/lilo.conf 看用的是那个目录的那个文件作为

image。例如:image = /boot/vmlinuz

将 /usr/src/linux/System.map 复制到 /boot 目录中,将 /usr/src/linux/arch/i386/boot/zImage 复制到 /boot 目录中并改名为 vmlinuz

安装新内核并重新起动。

lilo

shutdown -r now

停止不使用的服务

Sendmail, httpd, crond, kudzu, mysql, portmap, postgresql, smb, snortd, webmin, inetd (或者 xinetd) 等都是很棒的程序,但是如果你不会使用他们,干吗要让他们占用您宝贵的资源呢?而且,这些程序都会带来安全隐患。一般说来,一套"干净"的 Linux 系统,只需要gpm, network, syslog, ssh 和 xfs。如果临时有需要,就手工启动好了。这些启动脚本一般都在 /etc/rc.d/init.d 目录下。

检查自己的机器上使用中的服务,可以采用 nmap 工具扫描。

[xyj@freelamp.com]$ nmap -p1-65535 211.94.129.28

Starting nmap V. 2.54BETA30 ( www.insecure.org/nmap/ )

Interesting ports on freelamp.com (211.94.129.28):

(The 65492 ports scanned but not shown below are in state: closed)

---Edited version of the output due to space considerations--

Port State Service

...

514/tcp open shell

1025/tcp open listen

1099/tcp open unknown

1214/tcp open unknown

...

检查特定端口上正在运行的程序名,可以采用:

[root@freelamp.com /root]# netstat -anp|more

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

....

tcp 0 0 203.199.66.200:8007 203.199.66.197:1060 CLOSE 1005/java

tcp 0 0 203.199.66.200:22 203.199.66.197:3768 ESTABLISHED 1381/sshd

tcp 0 0 203.199.66.200:23 192.168.57.46:1546 ESTABLISHED 1229/in.telnetd: 19

....

最后一列显示运行的程序及其 PID。

我们还可以采用 ps 命令检查机器上正在运行的守护程序:

[root@freelamp.com root]# ps xc -u 0

PID TTY STAT TIME COMMAND

...

1475 ? S 0:02 sendmail

1498 ? S 0:04 gpm

16539 ? S 0:01 httpd

规划好你的文件系统

在安装系统之前,您就需要对硬盘做好恰当的规划。划分一定的文件系统,不仅仅是系统本身的需要,而且在安全层面上也十分有意义。我们一般需要 /,/usr,/var,/tmp ,/home 和 swap 这么几个。另外,把 / 和 /usr 开得大一点,十分有必要。如果你的机器提供别人发送邮件,或者提供个人主页等服务,那么一个很大的 /home 就极为重要,如果你的业务够好的话,你甚至可以购买第二个硬盘,建立 /home2 。

另外,把 swap 分区,放到硬盘的最外层,能提高读写速率。如果有多个硬盘的话,可以在每个硬盘上各开 swap 分区,另外,建议 swap 分区的大小为物理内存的两倍。

如果采用 IDE 硬盘的话,您可以采用

/sbin/hdparm -c1 -d1 -m16 /dev/hda

来提高硬盘性能。

新版本的 Linux 都支持日志文件系统,这类文件系统不仅提供文件完整性上快速恢复,在读写速度上也较普通的 ext2 文件系统有很大提升。

文件的最后存取时间,对很多人来说没有任何用户,因此,我们可以关闭操作系统记录文件最后存取时间的功能,修改: /etc/fstab :

把 dev/hda6 /home ext2 defaults 1 2

改为:

/dev/hda6 /home ext2 defaults,noatime 1 2

关闭 X 相关的软件

如果你像我一样,不喜欢在窗口环境下干活,那么要 X 干么?让我们把机器启动后的缺省界面为 Console 吧:

修改: /etc/inittab 把

id:5:initdefault:

修改为:

id:3:initdefault:

没有浏览器了么,不要紧,你可以在 Console 下使用 lynx 来浏览网站。

links 也是一个不错的浏览器,你可以从

artax.karlin.mff.cuni.cz/ mikulas/links/ 下载。

关闭多余的虚拟控制台

我们知道从控制台切换到 X 窗口,一般采用 Alt-F7 ,为什么呢?因为系统默认定义了 6 个虚拟控制台,所以 X 就成了第7个。实际上,很多人一般不会需要这么多虚拟控制台的,修改

/etc/inittab ,注释掉那些你不需要的。

# Run gettys in standard runlevels

1:2345:respawn:/sbin/mingetty tty1

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

#5:2345:respawn:/sbin/mingetty tty5

#6:2345:respawn:/sbin/mingetty tty6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值