tar
是Linux系统自带的打包工具,适合备份系统文件、配置文件及用户数据。通过--exclude
参数排除无需备份的目录(如/proc
、/sys
等虚拟文件系统),减少备份体积。
备份命令示例:
sudo tar -czvf /backup/backup-$(date +%Y-%m-%d).tar.gz --exclude=/proc --exclude=/sys --exclude=/dev --exclude=/tmp --exclude=/run --exclude=/lostfound /
说明:将根目录/
下的所有文件(排除指定目录)打包压缩为backup-日期.tar.gz
,存储到/backup
目录(需提前创建)。若只需备份特定目录(如/home
),可将/
替换为/home
。
rsync
是高效的文件同步工具,仅备份自上次备份以来修改过的文件,适合定期同步或远程备份(如备份到另一台服务器)。
备份命令示例:
rsync -avz --progress --exclude=/proc --exclude=/lostfound --exclude=/media --exclude=/mnt --exclude=/tmp / /mnt/backup/
说明:将本地根目录/
同步到/mnt/backup/
目录(需提前挂载备份存储设备),-a
表示归档模式(保留权限、时间戳等),-v
显示详细过程,-z
压缩传输。
BackupNinja
是轻量级备份管理工具,支持定制备份计划(如每日/每周)、增量备份及远程存储(如SSH、FTP)。
安装与配置步骤:
sudo apt-get update && sudo apt-get install backupninja
配置备份任务:
sudo ninja-config --name mybackup
按提示设置:
/home
、/etc
;/mnt/backup
;cron
设置(如每天凌晨2点)。sudo ninja-backup mybackup
优势:无需手动编写脚本,支持加密备份(通过--encrypt
参数)。
Clonezilla
是开源磁盘克隆工具,适合备份整个系统(包括引导分区、文件系统),支持将备份保存为镜像文件(如.img
)或直接克隆到另一块磁盘。
操作步骤:
/dev/sda
);debian-backup-202510.img
)。VirtualBox的“导出虚拟电脑”功能可将整个虚拟机(包括虚拟磁盘、配置文件)导出为OVF/OVA格式,便于在其他VirtualBox主机上恢复。
操作步骤:
若之前使用tar
备份了系统,可通过以下命令恢复:
sudo tar -xzvf /backup/backup-20251016.tar.gz -C /
说明:将备份文件解压到根目录/
,覆盖原有文件。注意:恢复前需确保虚拟机处于关机状态,避免文件冲突。
若备份到远程服务器或外部设备,可通过rsync
反向同步恢复数据:
rsync -avz --progress user@remote:/mnt/backup/home/ /home/
说明:将远程服务器remote
上的/mnt/backup/home/
目录同步到本地/home/
目录,恢复用户数据。
若之前使用BackupNinja
创建了备份任务,可通过以下命令恢复:
sudo ninja-backup mybackup --restore
说明:按提示选择备份时间点(如“2025-10-15”),选择要恢复的目录(如/home
),即可恢复数据。
若之前使用Clonezilla
备份了系统镜像,可通过以下步骤恢复:
debian-backup-202510.img
);/dev/sda
),输入“y”确认恢复;若之前使用VirtualBox导出了虚拟机,可通过以下步骤恢复:
/proc
、/sys
等虚拟文件系统,减少备份体积。Duplicity
(支持加密增量备份)或tar
结合gpg
加密备份文件(如tar -czvf - /path | gpg -c > backup.tar.gz.gpg
)。