CentOS系统健康维护指南
保持系统及软件包最新是修复安全漏洞、提升稳定性的核心措施。使用yum或dnf工具定期检查并安装更新:
sudo yum check-update查看可用更新,sudo yum update -y安装所有更新;yum-cron(sudo yum install yum-cron),启用并配置自动检查(update_cmd security,updates)及每日更新(update_interval=1),确保及时获取安全补丁。/etc、/home目录),避免更新导致配置冲突。安全是系统健康的基础,需从多维度强化防护:
firewalld(默认)或iptables设置规则,仅开放必要端口(如SSH的22端口、HTTP的80端口),定期审查规则有效性;sudo setenforce 1),并根据应用需求配置适当策略(如targeted模式),避免过度宽松或严格;root远程登录(修改/etc/ssh/sshd_config中的PermitRootLogin no),使用sudo替代直接root操作;删除无用账户(sudo userdel username),设置强密码(包含大小写字母、数字、特殊字符);Port 2222),禁用密码认证(PasswordAuthentication no),启用公钥认证(PubkeyAuthentication yes)。优化系统资源使用,提升运行效率:
top(实时进程排序)、htop(交互式界面)、vmstat(CPU/内存/IO统计)、iostat(磁盘IO详情)等工具监控资源使用,及时发现高负载进程;swappiness值(vm.swappiness=10,降低对交换空间的依赖)、清理缓存(sync; echo 3 > /proc/sys/vm/drop_caches,释放页面缓存)、使用zram(内存压缩交换空间,sudo modprobe zram num_devices=1)扩展内存;noatime挂载选项,减少访问时间更新)、使用SSD替代HDD(提升IO速度)、优化I/O调度器(如deadline或noop,适合高并发场景);nice/renice命令,降低非关键进程优先级)、优化CPU调度(vm.dirty_ratio控制脏页比例,减少写入延迟)。日志是排查问题的关键线索,需规范收集与管理:
logrotate工具(默认配置在/etc/logrotate.conf),设置日志自动轮转(如/var/log/messages每周轮转,保留4周),防止日志文件过大占用磁盘空间;/var/log/secure(认证日志,查看非法登录尝试)、/var/log/messages(系统日志,查看内核或服务错误)、应用日志(如Nginx的access.log,查看访问趋势),识别潜在威胁或性能瓶颈。备份是应对灾难的最后一环,需制定合理的备份策略:
tar -czvf /backup/full_$(date +%F).tar.gz /etc /home /var/www),备份所有关键数据;rsync -avz /etc /backup/incr_$(date +%F)),仅备份自上次备份后变化的文件,减少备份时间及存储占用;tar -xzvf /backup/full_2025-10-01.tar.gz -C /tmp,检查/tmp/etc/passwd是否存在)。磁盘空间不足会导致系统崩溃,需定期清理与优化:
df -h(查看挂载点空间使用情况)、du -sh *(查看当前目录下各目录大小)、ncdu(交互式磁盘分析工具,sudo yum install ncdu)定位大文件或目录;sudo rm -rf /tmp/*)、清理YUM缓存(sudo yum clean all)、压缩旧日志(gzip /var/log/messages.1);sudo yum remove package_name卸载不再需要的软件包(如httpd、mysql),释放磁盘空间;parted工具)或使用LVM(逻辑卷管理,lvextend扩展逻辑卷,xfs_growfs扩展XFS文件系统)实现。优化服务与进程,减少不必要的资源消耗:
systemctl list-unit-files --type=service --state=enabled查看已启用的服务,停止并禁用无用服务(如cups打印服务、bluetooth蓝牙服务):sudo systemctl stop cups; sudo systemctl disable cups;systemctl list-unit-files --type=service --state=enabled查看开机启动项,禁用不必要的启动项(如avahi-daemon),减少开机加载时间;top或htop查看高CPU/内存占用的进程,若为异常进程(如kworker占用过高),可使用kill -9 PID终止(需确认进程用途,避免误杀系统进程)。