Network File System (NFS) is a protocol that allows you to share files and directories between Linux systems over a network. It provides a centralized way to manage and access files. This guide will show you how to install and configure an NFS server and client on Ubuntu 22.04. Whether you are setting up NFS on a local network or on a Windows VPS UK, this tutorial will help you get started.
Step 1: Update Your System
Before installing NFS, ensure that your system is up to date. Run the following commands to update your package list and upgrade the installed packages:
sudo apt update && sudo apt upgrade -y
Keeping your system updated is essential for stability and security, especially when using VPS Windows Servers for hosting your NFS server.
Step 2: Install NFS Server
To set up an NFS server, you need to install the nfs-kernel-server
package. Run the following command on the server machine:
sudo apt install nfs-kernel-server -y
Once installed, start and enable the NFS service so that it starts automatically at boot:
sudo systemctl start nfs-kernel-server
sudo systemctl enable nfs-kernel-server
Step 3: Configure NFS Exports
The next step is to define which directories the NFS server will share. You do this by editing the /etc/exports
file. For example, to share the /srv/nfs
directory with a specific client or network, you can add the following line to the file:
sudo nano /etc/exports
/srv/nfs 192.168.1.0/24(rw,sync,no_subtree_check)
This configuration allows read/write access to the /srv/nfs
directory for all clients in the 192.168.1.0/24 subnet. You can replace the IP address range with the appropriate one for your network.
After modifying the file, export the shared directories:
sudo exportfs -a
You should also restart the NFS server to apply the changes:
sudo systemctl restart nfs-kernel-server
Step 4: Configure Firewall for NFS
If you are using a firewall on your server, you will need to allow NFS traffic. Use the following command to allow NFS through the firewall:
sudo ufw allow from 192.168.1.0/24 to any port nfs
Replace 192.168.1.0/24
with the appropriate subnet or IP address range of your clients.
Reload the firewall to apply the changes:
sudo ufw reload
Step 5: Install NFS Client
On the client machine(s), you need to install the nfs-common
package to enable NFS functionality:
sudo apt install nfs-common -y
Step 6: Mount NFS Share on Client
To mount the shared directory from the NFS server on the client machine, use the following command:
sudo mount 192.168.1.100:/srv/nfs /mnt
Replace 192.168.1.100
with the IP address of your NFS server, and /mnt
with the directory where you want to mount the NFS share on the client.
To make the mount permanent, add the following line to the /etc/fstab
file:
192.168.1.100:/srv/nfs /mnt nfs defaults 0 0
Step 7: Verify NFS Share
You can verify the NFS mount on the client by using the df -h
command to check if the shared directory is listed:
df -h
This command will display the mounted file systems, and you should see the NFS share in the output.