diff options
-rw-r--r-- | systemd/README | 11 | ||||
-rw-r--r-- | systemd/nfs-blkmap.service | 2 | ||||
-rw-r--r-- | systemd/nfs-idmapd.service | 2 | ||||
-rw-r--r-- | systemd/nfs-mountd.service | 1 | ||||
-rw-r--r-- | systemd/nfs-utils.service | 17 | ||||
-rw-r--r-- | systemd/rpc-gssd.service | 2 | ||||
-rw-r--r-- | systemd/rpc-statd-notify.service | 2 | ||||
-rw-r--r-- | systemd/rpc-statd.service | 2 | ||||
-rw-r--r-- | systemd/rpc-svcgssd.service | 1 |
9 files changed, 40 insertions, 0 deletions
diff --git a/systemd/README b/systemd/README index f0fb688..58a4aca 100644 --- a/systemd/README +++ b/systemd/README @@ -29,6 +29,17 @@ by a suitable 'preset' setting: If enabled, then blkmapd will be run when nfs-client.target is started. +Another special unit is "nfs-utils.service". This doesn't really do +anything, but exists so that other units may declare themselves as +"PartOf" nfs-utils.service. +The effect of this is that + systemctl restart nfs-utils +will restart all nfs-utils daemons as maybe be required during +software update. It isn't possible to make + systemctl try-restart nfs-server nfs-client.target +do this as some daemon are included in both, and rpc.statd would +not be restarted if nfs-server were not active (as nfs-client doesn't +Want it - it is started by mount.nfs running start-statd). It is possible that we should have an nfs-statd.target which can selectively enable statd being stared by -server and sm-notify diff --git a/systemd/nfs-blkmap.service b/systemd/nfs-blkmap.service index 7319a88..80033f2 100644 --- a/systemd/nfs-blkmap.service +++ b/systemd/nfs-blkmap.service @@ -6,6 +6,8 @@ Requires=var-lib-nfs-rpc_pipefs.mount Requisite=nfs-blkmap.target After=nfs-blkmap.target +PartOf=nfs-utils.service + [Service] Type=forking ExecStart=/usr/sbin/blkmapd diff --git a/systemd/nfs-idmapd.service b/systemd/nfs-idmapd.service index 6c2e153..7d0dd84 100644 --- a/systemd/nfs-idmapd.service +++ b/systemd/nfs-idmapd.service @@ -1,6 +1,8 @@ [Unit] Description=NFSv4 ID-name mapping service +PartOf=nfs-utils.service + [Service] EnvironmentFile=-/run/sysconfig/nfs-utils ExecStartPre=-/usr/lib/systemd/scritps/nfs-utils_env.sh diff --git a/systemd/nfs-mountd.service b/systemd/nfs-mountd.service index 92e05ca..90746a8 100644 --- a/systemd/nfs-mountd.service +++ b/systemd/nfs-mountd.service @@ -4,6 +4,7 @@ Requires=proc-fs-nfsd.mount After=proc-fs-nfsd.mount After=network.target PartOf=nfs-server.service +PartOf=nfs-utils.service [Service] EnvironmentFile=-/run/sysconfig/nfs-utils diff --git a/systemd/nfs-utils.service b/systemd/nfs-utils.service new file mode 100644 index 0000000..54b6314 --- /dev/null +++ b/systemd/nfs-utils.service @@ -0,0 +1,17 @@ +[Unit] +Description=NFS server and client services +# This service should never be stopped, only restarted. +# When it is re-started, all other services which declare +# themselves to be "PartOf" this service will also be +# restarted. Thus +# systemctl restart nfs-utils +# will restart all daemons which are part of nfs-utils +# and which are running. This is useful after a software +# update. + +# This is a "service" rather than "target" so that we +# don't need to say "systemctl restart nfs-utils.target". +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/bin/true diff --git a/systemd/rpc-gssd.service b/systemd/rpc-gssd.service index f0fef00..c25f5c0 100644 --- a/systemd/rpc-gssd.service +++ b/systemd/rpc-gssd.service @@ -6,6 +6,8 @@ After=var-lib-nfs-rpc_pipefs.mount Requisite=nfs-secure.target After=nfs-secure.target +PartOf=nfs-utils.service + [Service] EnvironmentFile=-/run/sysconfig/nfs-utils ExecStartPre=-/usr/lib/systemd/scritps/nfs-utils_env.sh diff --git a/systemd/rpc-statd-notify.service b/systemd/rpc-statd-notify.service index 9d972fc..532354d 100644 --- a/systemd/rpc-statd-notify.service +++ b/systemd/rpc-statd-notify.service @@ -8,6 +8,8 @@ After=network-online.target nss-lookup.target # tell clients that it has restarted. After=nfs-server.service +PartOf=nfs-utils.service + [Service] EnvironmentFile=-/run/sysconfig/nfs-utils ExecStartPre=/usr/lib/systemd/scritps/nfs-utils_env.sh diff --git a/systemd/rpc-statd.service b/systemd/rpc-statd.service index 04962e5..88d2527 100644 --- a/systemd/rpc-statd.service +++ b/systemd/rpc-statd.service @@ -4,6 +4,8 @@ DefaultDependencies=no Requires=nss-lookup.target rpcbind.target After=network.target nss-lookup.target rpcbind.target +PartOf=nfs-utils.service + [Service] EnvironmentFile=-/run/sysconfig/nfs-utils ExecStartPre=-/usr/lib/systemd/scritps/nfs-utils_env.sh diff --git a/systemd/rpc-svcgssd.service b/systemd/rpc-svcgssd.service index f024d40..fa169e7 100644 --- a/systemd/rpc-svcgssd.service +++ b/systemd/rpc-svcgssd.service @@ -3,6 +3,7 @@ Description=RPC security service for NFS server Requires=var-lib-nfs-rpc_pipefs.mount After=var-lib-nfs-rpc_pipefs.mount PartOf=nfs-server.service +PartOf=nfs-utils.service Requisite=nfs-secure.target After=nfs-secure.target |