/home目录)、系统配置(如/etc/fstab、GRUB配置/boot/grub/grub.cfg)、关键服务数据(如数据库、Web文件)。rsync(基础备份)、tar(归档压缩)、cron(定时任务)等。例如,在Debian/Ubuntu系中执行:sudo apt update && sudo apt install rsync tar cron -y;在CentOS/RHEL系中执行:sudo yum install rsync tar cronie -y。rsync是Linux下高效的文件同步工具,支持增量备份(仅传输变化的文件),适合备份用户数据或系统目录。
/home目录备份到外部磁盘/mnt/backup,排除临时文件:sudo rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /home/ /mnt/backup/home/
参数说明:-a(归档模式,保留权限、时间戳等)、-A(保留ACL)、-X(保留扩展属性)、-v(详细输出)、--exclude(排除不需要备份的目录)。tar可将目录打包为单个压缩文件,适合备份整个系统或大型目录。
/home目录到/mnt/backup/home_backup.tar.gz(gzip压缩):sudo tar -czvf /mnt/backup/home_backup.tar.gz /home/
参数说明:-c(创建归档)、-z(gzip压缩)、-v(详细输出)、-f(指定归档文件名)。dump是针对文件系统的备份工具,支持增量备份(基于文件系统修改时间),比tar更适合系统级备份。
/)进行完整备份,输出到/mnt/backup/root_backup.dump:sudo dump 0uf /mnt/backup/root_backup.dump /
参数说明:0(完整备份)、u(更新备份记录)、f(指定输出文件)。/mnt):sudo restore -rf /mnt/backup/root_backup.dump -C /mnt
参数说明:-r(恢复模式)、-f(指定备份文件)、-C(比较差异,可选)。dd是底层数据复制工具,可创建磁盘或分区的精确镜像(包括引导扇区、分区表),适合灾难恢复。
/dev/sda磁盘到/mnt/backup/system_backup.img:sudo dd if=/dev/sda of=/mnt/backup/system_backup.img bs=4M status=progress
参数说明:if(输入文件,即源磁盘)、of(输出文件,即镜像文件)、bs(块大小,提高速度)、status=progress(显示进度)。sudo dd if=/mnt/backup/system_backup.img of=/dev/sdb bs=4M status=progress
注意:dd会覆盖目标磁盘的所有数据,操作前需确认目标磁盘无误!通过cron定时任务实现定期自动备份,避免人为遗忘。
sudo crontab -e,添加以下行(每天凌晨2点备份/home目录到/mnt/backup):0 2 * * * rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /home/ /mnt/backup/home_$(date +\%F)/
参数说明:0 2 * * *(每天凌晨2点执行)、$(date +\%F)(生成当天日期,如2025-10-31,避免备份覆盖)。若使用rsync备份,可通过反向同步将备份数据恢复到原始位置或新位置:
sudo rsync -aAXv /mnt/backup/home/ /home/
参数说明:源目录为备份路径(/mnt/backup/home/),目标目录为原始路径(/home/),-aAXv保持文件属性一致。
若使用tar备份,可通过解压归档文件恢复数据:
sudo tar -xzvf /mnt/backup/home_backup.tar.gz -C /home/
参数说明:-x(解压)、-z(gzip解压)、-v(详细输出)、-C(指定解压目标目录)。
若使用dump备份,需通过restore命令恢复:
sudo restore -rf /mnt/backup/root_backup.dump -C /mnt
恢复前需挂载目标系统分区到/mnt(如sudo mount /dev/sda2 /mnt),确保恢复到正确位置。
若使用dd创建了磁盘镜像,可通过dd将镜像恢复到目标磁盘(需更换新磁盘):
sudo dd if=/mnt/backup/system_backup.img of=/dev/sdb bs=4M status=progress
注意:恢复后目标磁盘的UUID会改变,需更新/etc/fstab中的UUID(通过blkid命令查看新UUID)。
若文件系统损坏(如无法挂载),需先修复再恢复数据:
sudo fsck -y /dev/sda2
参数说明:-y(自动回答“yes”修复错误),/dev/sda2为目标分区(需根据实际情况调整)。
/dev、/proc、/sys等虚拟目录,这些目录是系统运行时生成的,无需备份。sudo grub-install /dev/sda)。