centos 6 系统优化
公司开发环境使用的是centos+virtualbox,只是为了方便开发做了一些基本的优化,既然是内部开发环境,首先保证的是开发方便少灵异事件,其它安全性和性能基本没有要求.
1.关闭iptables 和selinux
iptables:
service iptables stop
chkconfig iptables off
service ip6tables stop
chkconfig ip6tables off
selinux:
临时关闭 setenforce 0
永久关闭 vi /etc/selinux/config
加入或更改为 SELINUX=disabled
注意需要重启生效
2.调整最大打开文件数调整为65535
系统默认为1024
vi /etc/security/limits.conf
加入
* soft nofile 65535
* hard nofile 65535
3.关闭ipv6
vi /etc/modprobe.d/dist.conf
在最后加入
alias net-pf-10 off
alias ipv6 off 之后重启电脑
4.每天四点和国家授时中心进行时间校正
vi /etc/crontab
加入
* 4 * * * /usr/sbin/ntpdate 210.72.145.44
5.vi 默认开启 语法高亮 显示行号 鼠标定位等
vi /etc/vimrc
加入 syntax on
和 set nu
如果想用在vi中使用鼠标确定位置,可以加入set mouse=a
(我没加,视个人爱好)
6.增加admin组用户默认有sudo 权限
visudo
加入
%admin ALL=(ALL) NOPASSWD: ALL
保存退出,之后:
groupadd admin
这样以后加有管理员权限的账户只要用 useradd -Gadmin XXX
就可以了
7.安装 Vbox Guset Additions
点虚拟机窗口上的设备-->安装增强功能,之后登陆终端
a.挂光驱
mkdir /cdrom
mount /dev/sr0 /cdrom (是不是sr0 视个人情况)
b. 安装依赖环境
yum install gcc
yum instal kernel-devel
yum install dkms
c.安装
cd /cdrom
./VBoxLinuxAdditions.run
d.重启测试 (鼠标自动移出 等)
8.禁用GSSAPI和 DNS反向解析来提高ssh连接速度
同时关闭空密码用户登陆,允许root login
vi /etc/ssh/sshd_config
设置以下几项为
GSSAPIAuthentication no
UseDNS no
PermitEmptyPasswords no
PermitRootLogin yes
保存 service sshd restart
9.设置用户6小时未操作注销终端
vi /etc/profile
export TMOUT=21600
10.取消生成whatis数据库和locate数据库,防止重建数据库时cpu内存占用过高的情况
rm -rf /etc/cron.daily/makewhatis.cron
rm -rf /etc/cron.daily/mlocate.cron
11.tcp 性能优化
vi /etc/sysctl.conf
加入
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 262144
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
12.关闭并取消没用程序的开机启动查看所有服务
chkconfig --list
查看启动的服务 chkconfig --list |grep :on
先用service 服务名 stop 关闭
在用chkconfig 服务名 off 取消开机启动
只保留以下程序
NetworkManager
cpuspeed
crond
haldaemon
irqbalance
kdump
lvm2-monitor
messagebus
portreserve
rsyslog
spice-vdagentd
sshd
sysstat
udev-post
vboxadd
vboxadd-service
vboxadd-x11
13.日志定时清除
# backup sys log every day 1:01
28 04 * * * root /opt/scripts/cron/backuplog.sh
# clear backup sys log every month 1 1:30
30 1 1 * * root /opt/scripts/cron/clearlog.sh
/opt/scripts/cron/backuplog.sh
#!/bin/sh
Day=$(date +%Y%m%d)
tar -cf /var/log/wtmp_"$Day".tar.gz /var/log/wtmp
echo "">/var/log/wtmp
tar -cf /var/log/utmp_"$Day".tar.gz /var/run/utmp
echo "">/var/run/utmp
/opt/scripts/cron/clearlog.sh
#!/bin/sh
Day=$(date -d "-2 month" +%Y%m)
rm -f /var/log/wtmp_"$Day"*.tar.gz
rm -f /var/log/utmp_"$Day"*.tar.gz
14.安装jdk telnet mysql 等常用软件
mysql未启动,使用请chkconfig mysql on
service mysql start
即可
15 禁用ctrl+alt+del自动重启
注释掉
exec /sbin/shutdown -r now "Control-Alt-Delete pressed"
16 删除日志,命令行记录 导出虚拟机
rm -rf /var/log/wtmp
rm -rf /var/run/utmp
rm -rf /root/.bash_history
经测试vbox 配置双核 1G时 ,使用上面的镜像开机速度可以在10秒左右,当然linux的开机速度提升并没有实际意义