Debian备份与数据回收实用指南
一 明确目标与策略
二 命令行回收站与可回退删除
sudo apt update && sudo apt install trash-clitrash /path/to/filetrash-list / trash-restoretrash-emptysudo apt install gvfs-backendsgvfs-trash /path/to/file,清空:gvfs-trash --empty三 系统级清理释放空间(数据回收)
sudo apt clean、sudo apt autocleansudo apt autoremove --purgesudo apt purge 包名sudo journalctl --vacuum-time=7d、sudo journalctl --vacuum-size=50Msudo rm -rf /tmp/*sudo find / -type f -size +1G 2>/dev/nulldocker system prune -a -f、docker volume prune -f四 备份与恢复方案
sudo rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /path/to/backupsudo tar -czvf backup.tar.gz /path/to/important/filessudo duplicity --full-if-older-than 1M / file:///path/to/backupsudo dd if=/dev/sda of=/path/to/backup.img bs=4Mmysqldump -u 用户名 -p 数据库名 > backup.sql;恢复:mysql -u 用户名 -p 数据库名 < backup.sqlsudo tar -xzvf backup.tar.gz -C /sudo rsync -avz /path/to/backup/ /sudo duplicity /path/to/backup file:///path/to/restore五 自动化与风险控制
#!/usr/bin/env bash
# 清理日志
sudo journalctl --vacuum-time=2weeks
# 清理临时文件
sudo find /tmp -mindepth 1 -mtime +1 -delete 2>/dev/null
# 清理APT
sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove --purge -y
# 清理旧日志归档
sudo find /var/log -type f -name "*.gz" -mtime +7 -delete 2>/dev/null
echo "Cleanup completed at $(date)"
0 2 * * * /path/to/cleanup.sh