Bug#890099: nfs-server: fails to start if export path has intermediate symlinks
Package: nfs-kernel-server
Version: 1:1.3.4-2.1+b1
Severity: normal
I have recently changed my NFS setup so that one of the intermediate paths for the
exported filesystem is a symlink. With this setup, trying to start the system with
systemctl start nfs-server
fails, with `systemctl status nfs-server` reporting:
● nfs-server.service - NFS server and services
Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sat 2018-02-10 19:06:15 CET; 14h ago
Process: 27521 ExecStopPost=/usr/sbin/exportfs -f (code=exited, status=0/SUCCESS)
Process: 27520 ExecStopPost=/usr/sbin/exportfs -au (code=exited, status=0/SUCCESS)
Process: 27519 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=1/FAILURE)
Feb 10 19:06:15 labrador systemd[1]: Starting NFS server and services...
Feb 10 19:06:15 labrador exportfs[27519]: exportfs: Failed to stat /<path>/<symlink>/<target>: No such file or directory
Feb 10 19:06:15 labrador exportfs[27519]: exportfs: Failed to stat /<path>/<symlink>/<target>: No such file or directory
Feb 10 19:06:15 labrador systemd[1]: nfs-server.service: Control process exited, code=exited status=1
Feb 10 19:06:15 labrador systemd[1]: nfs-server.service: Failed with result 'exit-code'.
Feb 10 19:06:15 labrador systemd[1]: Stopped NFS server and services.
journalctl -u nfs-server-.service -b has exactly those lines too.
Running all the appropriate daemons manually, including the sequence exportfs -f, exportfs -au, exportfs -r works correctly,
with the final export being /<path>/<actual directory pointed to by symlink>/<target> as expected.
-- Package-specific info:
-- rpcinfo --
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 3 tcp 2049
100003 3 udp 2049 nfs
100227 3 udp 2049
100021 1 udp 49410 nlockmgr
100021 3 udp 49410 nlockmgr
100021 4 udp 49410 nlockmgr
100021 1 tcp 38281 nlockmgr
100021 3 tcp 38281 nlockmgr
100021 4 tcp 38281 nlockmgr
100005 1 udp 44790 mountd
100005 1 tcp 36505 mountd
100005 2 udp 58345 mountd
100005 2 tcp 40191 mountd
100005 3 udp 50245 mountd
100005 3 tcp 39943 mountd
-- /etc/default/nfs-kernel-server --
RPCNFSDCOUNT=8
RPCNFSDPRIORITY=0
RPCMOUNTDOPTS="--manage-gids"
NEED_SVCGSSD=""
RPCSVCGSSDOPTS=""
-- /etc/exports --
/<path>/<symlink>/<target> <someip>(rw,sync,no_root_squash,no_subtree_check) <someotherip>(rw,sync,no_root_squash,no_subtree_check) </16 mask>(ro,sync,root_squash,no_subtree_check)
-- /proc/fs/nfs/exports --
# Version 1.1
# Path Client(Flags) # IPs
-- System Information:
Debian Release: buster/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.14.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages nfs-kernel-server depends on:
ii init-system-helpers 1.51
ii keyutils 1.5.9-9.2
ii libblkid1 2.30.2-0.1
ii libc6 2.26-2
ii libcap2 1:2.25-1.2
ii libsqlite3-0 3.21.0-1
ii libtirpc1 0.2.5-1.2
ii libwrap0 7.6.q-27
ii lsb-base 9.20170808
ii netbase 5.4
ii nfs-common 1:1.3.4-2.1+b1
ii ucf 3.0036
nfs-kernel-server recommends no packages.
nfs-kernel-server suggests no packages.
-- no debconf information
Reply to: