当前位置:网站首页 >  教程

5步实操落地Linux系统运维优化 提升服务器性能与稳定性

时间:2026年06月09日 05:21:53 来源:易频IT社区

前置准备

本文优化适用于x86架构的CentOS7/8、Debian9+、Ubuntu18+版本Linux服务器,所有命令可直接复制执行。操作前先备份原有配置,方便出错后还原,执行以下命令完成备份:

``` mkdir -p /etc/bak_optimize && cp -p /etc/sysctl.conf /etc/security/limits.conf /etc/systemd/journald.conf /etc/bak_optimize/ ```

如果需要还原所有配置,后续执行以下命令即可:cp -p /etc/bak_optimize/ /etc/ && systemctl restart systemd-journald && sysctl -p

第一步:禁用不必要的系统服务

默认服务器会开启很多桌面、打印、蓝牙等无用服务,额外占用内存和CPU资源,执行以下命令一键禁用通用无用服务:

``` systemctl stop cups bluetooth postfix gdm remote-login systemctl disable cups bluetooth postfix gdm remote-login ```

注意:如果你的业务需要使用邮件服务,请跳过postfix的禁用操作,其他服务对Web、数据库、API类服务器均为无用服务。

第二步:调整文件句柄打开限制

Linux默认文件句柄打开数限制仅为1024,高并发场景下会出现too many open files错误,直接修改配置即可解决,执行以下命令一键配置:

``` echo " soft nofile 65535 hard nofile 65535 root soft nofile 65535 root hard nofile 65535" >> /etc/security/limits.conf ulimit -n 65535 ```

执行ulimit -n验证配置,输出结果为65535即为配置成功。

第三步:内核与网络参数调优

以下是经过验证的通用服务器调优参数,适合绝大多数Web、代理、数据库场景,直接执行以下命令写入配置,不需要额外修改:

``` echo "net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 0 net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 1200 net.ipv4.ip_local_port_range = 10000 65000 net.ipv4.tcp_max_syn_backlog = 8192 net.ipv4.tcp_max_tw_buckets = 5000 net.core.somaxconn = 1024 vm.swappiness = 10 vm.dirty_ratio = 10 vm.dirty_background_ratio = 5" >> /etc/sysctl.conf sysctl -p ```

5步实操落地Linux系统运维优化 提升服务器性能与稳定性

参数说明:开启TIME_WAIT连接复用,关闭废弃的tcp_tw_recycle,降低swap使用率,提升内存使用效率,适配高并发连接场景。

第四步:配置日志自动清理,避免磁盘占满

超过80%的服务器磁盘占满故障都是由无限制增长的日志导致,通过系统自带工具即可实现自动清理,执行以下命令一键配置:

``` 限制系统日志总大小500M,最多保留7天日志 sed -i 's/SystemMaxUse=/SystemMaxUse=500M/g' /etc/systemd/journald.conf sed -i 's/MaxFileSec=/MaxFileSec=7day/g' /etc/systemd/journald.conf sed -i 's/RuntimeMaxUse=/RuntimeMaxUse=100M/g' /etc/systemd/journald.conf systemctl restart systemd-journald 配置业务日志自动切割清理,搭配logrotate实现定期清理 echo "0 0 root /usr/sbin/logrotate /etc/logrotate.conf" >> /etc/crontab systemctl restart crond ```

配置完成后系统会自动清理过期日志,控制日志总大小,不会再出现日志占满磁盘的问题。

第五步:配置自动化健康检查

添加简单的定时健康检查,自动清理僵尸进程,提前发现磁盘过载问题,执行以下步骤即可落地:

1. 创建健康检查脚本

``` cat > /opt/server_health_check.sh << EOF !/bin/bash echo "[$(date)] 执行系统健康检查" >> /var/log/health_check.log 检查根分区磁盘使用率,超过80%记录警告 DISK_USAGE=\$(df -h / | grep / | awk '{print \$5}' | sed 's/%//g') if [ \$DISK_USAGE -gt 80 ]; then echo "警告:根分区磁盘使用率已达${DISK_USAGE}%" >> /var/log/health_check.log fi 清理僵尸进程 ZOMBIE_PID=\$(ps -A -o stat,ppid,pid | grep -w 'Z' | awk '{print \$2}') if [ -n "\$ZOMBIE_PID" ]; then kill -9 \$ZOMBIE_PID echo "已清理僵尸进程PID:\$ZOMBIE_PID" >> /var/log/health_check.log fi EOF ```

2. 添加执行权限和定时任务

``` chmod +x /opt/server_health_check.sh echo "0 2 root /bin/bash /opt/server_health_check.sh" >> /etc/crontab systemctl reload crond ```

脚本每天凌晨2点自动执行,所有检查结果记录在/var/log/health_check.log,可随时查看。

优化结果验证

完成所有操作后,执行以下命令验证配置是否生效:

  • 执行free -h,可观察到内存占用比优化前降低10%-25%
  • 执行ulimit -n,输出65535表示文件句柄配置正确
  • 执行sysctl net.ipv4.tcp_tw_reuse,输出net.ipv4.tcp_tw_reuse = 1表示内核参数配置正确

以上优化操作全部基于Linux原生工具,不需要安装第三方软件,零依赖零门槛,所有配置修改可备份还原,适合大多数生产服务器使用。

相关推荐

最新

热门

推荐

精选

标签

易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。

Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图