Ubuntu 回收站状态监控方案
一 前置说明
二 命令行快速查看与告警
sudo apt-get install trash-clitrash-listcount=$(trash-list | wc -l)
size=$(du -ch ~/.local/share/Trash/files 2>/dev/null | tail -1 | cut -f1)
echo "回收站文件数: $count, 总大小: $size"
#!/usr/bin/env bash
TRASH_DIR="$HOME/.local/share/Trash/files"
THRESHOLD_MB=100
size_mb=$(du -sm "$TRASH_DIR" 2>/dev/null | cut -f1)
if [ "$size_mb" -ge "$THRESHOLD_MB" ]; then
echo "WARN: 回收站已使用 ${size_mb}MB,超过阈值 ${THRESHOLD_MB}MB"
fi
crontab -e
*/10 * * * * /usr/bin/env bash /path/to/check_trash.sh >> /var/log/trash-monitor.log 2>&1
三 实时事件监控
sudo apt-get install inotify-toolsinotifywait -m -e create -e moved_to ~/.local/share/Trash/files
rm 到非 Trash 路径),需要额外规则或改用包装命令(见下节)。四 将 rm 包装为“入站回收站”以便监控
sudo apt-get install trash-cli~/.bashrc 中添加:alias rm='trash-put',执行 source ~/.bashrcrm 实际调用 trash-put,所有“删除”都会进入回收站,配合第二节的统计/告警或第三节的 inotify 即可统一监控。sudo rm 设置别名;脚本或 root 会话可能不受影响。必要时仅对交互式 shell 启用别名。五 图形界面查看