统信uos需通过systemd timer和cron实现三类自动化清理:每日清空用户缓存与压缩日志、每6小时安全清理/tmp(推荐find -mmin +30)、每日清空回收站;均静默运行,避免磁盘空间耗尽。

统信UOS系统中临时文件(如/tmp残留、用户缓存、压缩日志等)长期不清理会持续占用磁盘空间,尤其在频繁使用图形应用、浏览器或开发工具后,~/.cache、/tmp、/var/log/*.gz等目录可能悄然堆积数百MB甚至数GB数据;手动清空既易遗漏又无法形成持续防护,必须通过自动化机制让系统定期执行安全清理。
用systemd timer每日自动清空用户缓存与压缩日志
该方案由系统级服务驱动,静默运行于用户会话上下文,不依赖图形界面状态,适合长期稳定运行的办公或开发环境。
第一步:创建服务定义文件
打开终端,执行:mkdir -p ~/.config/systemd/user && nano ~/.config/systemd/user/clean-temp.service
第二步:在nano编辑器中粘贴以下内容并保存(Ctrl+O → Enter → Ctrl+X):
[Unit]<br>Description=Clean user cache and compressed logs<br>[Service]<br>Type=oneshot<br>ExecStart=/bin/sh -c 'rm -rf ~/.cache/* ~/.thumbnails/* 2>/dev/null; rm -f /var/log/*.gz'<br>User=%i
第三步:创建对应定时器
执行:nano ~/.config/systemd/user/clean-temp.timer
填入:
[Unit]<br>Description=Run daily temp cleanup<br>[Timer]<br>OnCalendar=*-*-* 04:00:00<br>Persistent=true<br>[Install]<br>WantedBy=default.target
第四步:启用并启动定时任务
依次执行:systemctl --user daemon-reload→systemctl --user enable clean-temp.timer→systemctl --user start clean-temp.timer
系统将在每天凌晨4:00自动执行清理,【注意:此操作不会删除正在被进程使用的缓存文件,但会清空所有已释放的~/.cache/*和全部/var/log/*.gz】。
配置cron每6小时清理一次/tmp目录
适用于高负载临时文件写入场景(如编译、视频转码、容器调试),/tmp目录内文件本就设计为可随时丢弃,但UOS默认未启用自动轮转机制。
方法一:直接编辑用户crontab
终端中运行:crontab -e
在末尾新增一行:0 */6 * * * sudo rm -rf /tmp/* 2>/dev/null
保存退出后,系统将每6小时整点清空/tmp目录。
方法二:更安全的替代命令(推荐)
改用:0 */6 * * * sudo find /tmp -mindepth 1 -mmin +30 -delete 2>/dev/null
这行命令只删除【30分钟以上未访问】的/tmp子项,避免误删正在写入中的临时套接字或锁文件。
启用系统级定时自动清空回收站
该方法依赖systemd timer机制,在用户登录后每24小时静默触发一次trash-empty命令,不干扰桌面操作,且仅作用于当前用户回收站。
第一步:打开终端(Ctrl + Alt + T),执行以下命令创建定时器单位文件:mkdir -p ~/.config/systemd/user && touch ~/.config/systemd/user/trash-clean.timer && touch ~/.config/systemd/user/trash-clean.service
第二步:用文本编辑器写入服务定义(推荐使用nano):nano ~/.config/systemd/user/trash-clean.service
第三步:在打开的编辑器中粘贴以下内容并保存(Ctrl+O → Enter → Ctrl+X):
[Unit]<br>Description=Auto clean user's trash<br>[Service]<br>Type=oneshot<br>ExecStart=/usr/bin/trash-empty<br>User=%i
第四步:写入定时器配置:nano ~/.config/systemd/user/trash-clean.timer
第五步:粘贴以下定时规则(每天凌晨3:15执行):
[Unit]<br>Description=Run trash-empty daily<br>[Timer]<br>OnCalendar=*-*-* 03:15:00<br>Persistent=true<br>[Install]<br>WantedBy=default.target
第六步:启用并启动定时器:systemctl --user daemon-reload→systemctl --user enable trash-clean.timer→systemctl --user start trash-clean.timer
【若此前未安装trash-cli,需先执行sudo apt install trash-cli,否则定时任务会静默失败】。











