summaryrefslogtreecommitdiffstats
path: root/debian/patches/fix-nfs-service-name-to-nfs-kernel-server.patch
blob: ad0a9b9243b16808b29e8c806e8502a3f98ff721 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
From: Rafael David Tinoco <rafaeldtinoco@gmail.com>
Subject: fix nfs related service names

Upstream defines nfs related service names based on the Linux
distribution. This patch fixes the names for Debian and derivatives.

Update by Andreas Hasenack <andreas@canonical.com> (LP: #1961840):
Use nfsconf(8) if it's available, instead of parsing the old config
files in /etc/default/nfs-*

Bug-Debian: https://bugs.debian.org/929931
Bug-Ubuntu: https://bugs.launchpad.net/bugs/722201
Last-Update: 2022-09-09
diff --git a/ctdb/config/events/legacy/06.nfs.script b/ctdb/config/events/legacy/06.nfs.script
index b937d433254..943b5005bd9 100755
--- a/ctdb/config/events/legacy/06.nfs.script
+++ b/ctdb/config/events/legacy/06.nfs.script
@@ -6,7 +6,7 @@
 
 . "${CTDB_BASE}/functions"
 
-service_name="nfs"
+service_name="nfs-kernel-server"
 
 load_script_options "service" "60.nfs"
 
diff --git a/ctdb/config/events/legacy/60.nfs.script b/ctdb/config/events/legacy/60.nfs.script
index 8e496f73cc5..f47b91bff2d 100755
--- a/ctdb/config/events/legacy/60.nfs.script
+++ b/ctdb/config/events/legacy/60.nfs.script
@@ -6,9 +6,11 @@
 
 . "${CTDB_BASE}/functions"
 
-service_name="nfs"
+service_name="nfs-kernel-server"
 
-load_system_config "nfs"
+if ! type nfsconf > /dev/null 2>&1; then
+    load_system_config "nfs-kernel-server"
+fi
 
 load_script_options
 
diff --git a/ctdb/config/nfs-linux-kernel-callout b/ctdb/config/nfs-linux-kernel-callout
index f2f3e3824d0..4e3b1e21c04 100755
--- a/ctdb/config/nfs-linux-kernel-callout
+++ b/ctdb/config/nfs-linux-kernel-callout
@@ -14,7 +14,7 @@ nfs_exports_file="${CTDB_NFS_EXPORTS_FILE:-/var/lib/nfs/etab}"
 
 # As above, edit the default value below.  CTDB_NFS_DISTRO_STYLE is a
 # test variable only.
-nfs_distro_style="${CTDB_NFS_DISTRO_STYLE:-systemd-redhat}"
+nfs_distro_style="${CTDB_NFS_DISTRO_STYLE:-systemd-debian}"
 
 # As above, edit the default value below.  CTDB_SYS_ETCDIR is a
 # test variable only.
@@ -42,7 +42,22 @@ systemd-*)
 		: # Defaults only
 		;;
 	*-debian)
-		nfs_rquotad_service="quotarpc"
+		# XXX
+		# Undefine nfs_rquotad_services because the quotarpc service won't
+		# start unless there are specific "quota" mount options in /etc/fstab.
+		# In this way, we let ctdb start it up manually once the
+		# /etc/ctdb/nfs-checks.d/50.rquotad.check detects rpc.rquotad isn't
+		# running.
+		# Users who really don't want rpc.rquotad running should then move
+		# the 50.rquotad.check script away.
+		nfs_rquotad_service=""
+		nfs_service="nfs-kernel-server"
+		if type nfsconf >/dev/null 2>&1; then
+			nfs_config=""
+		else
+			nfs_config="/etc/default/nfs-kernel-server"
+		fi
+		nfs_rquotad_config="/etc/default/quota"
 		;;
 	*)
 		echo "Internal error"
diff --git a/ctdb/config/statd-callout b/ctdb/config/statd-callout
index 38c155e4793..c138e71c7b1 100755
--- a/ctdb/config/statd-callout
+++ b/ctdb/config/statd-callout
@@ -29,7 +29,9 @@ die ()
 }
 
 # Try different variables to find config file for NFS_HOSTNAME
-load_system_config "nfs" "nfs-common"
+if ! type nfsconf > /dev/null 2>&1; then
+    load_system_config "nfs-common" "nfs-kernel-server"
+fi
 
 # If NFS_HOSTNAME not set then try to pull it out of /etc/nfs.conf
 if [ -z "$NFS_HOSTNAME" ]; then