centos系统优化与清理
小樊
40
2025-12-19 14:55:53
CentOS 系统优化与清理清单
一 磁盘与日志清理
- 查看空间占用并定位大目录/大文件
- 查看分区使用:df -h
- 按目录查看:du -h --max-depth=1 /var | sort -hr
- 查找大文件:find / -type f -size +500M -exec ls -lh {} ; 2>/dev/null
- 清理日志
- 清理 systemd 日志:journalctl --vacuum-time=30d(保留最近30天)
- 轮转并压缩旧日志:编辑 /etc/logrotate.conf(或 /etc/logrotate.d/*),示例:
- /var/log/messages { rotate 5; weekly; compress; delaycompress; missingok; notifempty; create 0640 root utmp; postrotate /usr/bin/killall -HUP rsyslogd; endscript }
- 清理包管理器缓存与无用包
- YUM:yum clean all;删除孤立包:package-cleanup --quiet --leaves --exclude-bin;删除旧内核:package-cleanup --oldkernels --count=2
- DNF:dnf clean all;dnf autoremove
- 清理临时文件与回收站
- 系统临时:rm -rf /tmp/*
- 用户回收站:rm -rf /home//.local/share/Trash/
- 清理核心转储
- find / -regex “.*/core.[0-9]+$” -delete 2>/dev/null
- 可选图形化清理工具
- yum install -y bleachbit && bleachbit(谨慎选择系统目录)
二 内存与缓存管理
- 仅当需要诊断或内存紧张时手动释放页面/Slab 缓存(不会提升性能,且会短暂影响性能)
- 同步后释放:sync && echo 1 > /proc/sys/vm/drop_caches(仅页面缓存)
- sync && echo 2 > /proc/sys/vm/drop_caches(可回收 Slab)
- sync && echo 3 > /proc/sys/vm/drop_caches(页面缓存 + Slab)
- 建议优先通过 logrotate、tmpfiles、包缓存清理等常规手段释放空间,避免频繁手动 drop_caches
三 系统与服务精简
- 更新系统并保留必要软件
- yum update -y(或 dnf update -y)
- 精简开机自启(保留最小集合)
- 建议常开:sshd、rsyslog、crond、network;其余按业务关闭
- 查看与禁用:systemctl list-unit-files --type=service;systemctl disable ;systemctl stop
- 精简预装软件包(最小化安装后执行更稳妥)
- 示例:yum remove Deployment_Guide-en-US finger cups-libs cups ypbind bluez-libs 等
- 按组移除:yum groupremove “Games and Entertainment” “X Window System” 等
- 安全组件策略
- SELinux:生产环境建议保持 enforcing,必要时可设为 permissive 进行排障(编辑 /etc/selinux/config,SELINUX=permissive,重启生效)
- 防火墙:不建议直接关闭,按需配置规则;若确需关闭:systemctl stop firewalld && systemctl disable firewalld
四 内核与文件系统优化
- 内核网络参数(/etc/sysctl.conf,执行 sysctl -p 生效)
- 连接复用与回收:net.ipv4.tcp_tw_reuse = 1;net.ipv4.tcp_fin_timeout = 30
- 端口与队列:net.ipv4.ip_local_port_range = 1024 65535;net.ipv4.tcp_max_syn_backlog = 8192;net.core.somaxconn = 1024
- 稳定性与防护:net.ipv4.tcp_syncookies = 1;net.core.netdev_max_backlog = 2000
- 注意:在 NAT/负载均衡或多主机环境中,通常不建议开启 net.ipv4.tcp_tw_recycle
- 文件系统挂载选项
- 减少元数据写入:编辑 /etc/fstab,为 ext4 加入 noatime,nodiratime(示例:/dev/sda1 / ext4 defaults,noatime,nodiratime 0 0),然后 mount -o remount /
- 文件句柄与内核对象
- 提高进程可打开文件数:/etc/security/limits.conf 增加 * - nofile 65535;/etc/sysctl.conf 增加 fs.file-max = 100000
- 时间同步
- 安装并同步:yum install -y ntpdate;ntpdate -u cn.pool.ntp.org
- 定时同步(crontab -e):*/5 * * * * /usr/sbin/ntpdate cn.pool.ntp.org >/dev/null 2>&1
五 监控与维护建议
- 资源监控与瓶颈定位
- 基础工具:top/htop、vmstat、iostat、sar、dstat、iftop、nload
- 按业务特点建立基线(CPU、内存、I/O、网络、连接数),异常时优先排查日志与慢查询/慢接口
- 自动化维护
- 定时清理临时文件:crontab -e 添加 0 2 * * * /usr/bin/systemd-tmpfiles --clean --file=/etc/tmpfiles.d/*.conf
- 定期审计与清理:日志轮转、包缓存、旧内核、临时目录与核心转储的例行清理脚本
- 变更风险控制
- 任何内核参数、SELinux、防火墙、服务开关变更前先备份配置与数据,先在测试环境验证,变更窗口内可回滚