一、内存回收优化
清理系统缓存:CentOS会利用空闲内存作为缓存(页面缓存、目录项缓存、inode缓存)提升文件系统性能,当内存不足时,可通过以下命令手动清理(sync命令先将缓存数据写入磁盘,避免数据丢失):
sudo sync; echo 3 | sudo tee /proc/sys/vm/drop_cachesecho 1 | sudo tee /proc/sys/vm/drop_cachesecho 2 | sudo tee /proc/sys/vm/drop_caches。调整Swappiness参数:swappiness控制系统使用Swap分区的倾向(默认值60,表示内存使用率达40%时启动Swap)。降低该值可减少Swap依赖,提升内存回收效率:
sudo sysctl vm.swappiness=10/etc/sysctl.conf,添加vm.swappiness=10,然后执行sudo sysctl -p使配置生效。关闭不必要的服务:禁用未使用的服务(如图形界面、远程桌面),减少内存占用:
systemctl list-units --type=servicesudo systemctl stop <service_name>(如gdm为GNOME桌面服务)sudo systemctl disable <service_name>。优化内核参数:通过修改/etc/sysctl.conf调整内存管理参数,例如增加vfs_cache_pressure(控制内核回收目录项和inode缓存的倾向,默认值100,调低可更积极回收):
vm.vfs_cache_pressure=50,执行sudo sysctl -p生效。二、磁盘空间回收优化
清理YUM/DNF缓存:YUM/DNF安装软件时会产生缓存文件(位于/var/cache/yum或/var/cache/dnf),可通过以下命令清理:
sudo yum clean all(CentOS 7及以下)sudo dnf clean all(CentOS 8及以上)。删除无用软件包与旧内核:
sudo yum autoremove(或dnf autoremove)sudo package-cleanup --oldkernels --count=1(需安装yum-utils包)。清理日志文件:日志文件(位于/var/log)易占用大量空间,可通过以下方式管理:
messages、syslog):sudo find /var/log -type f -name "*.log" -size +50M -mtime +7 -exec truncate -s 0 {} \;(截断7天前超过50MB的日志)logrotate工具设置日志轮转(默认已启用,可修改/etc/logrotate.conf调整策略)。查找并清理大文件:使用du和find命令定位大文件(如超过100MB的文件):
du -sh /* | sort -hr | head -n 10sudo find / -type f -size +100M -exec ls -lh {} \;(谨慎操作,避免误删系统文件)。清理临时文件:临时文件(位于/tmp、/var/tmp)通常无需长期保留,可定期清理:
sudo rm -rf /tmp/*sudo rm -rf /var/tmp/*。使用磁盘分析工具:通过ncdu(NCurses Disk Usage)可视化分析磁盘空间占用,快速定位大文件/目录:
sudo yum install ncdu(或dnf install ncdu)ncdu /path/to/directory(如ncdu /home查看用户目录)。三、回收站机制优化
创建回收站目录:在用户根目录下创建.trash目录,用于存放删除的文件:
mkdir -p /root/.trash(root用户)或mkdir -p ~/.trash(普通用户)。配置别名(Bash):编辑~/.bashrc文件,添加以下别名,将rm命令重定向到回收站:
alias rm='mv -i /root/.trash/@' # 删除文件时移动到回收站
alias rtrash='ls /root/.trash/' # 查看回收站内容
alias cleartrash='read -p "确定清空回收站?(y/n)" && [[ $REPLY == "y" ]] && rm -rf /root/.trash/*' # 清空回收站
执行source ~/.bashrc使配置生效。
定期清理回收站:通过cron任务自动清理回收站中的旧文件(如7天以上):
/usr/local/bin/clear_old_trash.sh:#!/bin/bash
find /root/.trash -type f -ctime +7 -exec rm -f {} \;
chmod +x /usr/local/bin/clear_old_trash.shcron任务:crontab -e,添加0 0 * * * /usr/local/bin/clear_old_trash.sh(每天0点执行)。四、其他优化建议
disabled以减少系统开销:
/etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabledsetenforce 0立即生效(重启后永久生效)。