http://bugzilla.opensuse.org/show_bug.cgi?id=963336
http://bugzilla.opensuse.org/show_bug.cgi?id=963336#c12
--- Comment #12 from Ben Kelly ---
If it helps any, the /etc/mtab entry for a ZFS mount point looks like this:
thoth/root / zfs rw,relatime,xattr,noacl 0 0
The "device name" is the name of the ZFS dataset; it might correspond to one or
more actual block devices, depending on pool geometry.
The correct way to boot from this:
- set the `bootfs` property on the containing pool (`# zpool set
bootfs=thoth/root thoth`)
- make sure the `zfs` module is included in the initrd when it's generated;
dracut seems to handle this automatically
- and *do not* include a `root=` parameter to the kernel or embed on in the
initrd, which requires dracut to be invoked with --no-hostonly-cmdline.
Then you load the kernel and initrd and away you go. The zfs module in the
initrd will find / automatically based on the `bootfs` property, and then find
the other pools/datasets based on the contents of `/etc/zfs/zpool.cache`.
If booting from grub or extlinux, this requires /boot to be on a non-ZFS
partition (extlinux doesn't support ZFS at all; grub's support is unreliable).
If booting using EFISTUB, it merely requires a copy of the kernel and initrd in
/boot/efi/EFI somewhere.
All that aside, even if there are no plans to support ZFS in yast, it should at
least not crash when it can't match up / with a block device. :)
(Related to this, being able to select EFISTUB or extlinux as bootloaders would
be fantastic. Should I open separate feature requests for those?)
--
You are receiving this mail because:
You are on the CC list for the bug.