- 论坛徽章:
- 0
|
举例为Ultra10到Fire 280R之间的OS 转换,Ultra10为ide磁盘,Fire280R为光纤磁盘
Ultra10 分区如下:
/dev/dsk/c0t0d0s0
/
/dev/dsk/c0t0d0s3
/usr
/dev/dsk/c0t0d0s5
/var
/dev/dsk/c0t0d0s4
/opt
将ultra10上每个分区完整的复制到280R上面。
步骤:
ultra10
共享出目录/data用于后面nfs挂载恢复之用。
# vi /etc/dfs/dfstab
share -F nfs /data
如果两者之间的磁盘大小规格一样使用下面规划分区表
# prtvtoc /dev/rdsk/c0t0d0s2 > ; /data/vtoc.dat
如果两者之间的磁盘大小规格不同,建议互相对照通过手动分区
按每个分区ufsdump
# ufsdump -0f /data/0.dump /dev/rdsk/c0t0d0s0
或者 # ufsdump -0f /data/0.dump /
# ufsdump -0f /data/3.dump /dev/rdsk/c0t0d0s3
或者 # ufsdump -0f /data/3.dump /usr
# ufsdump -0f /data/4.dump /dev/rdsk/c0t0d0s4
或者 # ufsdump -0f /data/4.dump /opt
# ufsdump -0f /data/5.dump /dev/rdsk/c0t0d0s5
或者 # ufsdump -0f /data/5.dump /var
Fire 280R:
启动到单用户
# boot cdrom -sw
简单配置一个网卡地址用于挂接ultra10的共享目录
# ifconfig eri0 xxx.xxx.xxx.xxx netmask 255.255.255.0 up
挂接ultra10的共享目录到本地mnt目录
# mount -F nfs ultra10-ipaddress:/data /mnt
# format
针对每个分区创建新的文件系统并依次挂接到/a
# newfs /dev/rdsk/c1t0d0s0
# newfs /dev/rdsk/c1t0d0s3
# newfs /dev/rdsk/c1t0d0s4
# newfs /dev/rdsk/c1t0d0s5
# mount /dev/dsk/c1t0d0s0 /a
进入/a目录依次恢复
# cd /a
# ufsrestore -rf /mnt/0.dump
# umount /a
重复以上步骤,将所有分区全部ufsrestore完毕为止。
修改相关设定:
# mount / dev/dsk/c1t0d0s0 /a
# vi /etc/vfstab
修改主机名和ip地址
# vi /etc/hosts
# vi /etc/hostname.interface
(注意:如果两者网卡名不同,不需修改此文件)
# vi /etc/netmasks
# vi /etc/nodename
vi /etc/net/ticlts/hosts
vi /etc/net/ticots/hosts
vi /etc/net/ticotsord/hosts
设置启动块
# cd /
# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c1t0d0s0
由于ultra10和280R机器类型不同,使用的设备树也不一样,需要通过更新设备树才能正常开机。否则有如下错误:
Rebooting with command: boot
Boot device: /pci@8,600000/SUNW,qlc@4/fp@0,0/disk@w2100002037c867ba,0:a File and args:
SunOS Release 5.8 Version Generic_117350-41 64-bit
Copyright 1983-2003 Sun Microsystems, Inc. All rights reserved.
configuring IPv4 interfaces: eri0.
Hostname: 280r
mount: /dev/dsk/c1t0d0s3 or /usr, no such file or directory
/sbin/rcS: /usr/bin/loadkeys: not found
WARNING: /proc could not be mounted
/sbin/swapadd: expr: not found
WARNING - /usr/sbin/fsck not found. Most likely the
mount of /usr failed or the /usr filesystem is badly
damaged. The system is being halted. Either reinstall
the system or boot with the -b option in an attempt
to recover.
syncing file systems... done
Program terminated
{1} ok
更新设备树:
# rm -r /mnt/dev/dsk
# rm -r /mnt/dev/rdsk
# rm /mnt/etc/path_to_inst
# drvconfig -r /mnt -p /mnt/etc/path_to_inst
# cd /devices
# find . -print|cpio -pduVm /mnt/devices >/dev/null
# cd /dev
# tar cf - dsk|(cd /mnt/dev;tar xf -)
# tar cf - rdsk|(cd /mnt/dev;tar xf -)
# disks -r /mnt
# devlinks -r /mnt
# luxadm set_boot_dev /dev/dsk/c1t1d0s0
# rm -r /mnt/pci@* > /dev/null 2>&1
# rm -r /mnt/memory* > /dev/null 2>&1
# rm -r /mnt/fhc@* > /dev/null 2>&1
# rm -r /mnt/central@* > /dev/null 2>&1
# rm -r /mnt/sbus@* > /dev/null 2>&1
# rm /mnt/dev/fb* > /dev/null 2>&1
# rm /mnt/dev/fb0/* > /dev/null 2>&1
# touch /mnt/reconfigure
# sync;sync;sync;reboot
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/25377/showart_315195.html |
|