From 85872f0ac2743400f657a4ede301883a15e48be5 Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Wed, 8 Jul 2015 16:52:45 +0800 Subject: nfs-utils: fix to start nfs-server correctly in systemd Add /etc/modules-load.d/nfsd.conf so that the system loads nfsd at start-up. Add proc-fs-nfsd.mount systemd unit file because it's needed for nfs server to start correctly. After this change, in a systemd based image, we can use `systemctl start nfs-server' to start the nfs server and things would work correctly. Signed-off-by: Chen Qi Signed-off-by: Richard Purdie (cherry picked from commit 3d4380bb36eb108dc75fee7215b615f7800b0990) Signed-off-by: Andreas Oberritter (dropped modules-load.d/nfsd.conf) --- meta/recipes-connectivity/nfs-utils/nfs-utils/proc-fs-nfsd.mount | 8 ++++++++ meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.1.bb | 8 ++++++++ 2 files changed, 16 insertions(+) create mode 100644 meta/recipes-connectivity/nfs-utils/nfs-utils/proc-fs-nfsd.mount diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils/proc-fs-nfsd.mount b/meta/recipes-connectivity/nfs-utils/nfs-utils/proc-fs-nfsd.mount new file mode 100644 index 0000000000..630801b375 --- /dev/null +++ b/meta/recipes-connectivity/nfs-utils/nfs-utils/proc-fs-nfsd.mount @@ -0,0 +1,8 @@ +[Unit] +Description=NFSD configuration filesystem +After=systemd-modules-load.service + +[Mount] +What=nfsd +Where=/proc/fs/nfsd +Type=nfsd diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.1.bb b/meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.1.bb index f6f05531d7..fccee82cdc 100644 --- a/meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.1.bb +++ b/meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.1.bb @@ -29,6 +29,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/nfs-utils/${PV}/nfs-utils-${PV}.tar.x file://nfs-server.service \ file://nfs-mountd.service \ file://nfs-statd.service \ + file://proc-fs-nfsd.mount \ file://nfs-utils-Do-not-pass-CFLAGS-to-gcc-while-building.patch \ file://nfs-utils-debianize-start-statd.patch \ " @@ -89,6 +90,8 @@ RBREAKS_${PN}-mount = "${PN}-client (< 1.3.0-r1)" FILES_${PN}-stats = "${sbindir}/mountstats ${sbindir}/nfsiostat" RDEPENDS_${PN}-stats = "python" +FILES_${PN} += "${systemd_unitdir}" + # Make clean needed because the package comes with # precompiled 64-bit objects that break the build do_compile_prepend() { @@ -110,6 +113,11 @@ do_install_append () { sed -i -e 's,@SBINDIR@,${sbindir},g' \ -e 's,@SYSCONFDIR@,${sysconfdir},g' \ ${D}${systemd_unitdir}/system/*.service + if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then + install -m 0644 ${WORKDIR}/proc-fs-nfsd.mount ${D}${systemd_unitdir}/system/ + install -d ${D}${systemd_unitdir}/system/sysinit.target.wants/ + ln -sf ../proc-fs-nfsd.mount ${D}${systemd_unitdir}/system/sysinit.target.wants/proc-fs-nfsd.mount + fi # kernel code as of 3.8 hard-codes this path as a default install -d ${D}/var/lib/nfs/v4recovery -- cgit 1.2.3-korg