Why I don't like Solaris boot archives, illustrated
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
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.)