Why I don't like Solaris boot archives, illustrated

April 7, 2011

I've written before about how I don't like Solaris boot archives. Let me condense that previous writing and illustrate it with a recent event. First, the short reason I don't like boot archives:

The problem with boot archives is that they make my machines unbootable for unimportant reasons.

It might be okay if boot archives only got out of date because of important things and important changes, especially if things were interrupted partway through. But that's not what actually happens.

Recently I decided to rebuild the boot archives on all of our fileservers as a precaution. As far as I knew, nothing had changed on them recently that should affect the boot archives (the fileserver configurations are basically static), but it seemed to be a good idea just in case. Somewhat to my surprise, most of the fileservers needed to update their boot archives, and they needed to do this because /etc/rtc_config had changed. This file contains basic timezone information, and on all of those machines it had last been updated March 14th at 2:01 am.

(People in most of North America may recognize that date and time.)

An out of date boot archive prevents your machine from rebooting unattended if it crashes, loses power, or otherwise suffers some problem. So the end result is that Solaris decided that the change from standard time to daylight savings time was sufficiently important that it should prevent our systems from automatically recovering from unexpected outages.

Good going, Solaris.

The net result of this is that our fileservers now automatically rebuild their boot archives every night. This is still only an imitation of how it should actually work (Solaris should automatically update the boot archive whenever one of its administration commands makes it out of date), but it's better than nothing.

(I continue to have no idea what on earth the Solaris engineers were thinking when they came up with this 'feature' of boot archives. It smells a lot like making apparently logical local decisions without thinking through their global consequences.)

Written on 07 April 2011.
« Monkey subclassing for fun and profit
An example of modifying a Firefox extension »

Page tools: View Source, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Thu Apr 7 23:32:40 2011
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.