如何轻松定制个性化的系统清理方案?
- 内容介绍
- 文章标签
- 相关推荐
在日常使用中。不少使用者会遇到以下痛点:
- 硬盘空间被缓存、日志或旧内核等无用文件慢慢侵占,导致程序运行变慢甚至卡死。
- 手动执行清理命令时常常不确定哪些文件可以安全删除,担心误删关键数据。
- 每次程序升级后都需要重新配置清理规则,过程繁琐且容易出错。
一、为何需要定制化的程序清理方案
程序在长期运行过程中会产生大量临时文件、旧内核包还有过期的软件缓存。如果不及时清理,这些垃圾会:
- 占用宝贵的硬盘空间。
- 增加磁盘 I/O,拖慢应用响应速度。
- 埋下安全隐患。
通过定制化的清理方案。可以精准控制保留哪些关键文件、自动化执行清理任务,从而保持程序“轻盈”、提高稳定性和运行效率。
二、准备工作:安装必要工具
CentOS推荐使用 yum-utils 提供的插件来完成大多数清理任务。
sudo yum install -y yum-utils
如果你使用的是基于 systemd 的程序,还可以借助 systemd-tmpfiles 对临时文件进行统一管理:
sudo systemctl restart systemd-tmpfiles-clean.service
验证插件是否安装成功
yum list installed | grep yum-utils
三、自定义清理规则——以保留最近 2 个内核为例
1. 创建使用者级配置文件
在使用者主目录下新建 .yum-cleanup(或全局放置于 /etc/yum/pluginconf.d/cleanup.conf)。
并写入自定义规则:
keep=2 # 保留最近 2 个内核版本
clean_requires=0 # 不自动删除依赖包
2. 为特定插件添加专属参数
如果只想对旧内核进行限制,可在同一配置文件中加入插件节:
keep=2 # 仅保留 2 个最新内核
remove=yes # 删除其余老内核
3. 手动触发一次清理验证效果
sudo yum-plugin-cleanup --oldkernels
# 或者使用通用命令
sudo yum clean all
执行完毕后可通过以下方式确认已保留的内核数量:
rpm -qa | grep kernel | wc -l
四、利用 systemd‑tmpfiles 定制临时文件清理策略
Pain point: 程序自带的临时目录经常堆积大量无用文件,却缺乏统一的自动清理机制。
1. 编写自定义配置片段
在 /etc/tmpfiles.d/cleanup.conf 中添加如下内容:
# 清除超过 30 天未访问的 /var/log/*.log 文件
d /var/log 0755 root root 30d
# 每周删除一次 /tmp 中超过 7 天未访问的普通文件
x /tmp/* - - - 7d
2. 启动并检查定时任务状态
sudo systemctl enable --now systemd-tmpfiles-clean.timer
systemctl status systemd-tmpfiles-clean.timer
五、注意事项与常用方法
-
配置位置建议:自定义规则最好放在使用者主目录(
$HOME/.yum-cleanup) 或者独立的全局目录(/etc/yum/pluginconf.d/cleanup.conf),避免直接修改程序默认配置导致升级冲突。 -
执行前先预览:使用带有 “–dry-run” 参数的命令查看将要删除的对象,确保没有误删关键文件。从例如来看,
sudo yum-plugin-cleanup --oldkernels --dry-run - SYSTEMD 定时任务:If you prefer graphical tools。many third‑party cleanup utilities also respect same config files;说起来,you can furr refine rules via ir UI.
-
A/B 测试备份:Simplify rollback by先将当前关键配置复制一份:
cp /etc/yum/pluginconf.d/cleanup.conf{。.bak}
六、快速上手小结
- 安装主要工具:yum install yum-utils
- 在使用者或全局目录创建自定义配置。
- 使用 SystemD‑tmpfiles 为临时目录制定时间阈值。话说回来,
- 利用 timer 自动触发定期清理。并通过 dry‑run 确认安全性。
在日常使用中。不少使用者会遇到以下痛点:
- 硬盘空间被缓存、日志或旧内核等无用文件慢慢侵占,导致程序运行变慢甚至卡死。
- 手动执行清理命令时常常不确定哪些文件可以安全删除,担心误删关键数据。
- 每次程序升级后都需要重新配置清理规则,过程繁琐且容易出错。
一、为何需要定制化的程序清理方案
程序在长期运行过程中会产生大量临时文件、旧内核包还有过期的软件缓存。如果不及时清理,这些垃圾会:
- 占用宝贵的硬盘空间。
- 增加磁盘 I/O,拖慢应用响应速度。
- 埋下安全隐患。
通过定制化的清理方案。可以精准控制保留哪些关键文件、自动化执行清理任务,从而保持程序“轻盈”、提高稳定性和运行效率。
二、准备工作:安装必要工具
CentOS推荐使用 yum-utils 提供的插件来完成大多数清理任务。
sudo yum install -y yum-utils
如果你使用的是基于 systemd 的程序,还可以借助 systemd-tmpfiles 对临时文件进行统一管理:
sudo systemctl restart systemd-tmpfiles-clean.service
验证插件是否安装成功
yum list installed | grep yum-utils
三、自定义清理规则——以保留最近 2 个内核为例
1. 创建使用者级配置文件
在使用者主目录下新建 .yum-cleanup(或全局放置于 /etc/yum/pluginconf.d/cleanup.conf)。
并写入自定义规则:
keep=2 # 保留最近 2 个内核版本
clean_requires=0 # 不自动删除依赖包
2. 为特定插件添加专属参数
如果只想对旧内核进行限制,可在同一配置文件中加入插件节:
keep=2 # 仅保留 2 个最新内核
remove=yes # 删除其余老内核
3. 手动触发一次清理验证效果
sudo yum-plugin-cleanup --oldkernels
# 或者使用通用命令
sudo yum clean all
执行完毕后可通过以下方式确认已保留的内核数量:
rpm -qa | grep kernel | wc -l
四、利用 systemd‑tmpfiles 定制临时文件清理策略
Pain point: 程序自带的临时目录经常堆积大量无用文件,却缺乏统一的自动清理机制。
1. 编写自定义配置片段
在 /etc/tmpfiles.d/cleanup.conf 中添加如下内容:
# 清除超过 30 天未访问的 /var/log/*.log 文件
d /var/log 0755 root root 30d
# 每周删除一次 /tmp 中超过 7 天未访问的普通文件
x /tmp/* - - - 7d
2. 启动并检查定时任务状态
sudo systemctl enable --now systemd-tmpfiles-clean.timer
systemctl status systemd-tmpfiles-clean.timer
五、注意事项与常用方法
-
配置位置建议:自定义规则最好放在使用者主目录(
$HOME/.yum-cleanup) 或者独立的全局目录(/etc/yum/pluginconf.d/cleanup.conf),避免直接修改程序默认配置导致升级冲突。 -
执行前先预览:使用带有 “–dry-run” 参数的命令查看将要删除的对象,确保没有误删关键文件。从例如来看,
sudo yum-plugin-cleanup --oldkernels --dry-run - SYSTEMD 定时任务:If you prefer graphical tools。many third‑party cleanup utilities also respect same config files;说起来,you can furr refine rules via ir UI.
-
A/B 测试备份:Simplify rollback by先将当前关键配置复制一份:
cp /etc/yum/pluginconf.d/cleanup.conf{。.bak}
六、快速上手小结
- 安装主要工具:yum install yum-utils
- 在使用者或全局目录创建自定义配置。
- 使用 SystemD‑tmpfiles 为临时目录制定时间阈值。话说回来,
- 利用 timer 自动触发定期清理。并通过 dry‑run 确认安全性。

