我有一个运行 Debian 8 的 xen VPS,它必须离线,所以我像这样使用 rsync 备份它。
rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /path/to/backup/folder
然后,我将该备份文件夹放入 tar.gz 并将其移至本地计算机。
我现在有一个在线 KVM VPS,也运行 Debian 8,我需要恢复到。如何恢复该备份?我需要做些什么来确保它启动吗?可以通过 SSH/SCP 完成吗?
你错过了一个可能很重要的论点
rsync
:--hard-links
。这取决于发行版,我猜现在它与过去不同,但系统目录和/或文件(比用户文件更重要)很容易成为其他人的硬链接。例如,在最近的 Archlinux 上,/usr/X11R6/bin
是一个硬链接到/usr/bin
. 目前,我无法给你具体的例子来说明今天的情况。你可以调查一下。您也可能因为将重要信息放入
tar.gz
. 它是否存储 ACL?它会存储硬链接吗?你也错过了
--sparse
,但这只是一个不便。要恢复它,我会启动一张 live CD,或者您的 VPS 提供商为您提供的某种救援环境。然后,您可以将数据解压到根分区中,chroot 进入其中(使用 bind-mounting
/proc
和)/dev
并/sys
运行类似grub-install /dev/sda
这些选项可能因您的设置而异。
编辑:由于您可以访问原始 VPS,因此可以执行以下操作:
然后在新主机上的救援环境上相反: