我的物理服务器遭到了黑客攻击,因此提供商关闭了服务器,并以 Linux 救援模式启动它。我拥有 Linux 文件系统的完全访问权限,但经过数小时的尝试和搜索,我找不到将 VM 从该服务器上移除的方法。
我愿意接受任何事情,导出虚拟机、访问其虚拟驱动器来获取数据等等。
基本上,我必须在这台物理服务器上重新安装 Xenserver,但是我想先从中获取我的数据,但似乎没有运行 Xenserver 就无法进行任何类型的导出来保存您的 VM。
我们确实有一个备份解决方案,但是我对它不是 100% 有信心,并且在我清理该服务器并将虚拟机恢复到该服务器之前,我不会知道它是否有效。
答案1
您应该可以通过以下方式找到它:
$ cat /etc/xensource-inventory
DEFAULT_SR_PHYSDEVS='dev/sda3'
它应该使用 lvm。根据卷的版本和状态,您可能需要运行:
# pvscan
PV /dev/sdb1 VG sas01 lvm2 [558.37 GiB / 228.37 GiB free]
PV /dev/sda5 VG kvm01-vg lvm2 [237.63 GiB / 0 free]
Total: 2 [796.00 GiB] / in use: 2 [796.00 GiB] / in no VG: 0 [0 ]
在上面(我运行的是 KVM,因此会略有不同),两个 SCSI 设备上有两个卷组。我们将我们的卷组存储在 SAS01 上,因此我会运行:
# lvdisplay sas01 | grep "LV Path"
这使:
LV Path /dev/sas01/fs02
LV Path /dev/sas01/id01
LV Path /dev/sas01/lg01
LV Path /dev/sas01/ms01
为了摆脱这些,我会这样做:
dd if=/dev/sas01/fs02 | ssh user@remotehost "dd of=/path/to/backups/fs02.img"
您也可以先通过 gzip 运行它,但我认为它不会节省网络带宽,而只是节省文件存储空间。
答案2
使用scp
并将 VM 文件复制到另一个位置。