Currently, rpc.mountd's -s/--state-directory-path option doesn't really do anything (rpc.mountd tests it via chdir() but that's all). These patches implement the -s/--state-directory-path option so that rpc.mountd's state files (the etab and rmtab) can be placed in a location other than /var/lib/nfs... for example, /run/nfs. To use /run/nfs, it's necessary to create a systemd-tmpfiles config file, e.g. # cat /usr/lib/tmpfiles.d/nfs.conf #Type Path Mode UID GID Age Argument d /run/nfs 0755 root root - - f /run/nfs/etab 0644 root root - - f /run/nfs/rmtab 0644 root root - - and if selinux is in enforcing mode, the correct context would need to be set on the directory (On Fedora, semanage barks at me if I use /run/nfs... that's why I'm using /var/run/nfs here instead): # semanage fcontext -a -t var_lib_nfs_t "/var/run/nfs(/.*)?" Changes since v1: - Replaced all newly-added occurrences of the term 'xtab' so it wouldn't be confused with the recently removed 'xtab' file. I did not replace any existing uses of the term 'xtab' though. - Removed the reference to statd on the mountd man page. Scott Mayhew (2): libnsm.a: refactor nsm_setup_pathnames() and nsm_make_pathname() mountd/exportfs: implement the -s/--state-directory-path option support/export/xtab.c | 82 +++++++++++++++++++++++++++++++++- support/include/misc.h | 3 ++ support/include/nfslib.h | 17 +++++++ support/misc/Makefile.am | 2 +- support/misc/file.c | 110 ++++++++++++++++++++++++++++++++++++++++++++++ support/nfs/cacheio.c | 4 +- support/nfs/rmtab.c | 4 +- support/nsm/file.c | 45 ++----------------- utils/exportfs/exportfs.c | 13 ++++++ utils/mountd/auth.c | 8 ++-- utils/mountd/mountd.c | 31 ++++++++----- utils/mountd/mountd.man | 2 +- utils/mountd/rmtab.c | 26 ++++++----- utils/statd/Makefile.am | 1 + 14 files changed, 274 insertions(+), 74 deletions(-) create mode 100644 support/misc/file.c -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html