linux优化项

注:在修改系统文件之前,请先备份!!!!!!!!!!!!!

1、修改ip地址、网关、主机名、host列表、DNS
a:修改ip地址、网关
vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes #网卡开机自动激活
BOOTPROTO=static#静态IP地址获取状态 如:DHCP表示自动获取IP地址
IPADDR=192.168.10.1#IP
NETMASK=255.255.255.0 #网卡对应的网络掩码
GATEWAY=192.168.10.253 #网关地址

b:修改主机名
vim /etc/sysconfig/network
#表示系统是否使用网络,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动
NETWORKING=yes
#设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应
HOSTNAME=master

c:修改hosts列表
vim /etc/hosts
在文件中添加一行代码:192.168.10.1 master

d:修改DNS
vim /etc/resolv.conf
添加:
nameserver 8.8.8.8
nameserver 4.4.4.4

#重新启动网络服务器上述配置生效
service network restart


2、关闭防火墙、关闭selinux、清空iptables
a:关闭防火墙
setup --> Firewall configuratio

b:关闭selinux
修改selinux状态 如果修改配置文件则永久生效,但是必须要重启系统
vim /etc/selinux/config 修改 SELINUX=disabled
如果想立即生效(临时性的改变) setenforce 0
setenforce 1 设置SELinux 成为enforcing模式 setenforce 0 设置SELinux 成为permissive模式
查看状态 getenforce

c:清空iptables
iptables -F   #清空iptables规则
iptables -L   #查看iptables规则
#保存规则,注意,虽然清空了,不保存的话,重启后,又会有规则。
/etc/init.d/iptables save


3、精简开机启动服务
crond    #定时任务
network  #网络
syslog   #系统日志
sshd     #远程管理
只保留以上4个服务
关闭系统服务命令:setup --> System services

4、添加新用户进行sudo授权
#减少root用户操作次数
useradd admin
echo "admin" | passwd --stdin admin&&history -c  #修改密码并清空历史命令

visudo
在root ALL=(ALL)下添加一行
admin ALL=(ALL) ALL
这样admin就相当于是一个管理员了

5、更新yum源
a:更新源 最小化安装是没有wget工具的,必须先安装在修改源
yum install wget

b:mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

c:#下载网易镜像源:
http://mirrors.163.com/.help/CentOS6-Base-163.repo
#或者
#下载搜狐镜像源:
http://mirrors.sohu.com/help/CentOS-Base-sohu.repo
然后将下载下来的镜像源拷贝到/etc/yum.repos.d目录下

d:
yum clean all   #清空yum缓存
yum makecache   #建立yum缓存
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY #指令导入签名key
yum upgrade     #开始更新系统以及内核



6、定时自动更新时间
校对时间的两个网站
time.windows.com      time.nist.gov

每间隔5分钟同步一次时间
echo '*/5 * * * * /usr/sbin/ntpdate time.windows.com >/dev/null 2 >&1' >>/var/spool/cron/root


7、、优化SSH和屏蔽root账号远程登陆
注:hadoop集群环境不要修改端口号
a:备份SSH配置
cp /etc/ssh/sshd_config /etc/ssh/sshd_config_bak

b:修改SSH配置
vim /etc/ssh/sshd_config
PermitRootLogin no      #禁止root账号登陆
PermitEmptyPasswords no #禁止空密码
UseDNS no               #不使用DNS

c: 重新载入SSH配置 /etc/init.d/sshd reload

d:如果使用虚拟机,还要修改虚拟网卡ip地址:192.168.10.253



8、锁定关键文件系统
chattr +i /etc/passwd
chattr +i /etc/inittab
chattr +i /etc/group
chattr +i /etc/shadow
chattr +i /etc/gshadow

解锁则为:chattr -i /etc/passwd

安全操作就是把chattr文件移动到别的目录下,并修改名字
例:/bin/mv /usr/bin/chattr /usr/bin/my.txt


9、调整文件描述符
a:#查看文件描述符大小
ulimit -n

b:
第一种:echo '* - nofile 65535' >> /etc/security/limits.conf

第二种:把ulimit -SHn 65535命令加入到/etc/rc.local,然后每次重启生效 追加命令到rc.local配置文件里面
cat >>/etc/rc.local<<EOF
#open files
ulimit -HSn 65535
#stack size
ulimit -s 65535
EOF



10、、内核参数优化 vim /etc/sysctl.conf
a:将以下内容拷贝到上述文件中
#可用于apache,nginx,squid多种等web应用
net.ipv4.tcp_max_syn_backlog = 65536
net.core.netdev_max_backlog = 32768
net.core.somaxconn = 32768

net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216

net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2

net.ipv4.tcp_tw_recycle = 1
#net.ipv4.tcp_tw_len = 1
net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800

#net.ipv4.tcp_fin_timeout = 30
#net.ipv4.tcp_keepalive_time = 120
net.ipv4.ip_local_port_range = 1024 65535

#以下参数是对centos6.x的iptables防火墙的优化,防火墙不开会有提示,可以忽略不理。
#如果是centos5.X需要吧netfilter.nf_conntrack替换成ipv4.netfilter.ip
#centos5.X为net.ipv4.ip_conntrack_max = 25000000
net.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_tcp_timeout_established = 180
net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120
net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120



b:立即生效 /sbin/sysctl -p centos6.5可能会报错

error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
出现这个的原因是,没有自动载入bridge桥接模块

modprobe bridge
echo "modprobe bridge">> /etc/rc.local




11、、设置系统字符集

vim /etc/sysconfig/i18n

如果想用中文提示:LANG=”zh_CN.UTF-8″ 如果想用英文提示:LANG=”en_US.UTF-8″ 如果临时切换也可以 LANG=zh_CN.UTF-8





猜你喜欢

转载自jonny-java.iteye.com/blog/2236869