[rescue] Sol10 grub help?
Phil Stracchino
alaric at metrocast.net
Fri Feb 24 08:57:05 CST 2012
I just had to replace both boot drives on my Solaris 10u9 x86 box. The
new drives are properly attached to the root pool and resilvered, though
I haven't been able to detach and remove the last of the old drives yet
because I have a problem: Grub will load ONLY from the remaining old
drive. I cannot get it to load from either of the replacement drives.
zpool status rpool:
pool: rpool
state: DEGRADED
status: One or more devices could not be used because the label is
missing or
invalid. Sufficient replicas exist for the pool to continue
functioning in a degraded state.
action: Replace the device using 'zpool replace'.
see: http://www.sun.com/msg/ZFS-8000-4J
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
rpool DEGRADED 0 0 0
mirror-0 DEGRADED 0 0 0
c2d0s0 FAULTED 0 0 0 corrupted data
c3d0s0 ONLINE 0 0 0
c1t8d0s0 ONLINE 0 0 0
errors: No known data errors
c2d0s0 is the remaining old 80GB drive, which I can't swap out yet
because I can't boot from anything else. c3d0s0 and c1t8d0s0 are the
new 250GB drives. c1t8d0s0 will be moved to c2d0s0 once I solve the
boot problem. I just can't figure out how to solve the booting problem.
I don't even get a grub> prompt.
Both new disks show the following fdisk partitioning:
Total disk size is 30401 cylinders
Cylinder size is 16065 (512 byte) blocks
Cylinders
Partition Status Type Start End Length %
========= ====== ============ ===== === ====== ===
1 Active Solaris2 1 30400 30400 100
The old disk shows:
Total disk size is 9729 cylinders
Cylinder size is 16065 (512 byte) blocks
Cylinders
Partition Status Type Start End Length %
========= ====== ============ ===== === ====== ===
1 Active Solaris2 1 9728 9728 100
I ran installgrub as follows:
installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c3d0s0
And also tried the same with -m, with no change in behavior. It reports
correct execution on both new drives, whether I use -m or not.
/rpool/boot/grub/menu.lst contains the following (extraneous comments
skipped):
default 0
timeout 10
#----- s10_u9_amd64 - ADDED BY LIVE UPGRADE - DO NOT EDIT -----
title s10_u9_amd64
findroot (BE_s10_u9_amd64,0,a)
bootfs rpool/ROOT/s10_u9_amd64
kernel$ /platform/i86pc/multiboot -B $ZFS-BOOTFS
module /platform/i86pc/boot_archive
title s10_u9_amd64 failsafe
findroot (BE_s10_u9_amd64,0,a)
bootfs rpool/ROOT/s10_u9_amd64
kernel /boot/multiboot -s
module /boot/amd64/x86.miniroot-safe
#----- s10_u9_amd64 -------------- END LIVE UPGRADE ------------
Output:
babylon4:root:/rpool/boot/grub:43 # installgrub /boot/grub/stage1
/boot/grub/stage2 /dev/rdsk/c3d0s0
stage1 written to partition 0 sector 0 (abs 16065)
stage2 written to partition 0, 273 sectors starting at 50 (abs 16115)
babylon4:root:/rpool/boot/grub:44 # installgrub /boot/grub/stage1
/boot/grub/stage2 /dev/rdsk/c1t8d0s0
stage1 written to partition 0 sector 0 (abs 16065)
stage2 written to partition 0, 273 sectors starting at 50 (abs 16115)
I've performed the bootadm update-archive step, but that doesn't seem to
be related to this particular problem, as it's never getting that far.
I've found references to checking for bootpath in eeprom, but eeprom
contains no bootpath lines, only:
babylon4:root:/rpool/boot/grub:41 # eeprom
ata-dma-enabled=1
atapi-cd-dma-enabled=0
ttyb-rts-dtr-off=false
ttyb-ignore-cd=true
ttya-rts-dtr-off=false
ttya-ignore-cd=true
ttyb-mode=9600,8,n,1,-
ttya-mode=9600,8,n,1,-
lba-access-ok=1
prealloc-chunk-size=0x2000
keyboard-layout=US-English
console=text
However, I'm uncertain that this is relevant either.
Anyone have any suggestions and/or diagnostic steps? Obviously, I'd
like to have a grub on each new disk that will use that disk as a boot
source, but I'd settle for now for being able to boot from EITHER ONE of
the new disks and pull the last old one.
--
Phil Stracchino, CDK#2 DoD#299792458 ICBM: 43.5607, -71.355
alaric at caerllewys.net alaric at metrocast.net phil at co.ordinate.org
Renaissance Man, Unix ronin, Perl hacker, SQL wrangler, Free Stater
It's not the years, it's the mileage.
More information about the rescue
mailing list