aboutsummaryrefslogtreecommitdiffstats
path: root/etc/init.d/README.md
diff options
context:
space:
mode:
authorJames Lee <[email protected]>2015-08-30 14:36:41 -0400
committerBrian Behlendorf <[email protected]>2015-09-02 09:16:39 -0700
commit3f1cc17c9005d19faba91fe7236332ed502b1a3f (patch)
tree3499392a3fe8255ad8dbcb2c3673fbc7a372e312 /etc/init.d/README.md
parentfb40095f5f0853946f8150481ca22602d1334dfe (diff)
Reorder zfs-* services to allow /var on separate dataset
ZED depends on /var. When /var is a separate dataset, it must be mounted before starting ZED. This change moves the zfs-zed service from starting first, to starting after zfs-mount, but before zfs-share. As discussed in issue #3513, ZED does not need to start first in order to consume events made during the zfs-import and zfs-mount services. The events will be queued and can be handled later in the boot process. ZED may, however, handle sharing in the future, so it should be started before the zfs-share service. This commit also stops the zfs-import service from writing temp files to /var/tmp on shutdown and it corrects the return code for the OpenRC service. Other OpenRC-specific changes noted in issue #3513 were reitereated in issue #3715 and committed in da619f3. Signed-off-by: James Lee <[email protected]> Signed-off-by: Richard Yao <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #3513
Diffstat (limited to 'etc/init.d/README.md')
-rw-r--r--etc/init.d/README.md29
1 files changed, 12 insertions, 17 deletions
diff --git a/etc/init.d/README.md b/etc/init.d/README.md
index a0d3d9947..f3adc1185 100644
--- a/etc/init.d/README.md
+++ b/etc/init.d/README.md
@@ -42,36 +42,31 @@ INSTALLING INIT SCRIPT LINKS
To setup the init script links in /etc/rc?.d manually on a Debian GNU/Linux
(or derived) system, run the following commands (the order is important!):
- update-rc.d zfs-zed start 07 S . stop 08 0 1 6 .
- update-rc.d zfs-import start 07 S . stop 07 0 1 6 .
- update-rc.d zfs-mount start 02 2 3 4 5 . stop 06 0 1 6 .
+ update-rc.d zfs-import start 07 S . stop 08 0 1 6 .
+ update-rc.d zfs-mount start 02 2 3 4 5 . stop 07 0 1 6 .
+ update-rc.d zfs-zed start 26 2 3 4 5 . stop 06 0 1 6 .
update-rc.d zfs-share start 27 2 3 4 5 . stop 05 0 1 6 .
To do the same on RedHat, Fedora and/or CentOS:
- chkconfig zfs-zed
chkconfig zfs-import
chkconfig zfs-mount
+ chkconfig zfs-zed
chkconfig zfs-share
On Gentoo:
- rc-update add zfs-zed boot
rc-update add zfs-import boot
rc-update add zfs-mount boot
+ rc-update add zfs-zed default
rc-update add zfs-share default
+ The idea here is to make sure all of the ZFS filesystems, including possibly
+ separate datasets like /var, are mounted before anything else is started.
- The idea here is to make sure ZED is started before the imports (so that
- we can start consuming pool events before pools are imported).
-
- Then import any/all pools (except the root pool which is mounted in the
- initrd before the system even boots - basically before the S (single-user)
- mode).
-
- Then we mount all filesystems before we start any network service (such as
- NFSd, AFSd, Samba, iSCSI targets and what not). Even if the share* in ZFS
- isn't used, the filesystem must be mounted for the service to start properly.
+ Then, ZED, which depends on /var, can be started. It will consume and act
+ on events that occurred before it started. ZED may also play a role in
+ sharing filesystems in the future, so it is important to start before the
+ 'share' service.
- Then, at almost the very end, we share filesystems configured with the
- share* property in ZFS.
+ Finally, we share filesystems configured with the share\* property.