Wednesday, October 7, 2009

Can't open boot_archive

During a disaster recovery exercise in one of my customers, I had to deal with this frustrating error and tried almost everything to solve it (since we didn't had too much time for debugging, I've opened a software case with Sun.

This is a sample of the msg:

 

Boot device: /pci@0/pci@0/pci@2/scsi@0/disk@2,0:a File and args: -s -r

Can't open boot_archive

Evaluating:
The file just loaded does not appear to be executable.
{0} ok  

 

 

After a few hours debugging the issue with Sun, we came in the conclusion that the disk had a new bootblock (kernel 139555-08) which was seeking for the boot archive area (but it wasn't there, therefore that's the reason for the msg error). Actually, we did some OS patch changes prior to the DR exercise, but unfortunately we had to back out.

 

The mystery of the entire history is that the image that was applied to the disk a few days ago was using an old kernel version (127111-11) and the bootblock that is compatible with this kernel version should be there (but it wasn't :\)

 

Anyway, after the whole damn troubleshooting this is what we've done to fix the issue:

 

1) Boot from an old disk (that has an older kernel version - in our case we booted using 127111-11)

2) Install a new boot block:

 

************************************************
# To install boot block in the root disk:
# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk/dev/rdsk/cXtXdXs0
************************************************

 

3) Reboot the server and be happy

 

If you still face issues, you might need to reboot in failsafe mode and sync your bootarchive. To do that, go to {OK} prompt and type:

 

boot -F failsafe

 

A message like this will appear:

 

An out of sync boot archive was detected on /dev/dsk/c1t2d0s0.
The boot archive is a cache of files used during boot and
should be kept in sync to ensure proper system operation.

 

Do you wish to automatically update this boot archive? [y,n,?] y


Updating boot archive on /dev/dsk/c1t2d0s0.
The boot archive on /dev/dsk/c1t2d0s0 was updated successfully.

 

Reboot and you should be all set :)

 

 

 

No comments:

Post a Comment