Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 438204

Summary: sys-fs/zfs: Support iSCSI based pools in /etc/init.d/zfs
Product: Gentoo Linux Reporter: Alexander Zubkov <zubkov318>
Component: New packagesAssignee: Richard Yao (RETIRED) <ryao>
Status: RESOLVED WONTFIX    
Severity: enhancement CC: bug
Priority: Normal Keywords: LATER, NeedPatch
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Alexander Zubkov 2012-10-13 07:04:44 UTC
When using zfs on "external" block devices, fot example iscsi of FC - one common zfs init-script can not handle all situations. Because it have depend: "before net bootmisc" as needed for local filesystems. But I may need net to be started for zfs pools to be accessible. I think at least this should be modifed to make this possible.
1) depend section should contain conditionals. If it is a symlinked script, then it should not use before.
2) ZPOOL_CACHE="/etc/zfs/zpool.cache" should be changed to form:
ZPOOL_CACHE="${ZPOOL_CACHE:-/etc/zfs/zpool.cache}"
3) Stop section should do something different from zfs umount -a. May be it should use specified parameter or somehow calculete what it needs to umount.
4) ... ?

Then it will be possible to make symlink: /etc/init.d/zfs -> zfs.local and make /etc/conf.d/zfs.local whith needed parameters:
ZPOOL_CACHE=/etc/zfs/zpool-local.cache
RC_AFTER=multipathd
...
Comment 1 Richard Yao (RETIRED) gentoo-dev 2012-10-18 05:30:44 UTC
I inherited maintenance of that script, but I am certain that it could be improved. Anyway, I will try to look into this when I find time. I am extremely busy right now. Patches to expedite that process are always welcome.
Comment 2 Richard Yao (RETIRED) gentoo-dev 2013-01-07 21:09:19 UTC
A brief update. I have taken over maintenance of sys-block/iscsitarget, so I am paying more attention to iSCSI now. I am still not quite ready to work on this, but I am getting there. :)
Comment 3 Richard Yao (RETIRED) gentoo-dev 2013-05-29 01:02:43 UTC
Having given this some thought and having looked at improving the zfs OpenRC script today, I do not see a sane way of modifying the zfs OpenRC script to support this. It would need to be another OpenRC script, possibly called zfs-netmount.

With that said, diskless systems mount things through a different process that occurs before /sbin/init even runs, which occurs in either the kernel or an initramfs. If you place a ZFS rootfs on an iSCSI target, then it should be mounted long before this script runs. The only time when it would be helpful would be if you have a non-ZFS pool on remote storage. If you have remote storage, you have a SAN, which can be arbitrarily large, so I am having trouble seeing why you would want additional remote pools in the first place. I also see no reason why a custom script could not be placed into /etc/local.d.

As much as I like to say yes to people, I do not see a reason to go out of my way to enable this kind of a configuration. You have the ability to support it locally without much effort, so there is no need for me to do anything here. I am going to close this as WONTFIX.