trash-cli命令行工具(推荐)trash-cli是符合FreeDesktop.org规范的命令行回收站管理工具,可直接查看回收站状态、操作文件。
sudo apt update && sudo apt install trash-cli安装。trash-list命令列出所有被删除的文件及删除时间(按时间倒序排列)。~/.local/share/Trash/files(实际文件),~/.local/share/Trash/info(文件元数据,如删除时间、原路径),可通过ls命令查看目录内容。trash-empty命令(可添加--days=7参数删除7天前的文件,如trash-empty --days=7)。trash-restore命令,按提示选择需恢复的文件编号(如trash-restore后输入文件序号)。inotify工具实时监控回收站变化inotify是Linux内核子系统,可实时监控文件系统事件(如创建、删除、修改),适合需要即时通知的场景。
sudo apt install inotify-tools安装。~/.local/share/Trash/files,元数据目录为~/.local/share/Trash/info。运行以下命令实时监控:inotifywait -m -r -e create,delete,modify ~/.local/share/Trash/files
inotifywait -m -r -e create,delete,modify ~/.local/share/Trash/info
-m(持续监控)、-r(递归监控子目录)、-e(指定监控事件类型,如create创建、delete删除、modify修改)。inotifywait命令后添加| while read path action file; do echo "回收站发生变化:$action $file"; done),当有文件删除时发送邮件提醒。auditd审计系统记录回收站操作auditd是Linux审计工具,可记录详细的文件访问日志(包括回收站操作),适合需要追溯操作的场景。
sudo apt install auditd audispd-plugins安装。/etc/audit/rules.d/audit.rules文件,添加以下规则(替换your-username为实际用户名):-a exit,always -F path=/home/your-username/.local/share/Trash/files -F perm=wa -k trash_files
-a exit,always -F path=/home/your-username/.local/share/Trash/info -F perm=wa -k trash_info
-a(添加规则)、exit(在系统调用退出时触发)、always(始终记录)、-F path(监控路径)、-F perm=wa(监控写和属性修改操作)、-k(设置日志标签,便于检索)。sudo ausearch -k trash_files(查看文件操作日志)或sudo ausearch -k trash_info(查看元数据操作日志),日志会显示操作时间、用户、操作类型(如delete删除)及文件路径。du命令检查回收站磁盘使用情况通过du命令可快速了解回收站占用的磁盘空间,间接判断回收站状态(如是否已满)。
du -sh ~/.local/share/Trash/files命令,-s(总结目录总大小)、-h(人类可读格式,如MB、GB)会显示回收站文件目录的总大小。du命令与watch结合,每60秒刷新一次回收站大小(如watch -n 60 du -sh ~/.local/share/Trash/files),及时发现空间异常增长。若使用GNOME、KDE等桌面环境,可通过文件管理器直观查看回收站内容。
以上方法覆盖了命令行、审计、图形界面等多种场景,可根据需求选择合适的方式监控Debian回收站状态。