将 Dell Poweredge 2850 上的旧 RHEL 4.3 克隆到带有 SAS PERC6i 的 PE2950

将 Dell Poweredge 2850 上的旧 RHEL 4.3 克隆到带有 SAS PERC6i 的 PE2950

我有一台 Dell PowerEdge 2850,配有 PERC 4 控制器和 SCSI 驱动器。我需要将其克隆到配有 PERC6i 和 SAS 驱动器的 PE2950。我使用 DKMS 包以及 Dells 网站上的最新驱动程序创建了一个驱动程序磁盘,并手动成功安装,所以我知道它会安装,但我需要一个好的克隆选项建议。我试过 clonezilla,但它无法识别硬盘,而且我不是基于 debian 的发行版的专家,所以我无法操作它。

有人知道克隆此服务器的可靠方法吗?我想如果我能找到一种传输映像的方法,那么我将在克隆源框之前在源框上安装 SAS 驱动程序,它应该能够启动到目标框。

谢谢大家!

答案1

我已经使用 SystemImager 将 RHEL4 从 2850 移至 2950。

RHEL4 无法识别 2950 上的驱动器控制器,因此我使用救援磁盘启动并重新创建了 initrd。

答案2

如果您已经对新盒子进行了分区和设置,并且按照您想要的方式进行设置,并且只需要获得旧盒子的“灵魂”,那么尝试这种快速而简单的方法不会有任何损失。

我会使用驱动程序磁盘在新机器上启动 RHEL 4.3 救援 CD,并验证您是否拥有可用的网络驱动程序和 IP 地址。完成此操作后,在新机器上的某个挂载位置创建一个目录,该目录具有足够的空间来接受旧机器的数据,然后 cd 到该目录,并执行以下操作:

nc -l -p 8989 | tar x

在旧盒子上,执行以下操作:

tar cf - /* | nc (receiving host ip address) 8989

这会通过网络将源箱的内容运送到目标箱的目录中。

理论上,您应该能够使用 diff 来查找源框和目标框之间的 /etc 和其他文件夹之间的差异,并将它们“组合”到一个框中。

实际上,您可能可以解压旧机器,直接覆盖新机器的根目录,因为新内核和模块将位于不同的路径中,并且不会被覆盖。如果这样做,您可以在发送 tar 命令行上放置“--exclude=boot”,如下所示,以防止 grub 配置在新机器上被覆盖:

tar cf - --exclude=boot /* | nc (receiving host ip address) 8989

答案3

我使用类似这样的程序成功进行了类似的迁移(我主要这样做是为了从物理服务器迁移到虚拟机)。我说的是“Knoppix”,任何 Linux Live CD 都应该可以使用:

  1. 使用 Knoppix 启动两者;或者以单用户模式启动旧服务器。“knoppix 2”仅用于文本可能是个好主意。
  2. 当然,让两者使用不同的 IP 进行联网。
  3. 在旧服务器上,运行:dd if=/dev/sda | gzip -c | nc -l -p 3000
  4. 在新服务器上,运行:nc $IP 3000 | gunzip -c | dd of=/dev/sda
  5. 等待大约 1 到 3 个小时(当然,视情况而定)
  6. 关闭旧服务器
  7. 在新服务器上执行以下步骤:
    1. 四处寻找并找出哪个分区是哪个。在我的示例中,sda2 是 /,sda1 是 /boot
    2. mount -o dev /mnt/sda2
    3. mount /dev/sda1 /mnt/sda2/boot
    4. chroot /mnt/sda2
    5. mount /proc
    6. 编辑 /etc/modules.conf 并将 scsi_hostadapter 更改为正确的内容(查看 knoppix 已加载的内容lsmod应该会有所帮助)
    7. module_upgrade
    8. mkkerneldoth
    9. rpm -qa | grep kernel
    10. new-kernel-pkg --mkinitrd --depmod --install 2.4.21-40.EL(版本来自前一个;rpm -q --scripts kernel并模仿后记)
    11. exit(来自 chroot)
    12. shutdown -rf now
  8. 当新机器启动时,选择您修改过的相同内核,并执行有关确认已消失的硬件和已添加的硬件的操作。
  9. 确认一切正常。可能需要调整网络设置等...

相关内容