aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Dickson <steved@redhat.com>2021-02-18 17:42:54 -0500
committerSteve Dickson <steved@redhat.com>2021-02-18 17:42:54 -0500
commitb5aa8378e1a100898d8e0dd628eb704c68667027 (patch)
treeffc444f7ed5dd3ee22c2b4fa1fde485dd4c7d990
parentbb0d6c1e78b736052173a9c827329f2bc3487046 (diff)
downloadnfs-utils-b5aa8378e1a100898d8e0dd628eb704c68667027.tar.gz
exportd: systemd unit files
Created two new systemd unit services based on nfs-mountd and nfs-service Signed-off-by: Steve Dickson <steved@redhat.com>
-rw-r--r--systemd/Makefile.am4
-rw-r--r--systemd/nfsv4-exportd.service12
-rw-r--r--systemd/nfsv4-server.service31
3 files changed, 46 insertions, 1 deletions
diff --git a/systemd/Makefile.am b/systemd/Makefile.am
index 75cdd9f5..5251f23b 100644
--- a/systemd/Makefile.am
+++ b/systemd/Makefile.am
@@ -17,7 +17,9 @@ unit_files = \
if CONFIG_NFSV4
unit_files += \
- nfs-idmapd.service
+ nfs-idmapd.service \
+ nfsv4-exportd.service \
+ nfsv4-server.service
endif
if CONFIG_NFSV41
diff --git a/systemd/nfsv4-exportd.service b/systemd/nfsv4-exportd.service
new file mode 100644
index 00000000..11d663ab
--- /dev/null
+++ b/systemd/nfsv4-exportd.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=NFSv4 Mount Daemon
+DefaultDependencies=no
+Requires=proc-fs-nfsd.mount
+Wants=network-online.target
+After=proc-fs-nfsd.mount
+After=network-online.target local-fs.target
+BindsTo=nfsv4-server.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/nfsv4.exportd
diff --git a/systemd/nfsv4-server.service b/systemd/nfsv4-server.service
new file mode 100644
index 00000000..6497568d
--- /dev/null
+++ b/systemd/nfsv4-server.service
@@ -0,0 +1,31 @@
+[Unit]
+Description=NFSv4 server and services
+DefaultDependencies=no
+Requires=network.target proc-fs-nfsd.mount
+Requires=nfsv4-exportd.service
+Wants=network-online.target
+Wants=nfs-idmapd.service
+Wants=nfsdcld.service
+
+After=network-online.target local-fs.target
+After=proc-fs-nfsd.mount nfsv4-exportd.service
+After=nfs-idmapd.service
+After=nfsdcld.service
+
+# GSS services dependencies and ordering
+Wants=auth-rpcgss-module.service
+After=rpc-gssd.service gssproxy.service rpc-svcgssd.service
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStartPre=-/usr/sbin/exportfs -r
+ExecStart=/usr/sbin/rpc.nfsd -N 3
+ExecStop=/usr/sbin/rpc.nfsd 0
+ExecStopPost=/usr/sbin/exportfs -au
+ExecStopPost=/usr/sbin/exportfs -f
+
+ExecReload=-/usr/sbin/exportfs -r
+
+[Install]
+WantedBy=multi-user.target