1,关闭不需要的服务
利于减少内存和CPU时间的占用,提高安全性。
在linux机器上通常有四项服务是必须保留的
network
linux机器的网络,如果不上网可以关闭。
sshd
openssh server,如果机器不是本地操作,而是托管到IDC机房,那么访问机器时需要通过这个sshd服务进行。
syslog
linux系统的日志系统,必须要有,否则机器出现问题时会找不到原因。
除了这四项必需的服务之外,其他的服务可以根据系统的用途而定,比如:数据库服务器,就需要启用mysqld(或oracle)、web服务器,就需要启用apache或nginx。
2,关闭不需要的tty
编辑/etc/inittab
找到如下一段:
这段命令使init为你打开了6个控制台,分别可以用alt+f1到alt+f6进行访问
此6个控制台默认都驻留在内存中,事实上没有必要使用这么多的
用ps auxf这个命令可以看到,是六个进程
如何关闭这些进程?
通常我们保留前2个控制台就可以了,
把后面4个用#注释掉就可以了
然后无需重启机器,只需要执行 init q 这个命令即可
init q
q作为参数的含义:重新执行/etc/inittab中的命令
3,关闭ipv6?
ipv6在系统安装完成后它会作为模块常驻核心,没有必要。
首先,编辑网络配置文件:
vi /etc/sysconfig/network
然后,关闭其模块:vi /etc/modprobe.conf
在文件中添加以下两行
修改完成后,重启机器使之生效。
4,关闭atime?
一个linux文件默认有3个时间:
atime:对此文件的访问时间
ctime:此文件inode发生变化的时间
mtime:此文件的修改时间
如果有多个小文件时通常没有必要记录文件的访问时间,这样可以减少磁盘的io,比如web服务器的页面上有多个小图片。
如何进行设置呢?
修改文件系统的配置文件:vi /etc/fstab
在包含大量小文件的分区中使用noatime,nodiratime两项
例如:
/dev/md5 /data/pics1 ext3 noatime,nodiratime 0 0
这样文件被访问时就不会再产生写磁盘的io
5,必须让服务器运行在level 3上
做法:
vi /etc/inittab
id:3:initdefault:
让服务器运行X是没有必要的
6,优化sshd
7,优化shell
修改命令history记录
# vi /etc/profile