公司有用户要求,把一台服务器上的linux系统迁到另外一台上,原服务器正常用,新服务器做安全测试,应本人现在对linux还不是非常熟悉,具体的操作是由同事来做的,完成后他们写了操作文档,但是我总感觉他们的操作太麻烦,哪位大侠有比这种方式更好,更简便易懂的交流一下。下面的具体操作文档内容。
(有几个载图,未附上)
注:原机接有存储,可不可以把存储上的数据也迁到新机上。
源主机 明细
型号 HP ProLiant DL380 G6
RAID卡 HP Smart Array P410i
硬盘 146G SAS * 2
OS SuSE 10 SP2
目的主机 明细
型号 HP ProLiant DL380 G5
RAID卡 HP Smart Array E200
硬盘 146G SAS * 2
操作目的
用户要求 将380G6的SuSE系统完全复制克隆到380G5中
与用户确认G5主机中的操作系统及数据已完全备份并且不再需要。重启系统,进入HP Smart Array Option ROM Configuration中将原RAID删除,然后拔出其中一块硬盘,用于克隆复制系统。
再与用户确认G6主机已暂停应用,可以正常关机。将SuSE系统关闭,然后将G5上的那块克隆硬盘插入到G6主机的一个空闲硬盘槽中,开机加电。再进入HP Smart Array Option ROM Configuration中,使用新插入的那块硬盘新建一个RAID 0。
进入SuSE系统,确认源盘和目的盘。
/dev/sda有分区,是源盘,/dev/sdb没有分区,是新建的RAID 0,目的盘
使用dd命令进行双盘克隆复制。
dd if=/dev/sda of=/dev/sdb bs=50M
146G的硬盘大约需要1小时的时间完成复制。
将目的盘插回G5,开机,进入HP Smart Array Option ROM Configuration中,可以看到G6 P410i RAID卡上创建的RAID 0配置也已带入G5 E200 RAID卡中,并可正常识别,所以无需再做RAID设置,直接启动系统即可。
但系统启动后提示错误,无法找到和加载/分区。检查发现,系统启动后默认要加载的硬盘分区是/dev/disk/by-id/scsi-3600050e03d7c67007bf400009f890500(这是/dev/cciss/c0d0的一个软链接),但克隆过来的系统,其硬盘分区是/dev/disk/by-id/scsi-3600050e03d7c67007bf400009f890600。于是先手动mount /分区。
mount /dev/cciss/c0d0p3 /tmp
再编辑/etc目录下的fstab文件。
/tmp/bin/vi /tmp/etc/fstab
将其中的硬盘分区/dev/disk/by-id/scsi-3600050e03d7c67007bf400009f890500全部改为/dev/disk/by-id/scsi-3600050e03d7c67007bf400009f890600,重启系统后发现仍然去加载/dev/disk/by-id/scsi-3600050e03d7c67007bf400009f890500,判断可能与grub设置有关,但查看fstab文件发现/boot分区是reiserfs格式,而启动不完全的SuSE系统无法识别和加载reiserfs分区,需要先手动加载一下reiserfs驱动模块。
insmod /tmp/lib/modules/2.6.18/kernel/fs/reiserfs/reiserfs.ko
然后再mount上/boot分区,并编辑menu.lst文件。
/tmp/bin/cp /tmp/bin/vi /bin
umount /tmp
mount /dev/cciss/c0d0p1 /tmp
vi /tmp/grub/menu.lst
果然发现其中的/分区还是映射在/dev/disk/by-id/scsi-3600050e03d7c67007bf400009f890500上,改为映射到/dev/disk/by-id/scsi-3600050e03d7c67007bf400009f890600,再重启系统后,可以正常启动进入SuSE系统了。
进入系统后,网卡不通,检测发现G5和G6的网卡型号也不同,所以在Yast中,将克隆过来的G6网卡型号删掉,再重新识别配置G5网卡后即恢复正常。Yast配置网卡后,会在/etc/sysconfig/network目录下生成一个诸如ifcfg-eth-00:1e:77:3b:4a:e5这样的网卡配置文件,但其中没有默认网关的配置,创牌机房中的网卡设置的网段是10.128.3.xxx的IP地址,所以还需要在Yast的网卡配置中加入默认网关10.128.3.254,或者在/etc/sysconfig/network/routes中加入default 10.128.3.254 - -,否则无法与海尔域内192.168.xxx.xxx网段的主机通信。
至此,系统迁移全部完成。
王中云 于 2009-12-07 22:33:31发表:
将新服务器的系统版本按原来的配置安装,再把用户数据复制过来不也行吗
jsbxw 于 2009-12-07 16:34:55发表:
受教