On Fri, 27 May 2011 14:41:54 +0300, Andriy Gapon wrote:
on 27/05/2011 14:08 [email protected] said the following:
I use zfs on / for quite some time now on 8-stable.
Each time I want to update base, I use those steps :
- zfs snapshot tank/root@old
- zfs clone tank/root@old tank/root.old
- csup / Rebuild world and kernel
- install world & kernel
- reboot
- (mergemaster and all usual post-update stuff)
This way, if I unfortunately can't boot, I can revert to old
userland & kernel by :
- dropping into loader prompt
- setting vfs.root.mountfrom to zfs:tank/root.old
- booting kernel.old
Just for the records, I would like to poin out that kernel.old would
be loaded
from zfs:tank/root.
Yes indeed.
(...)
Also, world is updated "in place".
I think it should be possible to do the installworld & installkernel
on a root
clone then boot into it (changing tank bootfs property), but then :
how to revert
to previous state in case of failure ? Is there a "nextboot" thing
planed for zfs ?
I am not aware of any plans to implement nextboot for zfs as it would
require at
least some write support for zpool and there is none (for boot code)
at the moment.
Could'nt the loader use a bit flag in the loader sector ?
Nextboot (or something equivalent) missing is the sole thing keeping me
from removing ufs boot partition for remote servers.
What do you think ? How do you address the problem ?
I have some patches that allow to boot a different loader or a kernel
from a
different (non-bootfs) ZFS dataset:
http://lists.freebsd.org/pipermail/freebsd-fs/2010-July/008976.html
But that still requires access to zfs boot and/or loader command
interface.
Interesting though. Thanks.
Does the mentionned patch still works with latest 8-stable loader ?
And do you still have to change vfs.root.mountfrom once currdev set ?
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[email protected]"