[PATCH nfs-utils] systemd units: merge nfs-server.service and nfs-server.target

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

 



With systemd, a 'service' should run a single server while a 'target'
can be used to group services.
As nfs service is really a group of services a 'target' makes more sense.
However that means that we need commands like
   systemctl start nfs-server.target
rather than the more simple
   systemctl start nfs-server

As the target/service separate doesn't bring any gain except a minor aesthetic,
and does bring a practical inconvenience, this patch merges nfs-server.target
into nfs-server.service.

Reported-by: Steve Dickson <SteveD@xxxxxxxxxx>
Signed-off-by: NeilBrown <neilb@xxxxxxx>

diff --git a/systemd/README b/systemd/README
index f0fb68825499..00d3e415092e 100644
--- a/systemd/README
+++ b/systemd/README
@@ -10,9 +10,13 @@ rpc.rquotad (in the 'quota' package) or rpcbind.
 There are 4 units that can be 'enabled' or 'disabled' by systemctl, or
 by a suitable 'preset' setting:
 
- nfs-server.target
+ nfs-server.service
     If enabled, nfs service is started together with dependencies
     such as mountd, statd, rpc.idmapd
+    This is a "service" file rather than a "target" (which is the
+    normal grouping construct) so that
+        systemctl start nfs-server
+    can work (if no type is given, ".service" is assumed).
 
  nfs-client.target
     If enabled, daemons needs for an nfs client are enabled.
diff --git a/systemd/nfs-server.service b/systemd/nfs-server.service
index 9812866c66aa..6ba2fc0f346e 100644
--- a/systemd/nfs-server.service
+++ b/systemd/nfs-server.service
@@ -1,8 +1,10 @@
 [Unit]
-Description=NFS server
+Description=NFS server and services
 DefaultDependencies=no
 Requires= network.target proc-fs-nfsd.mount rpcbind.target
-PartOf=nfs-server.target
+Requires= nfs-mountd.service
+Wants=rpc-statd.service nfs-idmapd.service rpc-gssd.service rpc-svcgssd.service
+Wants=rpc-statd-notify.service
 
 After= network.target proc-fs-nfsd.mount rpcbind.target nfs-mountd.service
 After= nfs-idmapd.service rpc-statd.service
@@ -22,3 +24,6 @@ ExecStopPost=/usr/sbin/exportfs -au
 ExecStopPost=/usr/sbin/exportfs -f
 
 ExecReload=/usr/sbin/exportfs -r
+
+[Install]
+WantedBy=multi-user.target
diff --git a/systemd/nfs-server.target b/systemd/nfs-server.target
deleted file mode 100644
index a3e629f022a9..000000000000
--- a/systemd/nfs-server.target
+++ /dev/null
@@ -1,8 +0,0 @@
-[Unit]
-Description=NFS server services
-Requires=nfs-server.service nfs-mountd.service
-Wants=rpc-statd.service nfs-idmapd.service rpc-gssd.service rpc-svcgssd.service
-Wants=rpc-statd-notify.service
-
-[Install]
-WantedBy=multi-user.target

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux