我有一个旧的代理服务器
uname -a:
Linux proxy 2.6.18-6-686 SMP etc etc
我思考它是 Debian(我有 apt-get)。
我读过一篇有趣的文章来实现虚拟化结果: http://www.madgenius.com/blog/index....VM-server.html
但是该服务器有不同的磁盘:
df -h:
Filesystem Dimens. Usati Disp. Uso% Montato su
/dev/sda1 28G 4,6G 22G 18% /
tmpfs 1015M 0 1015M 0% /lib/init/rw
udev 10M 96K 10M 1% /dev
tmpfs 1015M 0 1015M 0% /dev/shm
/dev/sda2 92M 12M 75M 14% /boot
/dev/sdb2 25G 5,9G 18G 26% /log
/dev/sdb1 9,2G 96M 8,7G 2% /squidcache
它主要充当代理服务器,但有很多 iptables 规则。我尝试保存并导入我准备好的新服务器,但只出现错误(iptables-save 然后 iptables-restore)
我想对其进行完美的克隆,并且如果可能的话,在 vmware esxi 服务器中对其进行虚拟化。
我该走哪条路?
答案1
您应该做的第一件事是将所有 /dev/sdxx-es 替换为 UUID。然后您需要将这些磁盘转换为映像。这非常简单:
dd if=/dev/sda of=filename_for_sda.raw
。DD 代表 Carbon Copy,只不过 cc 被 C 编译器使用,所以他们改用 dd。;) 无论如何,它接受一个输入文件 (if) 并将其复制到一个输出文件 (of)。做不是混淆它们。对两个磁盘执行此操作,您将得到一个名为“filename_for_sda.raw”和“filename_for_sdb.raw”的文件。这些是硬盘的精确表示,包括引导扇区、分区表和所有内容。因此,如果您有两个大小相同的磁盘想要克隆,您只需执行dd if=/old_disk/ of=/new_disk
。
现在您有了磁盘的原始映像,您应该能够将它们添加到大多数 VM 解决方案并使用它们。您只需要将其配置为从正确的磁盘启动。有一些工具可以创建更多奇特类型的映像,它们应该支持从原始映像进行转换,因为这是您可以获得的最基本的映像类型。
dd 将逐字节复制所有内容,因此如果磁盘上有大量空闲空间,它不是最有效的解决方案。rsync 可能是一个不错的选择。