Comment 9 for bug 1624540

Revision history for this message
Stéphane Graber (stgraber) wrote :

Right, so unfortunately we can't base it on whether the zfs module is loaded, as it will effectively always be loaded as soon as we pre-install zfsutils-linux in our images.

Now what we could do I guess is:
 - Don't start ANY of the 3 zfs systemd units in containers (that should be pretty trivial)
 - Have zfs-zed start after zfs-import-scan and zfs-mount and have it bail if there is no zfs filesystems mounted

That still leaves us without zed running after zpool creation. The only way I can think of to fix this would be to alter the zpool command itself. Though I'm not sure how big a deal it would really be given that zed would then start after next reboot and the vast majority of users will reboot their system after changing their storage configuration, just to make sure that things get mounted properly.

So the window where zed wouldn't be running would be relatively small.

In an ideal world, we'd have something like RequiresMountsFor in systemd but taking a filesystem type rather than a path, so we could have a unit list "RequiresFilesystem" with "zfs" and so have zfs-zed kick in as soon as any zfs mount occurs, but I'm not seeing any way to do this with current systemd. (subscribing martin for ideas)