麒麟系统可自动清理下载文件夹:①用systemd-tmpfiles按7天访问时间轮转清理;②用cron+find按30天修改时间定时删除;③用inotify-tools实时监控5分钟后归档。

您希望麒麟系统在不手动干预的情况下自动清理下载文件夹,避免文件堆积占用磁盘空间、影响系统响应速度。这通常发生在日常下载安装包、文档、媒体文件后未及时归档或删除的场景中。
用 systemd-tmpfiles 按时间轮转清理
systemd-tmpfiles 是麒麟 V10 内置服务,无需额外安装,规则生效后会随系统启动自动执行,且支持精确到“天”的访问时间阈值控制。
第一步:创建自定义规则配置文件,路径必须为 /etc/tmpfiles.d/clean-downloads.conf,否则 systemd 不会加载:
sudo nano /etc/tmpfiles.d/clean-downloads.conf
第二步:在文件中写入一行规则(请务必将 用户名 替换为您的实际登录用户名):
v /home/用户名/Downloads 0755 用户名 用户名 7d
第三步:立即应用该规则并执行一次清理:
sudo systemd-tmpfiles --create
第四步:验证规则是否已注册成功:
sudo systemd-tmpfiles --verify | grep Downloads
若输出包含 clean-downloads.conf 行,说明规则已就绪;此后系统每天会扫描该目录,自动删除 7 天内未被访问过的普通文件。
用 cron + find 定时删除过期文件
该方法灵活性高,可自由调整时间条件(如按修改时间而非访问时间),适合需要保留“最近下载但尚未打开”的文件的用户。
方法一:直接在 crontab 中写命令
crontab -e → 添加这一行(每天凌晨 3 点清理 Downloads 下 30 天未修改的文件):
0 3 * * * find /home/用户名/Downloads -type f -mtime +30 -delete
方法二:封装为可复用脚本(推荐)
新建脚本:nano ~/clean_downloads.sh
填入内容(注意替换用户名):
#!/bin/bash
find /home/用户名/Downloads -type f -mtime +30 -delete
赋予执行权限:
chmod +x ~/clean_downloads.sh
再编辑 crontab:
crontab -e → 添加:
0 3 * * * /home/用户名/clean_downloads.sh
用 inotify-tools 实时监控并归档
此方案适用于 UKUI 桌面环境(基于 Nemo 文件管理器),它不直接删除,而是检测新文件 5 分钟内未被打开后,将其移至归档目录,兼顾安全与自动化。
第一步:安装依赖工具:
sudo apt install inotify-tools
第二步:创建监控脚本:
nano ~/monitor_downloads.sh
第三步:写入以下内容(同样需替换用户名):
#!/bin/bash
inotifywait -m -e create,attrib /home/用户名/Downloads | while read path action file; do
sleep 300
[ -f "/home/用户名/Downloads/$file" ] && touch -c "/home/用户名/Downloads/$file" 2>/dev/null || true
done
第四步:赋予执行权限并设为开机自启:
chmod +x ~/monitor_downloads.sh
gsettings set org.nemo.scripts auto-start true










