一、CentOS分区备份方法
tar命令可将文件系统打包为压缩文件,支持排除无需备份的目录(如/proc、/sys等)。
sudo tar cvpzf /backup/backup_$(date +%Y%m%d_%H%M%S).tgz --exclude=/proc --exclude=/sys --exclude=/dev --exclude=/mnt --exclude=/media --exclude=/tmp /sudo tar cvpzf /backup/home_backup.tgz /home/sudo tar xvpfz /backup/backup_*.tgz -C /rsync通过同步文件差异实现增量备份,适合频繁更新的目录(如/home、/var)。
rsync -avz /source/directory/ /destination/directory/rsync -avz --delete --link-dest=/previous/backup/ /source/directory/ /new/backup/dd命令直接复制分区的块数据,生成镜像文件,适合备份整个分区(包括MBR、分区表)。
sudo dd if=/dev/sda1 of=/backup/sda1.img bs=4M status=progresssudo dd if=/backup/sda1.img of=/dev/sda1 bs=4M status=progressdump命令针对ext2/ext3/ext4/XFS等文件系统,支持增量备份(基于文件修改时间);restore用于恢复。
sudo dump -0uj -f /backup/boot.bak.bz2 /boot/sudo restore -r -f /backup/boot.bak.bz2Clonezilla是开源的灾难恢复工具,支持整盘克隆、分区备份,生成可启动ISO镜像。
二、CentOS分区恢复方法
若之前使用tar备份,可通过解压恢复:sudo tar xvpfz /backup/backup_*.tgz -C /
说明:恢复前需进入救援模式(如使用CentOS安装盘),挂载根分区到临时目录(如/mnt/sysimage),再执行解压命令(如sudo tar xvpfz /backup/backup.tgz -C /mnt/sysimage)。
若之前使用rsync备份,可通过同步恢复:rsync -avz /backup/source/ /destination/
说明:恢复前需确保目标分区已挂载,同步时会覆盖目标目录中的文件,建议先备份当前数据。
若之前使用dd备份分区镜像,可通过写回恢复:sudo dd if=/backup/sda1.img of=/dev/sda1 bs=4M status=progress
说明:恢复前需确认目标分区(如/dev/sda1)未被挂载,避免数据冲突;操作不可逆,请谨慎执行。
若之前使用dump备份文件系统,可通过restore恢复:sudo restore -r -f /backup/boot.bak.bz2
说明:恢复前需进入救援模式,挂载根分区,再执行恢复命令;恢复后需检查文件系统完整性(如使用fsck)。
若之前使用Clonezilla备份,可通过镜像恢复:
(1)从Clonezilla启动盘启动,选择“device-image”模式;
(2)选择“restoreparts”(恢复分区)或“restoredisk”(恢复整盘);
(3)选择备份文件,指定目标分区(如/dev/sda1),确认后开始恢复。
若分区使用LVM(逻辑卷管理),可通过以下步骤恢复:
cat /etc/lvm/backup/centos(查看卷组、逻辑卷的备份配置);vgcfgrestore -f /etc/lvm/backup/centos centos(恢复卷组centos的配置);vgchange -ay centos(激活卷组,使逻辑卷可见);mount /dev/centos/root /mnt/sysimage(挂载根逻辑卷),检查数据完整性。若/boot分区损坏(如无法进入系统,提示“error 15”),可通过以下步骤恢复:
mount /dev/sda1 /mnt/boot(假设/boot分区为/dev/sda1);chroot /mnt/sysimage(切换到原系统环境),grub2-install /dev/sda(重新安装GRUB到硬盘),grub2-mkconfig -o /boot/grub2/grub.cfg(生成GRUB配置文件),退出chroot(exit),重启系统(reboot)。