CentOS回收站数据备份方法
一 本地回收站目录与定位
二 手动一次性备份
tar -czvf trash_backup_$(date +%F).tar.gz -C ~/.local/share/Trash files
sudo tar -czvf trash_backup_root_$(date +%F).tar.gz -C /root/.local/share/Trash files
mkdir -p /backup/trash_$(date +%F)
cp -a ~/.local/share/Trash/files /backup/trash_$(date +%F)/
三 定时自动备份脚本
#!/usr/bin/env bash
set -Eeuo pipefail
BACKUP_DIR="/backup/trash/$(date +%F_%H%M%S)"
mkdir -p "$BACKUP_DIR"
# 备份当前用户
if [[ -d ~/.local/share/Trash/files ]]; then
tar -czf "$BACKUP_DIR/trash_${USER}.tar.gz" -C ~/.local/share/Trash files
fi
# 备份 root(若当前非 root,需要以 root 运行此段或单独以 root 执行)
if command -v sudo >/dev/null 2>&1; then
if sudo test -d /root/.local/share/Trash/files; then
sudo tar -czf "$BACKUP_DIR/trash_root.tar.gz" -C /root/.local/share/Trash files
fi
fi
echo "Trash backup saved to: $BACKUP_DIR"
chmod +x /usr/local/bin/backup_trash.sh
echo "0 2 * * * /usr/local/bin/backup_trash.sh" | sudo tee /etc/cron.d/backup_trash
四 还原与校验
# 当前用户
tar -xzvf trash_backup_2025-11-16.tar.gz -C ~/.local/share/Trash
# root
sudo tar -xzvf trash_backup_root_2025-11-16.tar.gz -C /root/.local/share/Trash
cp -a /backup/trash_2025-11-16/files ~/.local/share/Trash/
ls -lR ~/.local/share/Trash/files | wc -lfile 或 sha256sum 对比关键文件五 补充与排错
rm 替换为 mv 到自定义回收站,再对该目录做定时备份(示例脚本思路见相关实践)。hdfs dfs -mv 将文件从回收站移回原目录,或用 distcp 将回收站或关键目录定期复制到备份路径/集群。