摘要:systemd-tmpfiles-clean 是 Linux 系统中专门负责“清理垃圾”的隐形管家。它通过定时任务,自动扫描并删除 /tmp、/var/tmp 等目录中的过期临时文件(比如缓存、日志残留),避免磁盘被“撑爆”。
systemd-tmpfiles-clean 是 Linux 系统中专门负责“清理垃圾”的隐形管家。它通过定时任务,自动扫描并删除 /tmp、/var/tmp 等目录中的过期临时文件(比如缓存、日志残留),避免磁盘被“撑爆”。
举个真实案例:某企业服务器因未及时清理临时文件,导致 /tmp 目录占用 50GB,系统卡死!而启用该服务后,每天自动清理超 10 天的文件,磁盘利用率稳定在 80% 以下。
1️⃣ 定时触发:依赖 systemd-tmpfiles-clean.timer 计时器,默认每天执行一次。
2️⃣ 规则驱动:根据配置文件中的“寿命”标记(如 10d 表示保留 10 天),按需清理。
3️⃣ 优先级分层:
系统级配置:/usr/lib/tmpfiles.d/*.conf(软件自带,禁止修改)运行时配置:/run/tmpfiles.d/*.conf(临时生效)用户级配置:/etc/tmpfiles.d/*.conf(运维必改!)
(运维必看!避免删错关键文件)
场景 1:自定义清理目录
假设需要清理 /data/cache 目录中超过 7 天的文件:
验证配置:
systemd-tmpfiles --clean /etc/tmpfiles.d/mycache.conf无报错即生效。
场景 2:排除敏感目录
若需保留 /tmp/secret 下的文件,添加排除规则:
场景 3:调整清理频率
修改计时器触发时间(比如每 6 小时清理一次):
(谨慎调整!高频清理可能影响业务)
来源:小隐说科技