Linux服务器的性能调优实战篇CentOS6最小化安装后的优化

一、CentOS6.8 X86_64 最小化安装后的优化

用服务器使记得一个原则,系统安装的应用包最小化,服务器越稳定。

(1)系统的基础优化

  1)更新yum官方源

  为了让Centos6.8系统使用速度更快的更新源,运维人员都会选择更换源,一般会原则网易的更新源。

  #wget http://mirrors.163.com/ .help/CentOS6-Base-163.repo    下载repo文件

  # cd /etc/yum.repos.d/

  # mv CentOS-Base.repo CentOS-Base.repo.bak      备份repo文件

  # mv CentOS6-Base-163.repo CentOS-Base.repo    替换repo文件

  # yum clean all      清理yum缓存

  # yum makecache      重建缓存

  # yum update        升级Linux系统

  # wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm  增加epel源,下载rpm文件

  # rpm -ivh epel-release-6-8.noarch.rpm

  # # yum -y install gcc gcc-c++ vim-enhanced unzip unrar sysstat    安装gcc基础库及sysstat工具

  # yum install yum-priorities -y    安装yum-priorities源

  # yum install yum-priorities

  确保文件里面有如下内容:

  [main]

  enabled = 1

  2)关闭不需要的服务

  好处是可以减少内存和cpu的资源占用。

  # ntsysv    列出需要启动服务,其他根据实际情况关闭

  crond      计划任务

  network     网络服务,不开启无法上网

  sshd       ssh服务守护进程

  rsyslog      日志服务

  3)关闭不需要的TTY(需要重启机器)

  # vim /etc/init/start-ttys.conf

    env ACTIVE_CONSOLES=/dev/tty[1-2]      改为1-2

  # vim /etc/sysconfig/init

    ACTIVE_CONSOLES=/dev/tty[1-2]        改为1-2

  4)对TCP/IP网络参数进行调整

  # echo 'net.ipv4.tcp_syncookies = 1'>>/etc/sysctl.conf

  5)修改SHELL命令的history记录个数

  # vim /etc/profile

  HISTSIZE=100      根据实际工作环境修改

  source /etc/profile

  6)定时校正服务器的时间

  # yum install -y ntp

  # crontab -e

    0 1 * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1

  7)停止IPv6网络服务(如需安装LVS服务建议略过此优化项)

    # echo "IPV6INIT=no" >> /etc/sysconfig/network-scripts/ifcfg-eth0       禁用基于ipv6网络,使之不会被触发启动

  8)调整修改文件描述符限制

    # vim /etc/security/limits.conf      修改用户级限制

     * soft nofile 65535

     * hard nofile 65535

    # echo "fs.file-max=419430" >> /etc/sysctl.conf    修改系统限制

    # sysctl -p

  9)正确启动网卡

    # vim /etc/sysconfig/network-scripts/ifcfg-eth0 

    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes          系统引导就启动网卡设备,记得改为yes
    NM_CONTROLLED=yes
    BOOTPROTO=none
    IPADDR=10.0.0.7
    NETMASK=255.255.255.0
    DNS2=8.8.8.8
    GATEWAY=10.0.0.254
    DNS1=202.106.0.20
    IPV6INIT=no
    USERCTL=no          不允许普通用户修改网卡
    IPV6INIT=no

  10)关闭磁盘I/O功能

    vim /etc/fstab    修改配置文件

   例如:/dev/sda5 /data/pics ext3 noatime,nodiratime 0 0

  11)修改SSH登录配置

    # sed -i 's@#PermitEmptyPasswords no@PermitEmptyPasswords no@g' /etc/ssh/sshd_config    禁止空密码登录

    # sed -i 's@#UseDNS yes@UseDNS no@g' /etc/ssh/sshd_config                  关闭SSH反向查询,以加快SSH访问速度

    # sed -i 's@#PermitRootLogin yes@PermitRootLogin no@g' /etc/ssh/sshd_config          禁止root远程登录(此优化会造成Xshell连不上)

  12)增加具有sudo权限的用户

    由于系统已经禁止root远程登录,因此需要一个具有sudo权限的用户,权限与root相当

    # visudo

    hkping  ALL=(ALL)   ALL

    hkping  ALL=(ALL)   NOPASSWD:ALL    进行sudo切换时不想输入密码加NOPASSWD

(2)优化Linux下的内核TCP参数提高系统性能

  基础内核优化

    # vim /etc/sysctl.conf

    net.ipv4.tcp_fin_timeout =2

    net.ipv4.tcp_tw_reuse =1

    net.ipv4.tcp_tw_recycle =1

    net.ipv4.tcp_syncookies =1

    net.ipv4.tcp_keepalive_time =600

    net.ipv4.ip_local_port_range =4000 65000

    net.ipv4.tcp_max_syn_backlog =16384

    net.ipv4.tcp_max_tw_buckets =36000

    net.ipv4.route.gc_timeout =100

    net.ipv4.tcp_syn_retries =1

    net.ipv4.tcp_synack_retries =1

    net.core.netdev_max_backlog =16384

    net.ipv4.tcp_max_orphans =16384

    # /sbin/sysctl -p

    

    # sed -i 's@SELINUX=enforcing@SELINUX=disabled@g' /etc/selinux/config    关闭SELINUX

    # service iptables stop      关闭iptables

    # chkconfig iptables off      关闭iptables开机启动

原文地址:https://www.cnblogs.com/hkping18/p/11587965.html