Troubleshooting
Problem
An upgrade of AIX, a migration of AIX, a mksysb backup or an alternate-rootvg creation fail with this error: 0301-154 bosboot: missing proto file:
Cause
Usually a file in /usr/lib/drivers is pointed out in the error message. The cause is usually old driver filesets still installed in the system, when the driver has been removed.
Resolving The Problem
The bosboot command uses files in the directory /usr/lib/boot/protoext to tell it what drivers and libraries to include in a boot image. If these files remain after the fileset they were installed from is removed, they will incorrectly tell bosboot to look for drivers in /usr/lib/drivers for a driver that no longer exists.
Example:
# bosboot -ad /dev/ipldevice
0301-154 bosboot: missing proto file: /usr/lib/drivers/ssapin
If we search the directory /usr/lib/boot/protoext for a file containing a line pointing to that driver we will find this one:
# grep -l ssapin *
disk.proto.ext.pci.14104500.rte
# cat disk.proto.ext.pci.14104500.rte
ssa ---- 777 0 0 /usr/lib/drivers/ssa
ssapin ---- 777 0 0 /usr/lib/drivers/ssapin
cfgssa ---- 777 0 0 /usr/lib/methods/cfgssa
libssa.a ---- 777 0 0 /usr/lib/libssa.a
Check to see if these drivers and libraries currently exist on the system:
# ls /usr/lib/drivers/ssa
/usr/lib/drivers/ssa not found
# ls /usr/lib/drivers/ssapin
/usr/lib/drivers/ssapin not found
# ls /usr/lib/methods/cfgssa
/usr/lib/methods/cfgssa not found
# ls /usr/lib/libssa.a
/usr/lib/libssa.a not found
Next, check to see if there is a fileset that owns this .rte file:
# lslpp -w /usr/lib/boot/protoext/disk.proto.ext.pci.14104500.rte
No output was returned. This means the file was leftover and can be safely removed.
# rm disk.proto.ext.pci.14104500.rte
Then run the bosboot command again to see if it completes successfully.
If there are many old files left in the protoext directory this may take several rounds of removal and trying bosboot before success.
Was this topic helpful?
Document Information
Modified date:
17 June 2018
UID
isg3T1022290