[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

ZFS support in GRUB



[ Please CC me on your replies ]

Hi,

It's nice to see you guys are making progress about ZFS.  I figured a
status report about ZFS support in GRUB would be useful to you.

GRUB has complete support for ZFS in current trunk, provided that the
contrib ZFS code in grub-extras is overlaid (as it is in the Debian
package).  Some of my fixes already made it to sid, but not all, so if
you want to play with it either grab upstream Bazaar trunk or wait
for next snapshot.

grub-install and update-grub are fully functional (even when using ZFS
as root filesystem), but still not widely tested, so I encourage you to
play with it and report any problems.  If you find problems with ZFS
support, I recommend that you put me on CC when reporting them, as I
don't actively monitor grub-devel (or any mailing list) these days.

There are, however, some caveats you should be aware of:

- Only ZFS up to (and including) version 14 is supported.  For newer
  versions, we could make update-grub work with separate /boot with
  minimal effort (poke me if you think this is needed), but complete
  support for ZFS in root isn't currently being worked on.  We need
  help in this area.

- Multi-device arrays are not supported.  If they're RAID1 (mirror),
  we work around this by selecting the first member and using that for
  boot later.  For array types where more than one disk is needed, GRUB
  can't boot.  Using a separate /boot can resolve this, however.

- Gzip compression is not supported.  It can probably be implemented
  without much effort, given that GRUB already has gzip code (for a
  different purpose, so the API isn't generic enough, but this can be
  fixed).  Note that the default in ZFS is no compression, and when
  compression is enabled the default is LZJB, so this is not a big
  problem.  Also note that in case you enable gzip compression, a
  separate /boot is not necessary to work around missing support in
  GRUB.  Simply create new ZFS filesystems for /boot and /lib/modules
  inside the same zpool, and adjust compression settings accordingly.


Reply to: