Be careful with Jumpstart miniroot
If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!
Last few days I’m working on debugging the Solaris 10 Jumpstart install for some old desktops (Ultra 10, Ultra 60).
Among few well-known problems, I’ve noticed such an anomaly: the whole Jumpstart session happens just fine, all the packages are installed, but at the very end I see the errors and the installation fails:
SUNWspnego.......................done. 1.30 Mbytes remaining. SUNWsra..........................done. 1.18 Mbytes remaining. SUNWsrh..........................done. 1.00 Mbytes remaining. Completed software installation Solaris 10 software installation succeeded Customizing system files - Mount points table (/etc/vfstab) - Unselected disk mount points (/var/sadm/system/data/vfstab.unselected) - Network host addresses (/etc/hosts) ERROR: Could not open file (/etc/hosts) ERROR: Could not set up the remote host file (/etc/hosts) ERROR: System installation failed
After a quick research, I’ve found out that such errors happen when you have a Solaris network image miniroot corrupted. And after a short while more, I’ve learned how exactly I got my miniroot image corrupted in the first place: I had my netinstall image in the /export/vol1/jumpstart/images directory, which I had previously shared out using
solaris# share -o rw,anon=0 /export/vol1/jumpstart/images
when I was transferring the netinstall image from a desktop with CD-ROM to the Jumpstart server.
Shortly after the copying, I got distracted and therefore had completely forgotten to unshare the resource. As the result of this, the add_install_client had tried to share the miniroot but didn’t touch it as the whole netinstall image was already shared out with read/write access.
And this is how such a setup corrupts your miniroot: the very first client you Jumpstart, is trying to update some of its files – like /etc/vfstab and /etc/hosts, but they’re in miniroot. With read/write access, they get corrupted right there. But what happens usually is that your client moves on to another location for these files, as it can’t update the read-only miniroot ones. It normally ends up updaiting /a/etc/vfstab and /a/etc/hosts, I think.
As the result of this error, you’re left with some directories of your miniroot having regular files instead of symlinks. For example:
this is the original and fully working /export/vol1/sol10/Solaris_10/Tools/Boot/etc/inet directory:
drwxr-xr-x 4 root sys 1024 Jan 23 2005 . drwxr-xr-x 40 root sys 4096 Jan 23 2005 .. -r--r--r-- 1 root sys 22 Jan 21 2005 datemsk.ndpd lrwxrwxrwx 1 root other 29 Aug 15 16:31 hosts -> ../../tmp/root/etc/inet/hosts drwxr-xr-x 4 root sys 96 Jan 23 2005 ike -r--r--r-- 1 root sys 1101 Jan 23 2005 inetd.conf -r--r--r-- 1 root sys 545 Jan 23 2005 ipaddrsel.conf lrwxrwxrwx 1 root other 31 Aug 15 16:31 ipnodes -> ../../tmp/root/etc/inet/ipnodes -r--r--r-- 1 root sys 914 Jan 23 2005 ipsecalgs -r--r--r-- 1 root sys 2380 Jan 21 2005 ipsecinit.sample lrwxrwxrwx 1 root other 32 Aug 15 16:31 netmasks -> ../../tmp/root/etc/inet/netmasks -r--r--r-- 1 root sys 372 Jan 23 2005 networks -r--r--r-- 1 root sys 1901 Jan 23 2005 protocols drwx------ 3 root sys 96 Jan 23 2005 secret -r--r--r-- 1 root sys 3869 Jan 23 2005 services -r--r--r-- 1 root sys 520 Jan 23 2005 sock2path -r--r--r-- 1 root sys 3312 Jan 21 2005 wanboot.conf.sample
… and this is the same one, only corrupted by the first installed client:
drwxr-xr-x 4 root sys 512 Sep 3 16:48 . drwxr-xr-x 40 root sys 3072 Sep 3 16:19 .. -r--r--r-- 1 root sys 22 Jan 21 2005 datemsk.ndpd -r--r--r-- 1 root sys 99 Sep 3 16:48 hosts drwxr-xr-x 4 root sys 512 Sep 3 14:23 ike -r--r--r-- 1 root sys 1101 Jan 23 2005 inetd.conf -r--r--r-- 1 root sys 545 Jan 23 2005 ipaddrsel.conf -r--r--r-- 1 root sys 91 Sep 3 16:48 ipnodes -r--r--r-- 1 root sys 914 Jan 23 2005 ipsecalgs -r--r--r-- 1 root sys 2380 Jan 21 2005 ipsecinit.sample -r--r--r-- 1 root sys 384 Sep 3 16:48 netmasks -r--r--r-- 1 root sys 372 Jan 23 2005 networks -r--r--r-- 1 root sys 1901 Jan 23 2005 protocols -rw-r--r-- 1 root root 523 Sep 3 16:04 routing.conf drwx------ 3 root sys 512 Sep 3 14:23 secret -r--r--r-- 1 root sys 3869 Jan 23 2005 services -r--r--r-- 1 root sys 520 Jan 23 2005 sock2path -r--r--r-- 1 root sys 3312 Jan 21 2005 wanboot.conf.sample
LESSON OF TODAY: be careful and always check that your netinstall image has its miniroot shared out in read-only!
Comments
One Response to “Be careful with Jumpstart miniroot”
Leave a Reply

[...] How to make sure you don’t corrupt your netinstall miniroot [...]