温馨提示×

Ubuntu系统回收站功能介绍

小樊
105
2026-01-11 11:27:35
栏目: 智能运维

Ubuntu 回收站功能全览

一 核心概念与位置

  • Ubuntu(GNOME 等桌面环境) 中,删除文件会先进入用户级“回收站”,并非直接消失。回收站根目录为:~/.local/share/Trash/,其典型结构如下:
    • files/:存放被删除的实际文件/目录
    • info/:存放元数据,扩展名为 .trashinfo,记录原路径与删除时间
    • expunged/:已永久删除的条目(内部使用)
  • .trashinfo 示例:
    [Trash Info]
    Path=/home/user/Documents/test.txt
    DeletionDate=2024-01-15T10:30:00
    
  • 注意:回收站是按用户隔离的,位于各用户的 $HOME 下;在 TUI(纯终端) 环境下没有统一的图形回收站,需要借助命令行工具实现“入站/恢复/清空”。

二 图形界面操作与自动清理

  • Files(Nautilus) 中删除文件/目录会进入回收站;可在侧栏点击“回收站”查看、恢复或删除。
  • 系统级自动清理:
    • 打开:设置 → 隐私 → 文件历史与回收站
    • 开启:自动清空回收站,并设置周期(如 7 天 等)
    • 说明:该策略由桌面环境统一执行,适用于该用户会话下的图形删除操作。

三 命令行工具与常用命令

  • 使用 trash-cli(推荐,跨桌面一致)
    • 安装:sudo apt install trash-cli
    • 常用命令:
      • trash-put <文件>trash <文件>:移入回收站
      • trash-list:列出回收站内容
      • trash-restore:交互式选择并恢复
      • trash-rm <条目>:从回收站永久删除指定条目
      • trash-empty:清空回收站
  • 使用 gvfs-trash(GNOME/GVFS 提供)
    • 安装:sudo apt install gvfs-bin
    • 常用命令:
      • gvfs-trash <文件>:移入回收站
      • gvfs-trash-restore:交互式恢复
      • gvfs-trash-empty:清空回收站
  • 重要提醒:rm 命令不会进入回收站,会直接删除;若需“可恢复删除”,请使用上述工具替代 rm。

四 进阶配置与自动化

  • 将 rm 替换为回收站(谨慎)
    • ~/.bashrc 中添加:alias rm='trash-put',保存后执行 source ~/.bashrc
    • 风险提示:别名会改变 rm 的语义,可能影响脚本行为;建议保留原始命令(如 \rm)或在关键场景显式使用绝对路径 /bin/rm
  • 定期自动清理回收站(systemd 定时器)
    • 示例(每 7 天 清理一次):
      # 创建服务
      sudo tee /etc/systemd/system/trash-cleanup.service >/dev/null <<'EOF'
      [Unit]
      Description=清理回收站
      [Service]
      Type=oneshot
      ExecStart=/usr/bin/trash-empty --age 7d
      EOF
      
      # 创建定时器
      sudo tee /etc/systemd/system/trash-cleanup.timer >/dev/null <<'EOF'
      [Unit]
      Description=每天检查并清理回收站
      [Timer]
      OnCalendar=daily
      Persistent=true
      [Install]
      WantedBy=timers.target
      EOF
      
      # 启用
      sudo systemctl daemon-reload
      sudo systemctl enable --now trash-cleanup.timer
      
    • 说明:trash-empty --age 7d 会删除回收站中超过 7 天 的条目;该方式对命令行与图形删除均有效(统一作用于同一用户的回收站目录)。

0