Setting Up NFS Shares on Linux

NFS (Network File System) has been the standard Unix/Linux network file sharing protocol since the 1980s — simpler and more Unix-native than Samba for Linux-to-Linux file sharing specifically.

# Server side
sudo apt install nfs-kernel-server

echo "/srv/shared 192.168.1.0/24(rw,sync,no_subtree_check)" | sudo tee -a /etc/exports
sudo exportfs -ra
sudo systemctl restart nfs-kernel-server
# Client side
sudo apt install nfs-common
sudo mount 192.168.1.10:/srv/shared /mnt/shared

# Persistent mount via /etc/fstab
echo "192.168.1.10:/srv/shared /mnt/shared nfs defaults 0 0" | sudo tee -a /etc/fstab

NFS vs Samba

NFS is generally simpler and slightly more performant for Linux-to-Linux sharing since it maps directly onto Unix file permissions and semantics — Samba (SMB/CIFS) is the better choice specifically when Windows clients need to access the same share, since Windows has no native NFS client without additional configuration.