天天看点

Linux集群和自动化维1.4.3 CentOS 6.4 x86_64系统最小化优化脚本

<b>1.4.3 centos 6.4 x86_64系统最小化优化脚本</b>

 centos 6.4 x86_64系统最小化优化脚本,脚本内容如下所示(请注意下面的代码中有中文注释内容,如果是放在线上运行时则要注意):

#!/bin/bash

#系统基础升级

wget

http://mirrors.163.com/.help/centos6-base-163.repo

cd

/etc/yum.repos.d/

mv

centos-base.repo centos-base.repo.bak

centos6-base-163.repo centos-base.repo

yum clean all #清除yum缓存

yum makecache #重建缓存

yum update  #升级linux系统

#添加epel外部yum扩展源

/usr/local/src

http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm -ivh

epel-release-6-8.noarch.rpm

#安装gcc基础库文件及sysstat工具

yum -y install

gcc gcc-c++ vim-enhanced unzip unrar sysstat

#配置ntpdate自动对时

ntp

echo "01 01

* * * /usr/sbin/ntpdate ntp.api.bz   

&gt;&gt; /dev/null 2&gt;&amp;1" &gt;&gt; /etc/crontab

ntpdate

ntp.api.bz

service crond

restart

#配置文件的ulimit值

ulimit -shn

65534

echo

"ulimit -shn 65534" &gt;&gt; /etc/rc.local

cat &gt;&gt;

/etc/security/limits.conf &lt;&lt; eof

*                     soft     nofile             65534

*                     hard     nofile             65534

eof

#基础系统内核优化

/etc/sysctl.conf &lt;&lt; eof

net.ipv4.tcp_syncookies

= 1

net.ipv4.tcp_syn_retries

net.ipv4.tcp_tw_recycle

net.ipv4.tcp_tw_reuse

net.ipv4.tcp_fin_timeout

net.ipv4.tcp_keepalive_time

= 1200

net.ipv4.ip_local_port_range

= 10000 65535

net.ipv4.tcp_max_syn_backlog

= 16384

net.ipv4.tcp_max_tw_buckets

= 36000

net.ipv4.route.gc_timeout

= 100

net.ipv4.tcp_synack_retries

net.core.somaxconn

net.core.netdev_max_backlog

net.ipv4.tcp_max_orphans

/sbin/sysctl -p

#禁用control-alt-delete组合键以防止误操作

sed -i 's@ca::ctrlaltdel:/sbin/shutdown

-t3 -r now@#ca::ctrlaltdel:/sbin/shutdown     -t3 -r now@' /etc/inittab

#关闭selinux

sed -i

's@selinux=enforcing@selinux=disabled@' /etc/selinux/config

#关闭iptables

service iptables

stop

chkconfig

iptables off

#ssh服务配置优化,请保持机器中至少存在一个具有sudo权限的用户,下面的配置会禁止root远程登录

's@#permitrootlogin yes@permitrootlogin no@' /etc/ssh/sshd_config

#禁止空密码登录

's@#permitemptypasswords no@permitemptypasswords no@' /etc/ssh/sshd_config

#禁止ssh反向解析

's@#usedns yes@usedns no@' /etc/ssh/sshd_config /etc/ssh/sshd_config

service sshd

#禁用ipv6地址

"install ipv6 /bin/true" &gt; /etc/modprobe.d/disable-ipv6.conf

#每当系统需要加载ipv6模块时,强制执行/bin/true来代替实际加载的模块

"ipv6init=no" &gt;&gt; /etc/sysconfig/network-scripts/ifcfg-eth0

#禁用基于ipv6网络,使之不会被触发启动

ip6tables off

#vim基础语法优化

/root/.vimrc &lt;&lt; eof

set number

set ruler

set nohlsearch

set shiftwidth=2

set tabstop=4

set expandtab

set cindent

set autoindent

set mouse=v

syntax on

#精简开机自启动服务,安装最小化服务的机器初始可以只保留crond|network|rsyslog|sshd这4个服务

for i in

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

off;done

for cursrv  in crond rsyslog sshd network;do chkconfig

--level 3 $cursrv on;done

#重启服务器

reboot

继续阅读