On Wed, Feb 15, 2006 at 09:16:02AM -0800, Shudong Zhou wrote:
> The basic idea of booting from an archive solves more problems then
> it introduces. It simplifies Xen, GRID deployment, HoneyComb, etc.
> As far as resyncing the archive on shutdown, it's the minimal
> approach. We can always add more syncing points where it makes
> sense.
> 
> I do think the boot-archive is overly agressive in reporting a fatal
> failure if *any* file is out of date. The original intention was
> to prevent potential data corruption related to mismatched kernel
> modules. We should relax the failure mode such that fatal failure
> is only reported if a selected subset of files are out of date.

I filed

6342731 /lib/svc/method/boot-archive could try harder

a while back.

Possible approaches to fixing this problem:

 - make the boot-archive smarter (see 6342731)

   By the time the boot-archive method starts the root filesystem is
   clearly mounted, so the boot-archive could figure out what actually
   differs between / and the boot archive and act accordingly (e.g.,
   load/unload drivers, whatever).

   The only time that user input should be needed, if then, would be
   when drivers needed for mounting / have changed.  And even then, why
   not just update the archive and reboot?  / did mount, after all...

   This assumes, of course, that the / device isn't changed without
   updating the archive.  Mostly, I think, a safe assumption.

   In any case, whenever user input is needed it'd be nice if the
   service could interact directly rather than offer some advice and
   then dump the user on sulogin (ouch!).  If sulogin took a command as
   an argument then at least the method could dump the user on a menu
   automatically as soon as the root password is typed in.


 - minimize the boot archive -- it should have only enough to mount the
   root, so if I add a sound driver or what have you, the boot archive
   should need no updates.

   I really like this one, because how often do boot devices and drivers
   change?  Not often.  But new devices are added rather often.

   This would require that the kernel be able to process /etc/system,
   /etc/path_to_inst and /etc/driver_* twice: once from the boot
   archive, once when the root is mounted.


Nico
-- 

Reply via email to