首页主机资讯CentOS回收站怎么备份

CentOS回收站怎么备份

时间2025-11-24 14:33:04发布访客分类主机资讯浏览1342
导读:CentOS回收站备份与恢复 先确认回收站类型 标准桌面环境(如 GNOME):删除文件会进入用户主目录的回收站目录,即 ~/.local/share/Trash/files/(同目录下通常还有 info/ 存放元数据)。备份时直接复制该...

CentOS回收站备份与恢复

先确认回收站类型

  • 标准桌面环境(如 GNOME):删除文件会进入用户主目录的回收站目录,即 ~/.local/share/Trash/files/(同目录下通常还有 info/ 存放元数据)。备份时直接复制该目录即可。
  • 服务器/最小化安装或使用 rm 命令:默认没有回收站,rm 会直接从文件系统移除文件。若需回收站,可安装 trash-cli 或自建“回收站”脚本(常见做法是将删除改为 mv 到指定目录,并按时间命名)。
  • 自定义回收站:很多环境用 alias rm=脚本 或自建目录(如 /data/.trash)来模拟回收站,备份目标就是该自定义目录。

备份方法

  • 手动一次性备份(适用于标准回收站与自定义回收站)

    • 标准回收站(当前用户):
      mkdir -p /backup/trash_$(date +%F)
      cp -a ~/.local/share/Trash/files /backup/trash_$(date +%F)/
      # 如有 info 元数据,也建议一并备份
      cp -a ~/.local/share/Trash/info  /backup/trash_$(date +%F)/
      
    • 自定义回收站(如 /data/.trash):
      mkdir -p /backup/trash_$(date +%F)
      cp -a /data/.trash /backup/trash_$(date +%F)/
      
    • 说明:-a 保留权限、时间戳与软链接,适合做可恢复的备份。
  • 定时自动备份(crontab)

    • 例:每天 02:00 将当前用户的回收站完整备份到 /backup/trash/,保留最近 7 天。
      # 创建备份脚本 /usr/local/bin/backup_trash.sh
      cat >
          /usr/local/bin/backup_trash.sh <
          <
      'EOF'
      #!/bin/bash
      TS=$(date +%F_%H%M%S)
      SRC="$HOME/.local/share/Trash"
      DST="/backup/trash/${
      TS}
          "
      mkdir -p "$DST"
      if [ -d "$SRC/files" ];
           then
        rsync -a --delete "$SRC/files"  "$DST/"
        [ -d "$SRC/info" ] &
          &
           rsync -a "$SRC/info" "$DST/"
      fi
      # 只保留最近7天
      find /backup/trash -maxdepth 1 -type d -mtime +7 -delete
      EOF
      
      chmod +x /usr/local/bin/backup_trash.sh
      
      # 加入定时任务(当前用户)
      (crontab -l 2>
          /dev/null;
           echo "0 2 * * * /usr/local/bin/backup_trash.sh") | crontab -
      
    • 如使用自定义目录(如 /data/.trash),将脚本中的 SRC 改为该目录即可。
  • 使用 trash-cli 的工作流(便于按“回收站规范”备份与恢复)

    • 安装(EPEL 源):
      # CentOS 7
      yum install -y epel-release
      yum install -y trash-cli
      
      # CentOS 8/Stream 8
      dnf install -y epel-release
      dnf install -y trash-cli
      
    • 日常删除与恢复:
      trash-put important.log      # 删除到回收站
      trash-list                  # 查看回收站内容
      trash-restore               # 交互式恢复
      trash-empty                 # 清空回收站
      
    • 备份建议:按前述“手动/定时”方式备份 ~/.local/share/Trash/ 目录,即可完整保留“回收站内”的数据与元数据。

恢复与注意事项

  • 从标准回收站恢复:将备份中的 files/ 内容按原相对路径 mv 回原位置,或先恢复到临时目录后按需要移动;若保留了 info/,可参考其中的元数据辅助定位原始路径。
  • 从自定义回收站恢复:直接 mv 备份目录中的文件/目录回目标位置即可(自定义脚本通常也提供恢复函数/别名,如 hy)。
  • 注意事项:
    • 备份前确认回收站里没有同名冲突;必要时在恢复前先备份当前工作目录。
    • 若系统采用 LVM/Btrfs/ZFS 快照或企业备份方案,优先在卷/文件系统层做快照/备份,回收站备份作为补充。
    • 避免把回收站备份放在同一块磁盘/同一分区,降低单点故障风险。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS回收站怎么备份
本文地址: https://pptw.com/jishu/754464.html
CentOS回收站怎么迁移 CentOS回收站怎么删除

游客 回复需填写必要信息