[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