備份/恢複 CentOS 7 系統到網絡磁碟

備份 CentOS 7 系統到網絡磁碟

  • 掛載你的網絡磁碟機
mkdir -p /mnt/backup
mount -t cifs //<SMB_SERVER_IP>/backup /mnt/backup -o username=<USERNAME>,password=<PASSWORD>
  • 使用 tar 備份系統
tar --xattrs --xattrs-include='*' --acls --selinux -cvpzf /mnt/backup/centos7_backup.tar.gz --exclude=/mnt --exclude=/proc --exclude=/sys --exclude=/dev --exclude=/run --exclude=/tmp --exclude=/root_backup.tar.gz /

從網絡磁碟 恢複到 CentOS 7 系統

掛載你的網絡磁碟機

mkdir -p /mnt/backup
mount -t cifs //<SMB_SERVER_IP>/backup /mnt/backup -o username=<USERNAME>,password=<PASSWORD>

確認 centos7_backup.tar.gz 在 /mnt/backup

ls -lh /mnt/backup/centos7_backup.tar.gz

還原 tar.gz 備份

解壓 tar.gz 到 /

tar --xattrs --xattrs-include='*' --acls --selinux -xvpzf /mnt/backup/centos7_backup.tar.gz -C /

確保 /dev、/proc、/sys、/run 目錄存在

mkdir -p /dev /proc /sys /run

修復 fstab

獲取磁碟的 UUID

blkid

確保 /etc/fstab 使用正確的 UUID

nano /etc/fstab

修復 Bootloader(GRUB)

掛載必要的系統目錄

mount --bind /dev /dev
mount --bind /proc /proc
mount --bind /sys /sys
mount --bind /run /run

切換到 chroot 環境

chroot /

重新安裝 GRUB

grub2-install --target=i386-pc /dev/sda
grub2-mkconfig -o /boot/grub2/grub.cfg

更新 initramfs

dracut --force --regenerate-all

退出 chroot

exit

SELinux 修復

創建 .autorelabel

touch /.autorelabel

重新啟動並測試

重啟系統

reboot

確認系統是否正常運行

df -h
lsblk