本人初学linux运维,在观看oldboy视频教程后,对学习到的知识进行总结,知识内容均出自oldboy视频教程。

###########################################################################

1.添加用户。在企业产品环境下,应尽量避免直接到root用户下操作。

   添加用户:useradd oldboy  oldboy是自己取的用户名

   设置用户密码:passwd oldboy(交互式设置)或echo "*******"|passwd --stdin oldboy 

   查看当前的用户 whoami

   用户切换 su - oldboy root切换到oldboy是不需要密码的,反过来需要输入root用户的密码。


2.yum源设置。yum安装软件,默认下载的rpm包的获取途径是国外的官方源,有时为了提高下载速度,我们需要将yum源改成国内的源。

   国内目前速度较快的常用更新源有 http://mirrors.sohu.com/ 和 http://mirrors.163.com/

代码如下:

cd /etc/yum.repos.d      进入目录                 

/bin/mv CentOS-Base.repo CentOS-Base.repo.ori  备份

wget http://mirrors.sohu.com/help/CentOS-Base-sohu.repo  下载   

/bin/mv CentOS-Base-sohu.repo CentOS-Base.repo     替换

linux系统安装后的优化_优化

yum upgrade   将软件更新


3.安装必要的软件包 

yum install lrzsz sysstat -y  安装

rpm -qa sysstat lrzsz      查看

linux系统安装后的优化_优化_02


4.关闭Selinux。Selinux是linux系统中的一个安全机制,有时会给用户造成很多麻烦。

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' etc/selinux/config  修改

grep SELINUX=disabled /etc/selinux/comfig        确认修改完成(养成良好习惯)      

setenforce 0           临时生效命令    

getenforce            查看selinux状态

linux系统安装后的优化_优化_03

**************************注**************************

在用vi命令编辑文件时,按一下键盘上的"i"就可以了.这样你就可以编辑文本,想要退出并保存,先按ESC后输入:wq即可。

**************************注释完**********************


5.设定runlevel为3。运行级别设置

grep 3:initdefault etc/inittab 

id:3:initdefault  

linux运行级别有六个(0-6)

linux系统安装后的优化_优化_04


6.精简开机启动。

setup调出设置窗口,在system services中设置启动项,或者直接输入ntsysv命令调出system services中的启动项设置窗口。

linux系统安装后的优化_优化_05

用脚本直接完成,先将所有启动项关闭,再打开自己想要开机启动的服务。

LANG=en   转换字符,避免显示乱码

for oldboy in `chkconfig --list|grep 3:on|awk'{print $1}'`;do chkconfig --level 3 $oldboy

off;done  关闭多有开机启动的服务

for oldboy in crond network syslog sshd ;do chkconfig -- level 3 $oldboy on;done 

设置crond network syslog sshd四个服务开机启动

chkconfig --list|grep 3:on  查看

linux系统安装后的优化_linux_06


7.字符集调整。

  服务端字符调整:

linux系统安装后的优化_优化_07cp /etc/sysconfig/il8n /etc/sysconfig/il8n.ori

echo 'LANG="ZH_CN.GB18030"' >/etc/sysconfig/il8n

cat /etc/sysconfig/il8n      ##检查是否修改完成

source/etc/sysconfig/il8n 或者 . /etc/sysconfig/il8n

echo $LANG             ##检查是否生效

  客户端调整字符集,在CRT软件中调整

linux系统安装后的优化_linux_08


8.时间同步。

  对于centos5可通过/sbin/ntpdate time.nist,gov 命令同步,但是这样只能同步一次,我们更希望能将时间同步放到定时任务中。操作方法如下:

linux系统安装后的优化_优化_09

[root@mode ~]# echo '#time sync by oldboy at 2010-2-1'>>/var/spool/cron/root

[root@mode ~]# echo '*/5 * * * * /sbin/ntpdate time.nist,gov >/dev/null 2>&1' >>/var/spool/cron/root


9.加大服务器文件描述符

linux系统安装后的优化_linux_10

linux系统安装后的优化_优化_11

echo '*       -      nofile      65535 '>>/etc/security/limits.conf 


10.调整内核参数文件/etc/sysctl.conf。

所谓内核优化,主要是在linux系统中针对业务服务应用而进行的系统内核参数优化,优化并无特殊。

说明:本优化适合apache,nginx,squid多种等web应用。

vi /etc/sysctl.conf编辑文件,在文件的最后添加

net.ipv4.tcp_fin_timeout = 2

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

  ##前三个可以很好解决time_wait过多的方法 减少time_out时间,重用,快速回收 

net.ipv4.tcp_syncookies = 1  ##启用cookies,防止syn攻击

net.ipv4.tcp_keepalive_time = 600  

net.ipv4.ip_local_port_range = 4000    65000   ##端口范围

net.ipv4.tcp_max_syn_backlog = 16384    ##加大syn队列长多,也可以防止syn攻击

net.ipv4.tcp_max_tw_buckets = 36000    ##控制time_wait的数量,太多不好

net.ipv4.route.gc_timeout = 100 

net.ipv4.tcp_syn_retries = 1

net.ipv4.tcp_synack_retries = 1

net.core.somaxconn = 16384           ##系统同时发起的TCP连接数最大值

net.core.netdev_max_backlog = 16384

net.ipv4.tcp_max_orphans = 16384

##一下参数是iptables防火墙优化,在防火墙没有开启时,使用sysctl-p生效时会报错####

net.ipv4.ip_conntrack_max = 25000000

net.ipv4.netfilter.ip_conntrack_max = 25000000

net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=180

net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120

net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60

net.ipv4.netfilter.ip_conntrack_tcp_timeoutfin_wait = 120

最后 sysctl  -p 命令使文件生效

linux系统安装后的优化_优化_12

linux系统安装后的优化_linux_13

有关linux netstat输出的网络连接状态信息的详细知识可以参考oldboy的博文http://oldboy.blog.51cto.com/2561410/1184139  此博文转载于老男孩培训


11定时清理clientqueue目录的垃圾文件防止占满磁盘空间

 /var/spool/clientmqueue/   sendmail邮件服务邮件临时存放地点,为了防止inode被占满,需要定时清理。注意:C5.8默认就有sendmail服务,C6.4默认没有,没有就不用管这个,一旦有这个服务,必须做这样的优化。

手动清理:

linux系统安装后的优化_linux_14

定时清理:

[root@mode ~]# find /var/spool/clientmqueue/ -type f |xargs rm -f

[root@mode ~]# mkdir /server/scripts -p

[root@mode ~]# vi /server/scripts/del.sh

[root@mode ~]# crontab -e

添加任务:00 00 * * 6 /bin/sh/server/scripts/del.sh >/dev/null 2>&1  周六零点清理

linux系统安装后的优化_linux_15


12.系统关键文件上锁

linux系统安装后的优化_linux_16

处理完后,可以chattr名字改掉,这样就没有其它人可以搞定了

mv  /usr/bin/chattr /usr/bin/oldboy

chattr +i是上锁,chattr -i是解锁


13 清空/etc/issue,去除系统及内核版本登录前的屏幕显示

cat /etc/issue

> /etc/issue 


更深入的优化技巧可以参考老男孩培训的博客

转载于老男孩培训 http://oldboy.blog.51cto.com/2561410/988726


***************************************完************************************************