Sun System Handbook - ISO 3.4 June 2011 Internal/Partner Edition | |||
|
|
Solution Type Technical Instruction Sure Solution 1003103.1 : Correcting device paths when replacing fiber boot disks after a ufsrestore
PreviouslyPublishedAs 204249
Applies to:Sun Blade 1000 WorkstationSolaris SPARC Operating System - Version: 8.0 to 10 9/10 [Release: to 10.0] Sun Blade 2000 Workstation - Version: Not Applicable and later [Release: N/A and later] Sun Fire V880 Server - Version: Not Applicable and later [Release: N/A and later] Sun Enterprise 3500 Server - Version: Not Applicable and later [Release: N/A and later] All Platforms GoalA Sun Microsystems platform, with a fiber disk as the boot disk, is dependent on the disk's World Wide Number (WWN) being included in its physical device path, in order for the system to boot properly. Below is a detail from a Sun Fire 280R system:/pci@8,600000/SUNW,qlc@4/fp@0,0/disk@w210000203746f423,0:a Physical Device Path /pci@8,600000/SUNW,qlc@4/fp@0,0/disk@w210000203746f423,0:a WWN If the primary boot device is replaced by a disk which has been ufsrestore'd (from a backup via ufsdump), then the WWN of this disk must be implemented into the Solaris Operating System device path, and must be associated with the correct Solaris OS logical device. SolutionProcedure for correcting device paths on the Sun Fire 280R:To show this as a working example, we copied c1t0d0s0 to
c1t1d0s0 on a Sun Fire 280R via ufsdump and ufsrestore, then
installed the boot-block. The two disks were switched, emulating
the replacement of the primary disk. Sun Fire 280R (UltraSPARC-III) , No Keyboard Entering System Maintenance Mode The output from df -k may show the physical disk device mounted, but not the logical device (c1t0d0s0): # df -k The disk device that the system was booted from, is disk@w210000203746f423,0:a. This disk's WWN does not match the WWN of the disk that the vfstab file shows to be the boot device. To correct this situation, boot to mini-root from a Solaris OS CD-ROM or install image("boot net -s" or "boot cdrom -s"), and recreate the link, of the physical device path (/devices) to the logical device name (c1t0d0s0) by following the steps below: ok boot net -s Mount the root filesystem to /mnt # mount /dev/dsk/c1t0d0s0 /mnt Determine (from the vfstab file) the expected logical boot device (c1t0d0s0) # more /mnt/etc/vfstab Determine if the correct physical disk, as determined by its WWN (World Wide Number), is linked to the logical name (from the vfstab file) of /dev/dsk/c1t0d0s1: # cd /mnt/dev/dsk This shows the disk with the WWN of w2100002037c80681 as the linked disk. The disk device should be w210000203746f423 (as shown in the df -k output above.) To fix the problem: Make the device paths and instance numbers in the /etc/path_to_inst file, equivalent to the miniroot devices from the cdrom/net boot: # devfsadm -r /mnt -p /mnt/etc/path_to_inst Make the /device directory equivalent to the mini-root devices created from the cdrom/net boot. This may not be necessary if the correct device tree exists: # cd /devices Create the links from the correct logical device to the physical device: # disks -r /mnt Notice the change in the link from c1t0d0s0 to the correct disk: # cd /mnt/dev/dsk # ls -l c1t0d0s0 lrwxrwxrwx 1 root root 70 Sep 11 10:38 c1t0d0s0 -> ../../devices/pci@8,600000/SUNW,qlc@4/fp@0,0/ssd@w210000203746f423,0:a Alternate fix if using a Solaris 8 OS cdrom or net image: Remove the old path_to_inst file: # mv /mnt/etc/path_to_inst /mnt/etc/orig.path_to_inst Remove all the old device links: # rm /mnt/dev/rdsk/c* ; rm /mnt/dev/dsk/c* ; rm /mnt/dev/rmt/* Rebuild the device structure using the devfsadm command: # devfsadm -r /mnt -p /mnt/etc/path_to_inst Now that the boot device is associated with the correct logical and physical Solaris OS device, this disk will boot, providing the OpenBoot[TM] PROM (OBP) monitor has a correct boot alias (aka disk, disk1 etc). It might be advisable to set the OBP boot-device variable with luxadm prior to rebooting. At a later time, a boot alias can be created at the OBP: Before : # eeprom|grep boot-device After : # eeprom|grep boot-device *NOTE: If platform has a graphics card installed, a reconfiguration boot is required to allow X-windows to start on console. # reboot A reboot at this point, will boot to the correct boot device, using the boot-device variable. If a boot alias is desired, use show-disks to create it. Then set boot-device to the new alias: ok show-disks The system should now be booting correctly. Product Solaris 10 Operating System Solaris 9 Operating System Solaris 8 Operating System Sun Fire 280R Server Sun StorageTek T3 Array Sun Fire V880 Server Sun Blade 2000 Workstation Sun Blade 1000 Workstation Sun Enterprise 3500 Server Sun StorageTek A5200 Array Sun StorageTek A5100 Array Sun StorageTek A5000 Array fiber, boot, disk, mounting, root filesystem, corrupted Previously Published As 40133 Attachments This solution has no attachment |
||||||||||||
|