備份 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