ElementaryOS 0.4: Install nfs-kernel-server for NFS server

This article will describe installing nfs-kernel-server for NFS server.

1 Install nfs-kernel-server

Install nfs-kernel-server package.

$ sudo apt install -y nfs-kernel-server

2 Export directory to NFS

/etc/exportfs is written exported directories to NFS.

$ cat /etc/exports
<path> <ipaddr>(<option>)

Update exported directories to NFS.

$ sudo exportfs -ra

2.1 Exported directory for nfsroot

  • no_root_squash will use UID and GID of client for file access by client.
  • If UID and GID is shared by LDAP, use no_root_squash.
  • If using nfsroot for booting root filesystem, use no_root_squash.
  • subtree_check checks if file access by client is inside exported directory. no_subtree_check disable this check for performance.
$ cat /etc/exports
$ sudo mkdir /var/lib/nfsroot
$ sudo exportfs -ra

2.2 Exported directory for file sharing

  • root_squash uses nobody:nogroup for file access by client.
$ cat /etc/exports
/var/lib/nfsshare *(rw,sync,root_squash,subtree_check)
$ sudo mkdir /var/lib/nfsshare
$ sudo chmod 777 /var/lib/nfsshare
$ sudo exportfs -ra

3 Mount NFS

Mount NFS with mount.nfs.

$ sudo apt install -y nfs-common
$ sudo mount -t nfs /mnt