2/5/25, 3:27 PM NFS-Kernel Server : Linux File Sharing Configuration
NFS-Kernel Server : Linux File Sharing
Configuration
A detailed guide to configuring and managing NFS-Kernel Server, covering installation,
commands, troubleshooting, and best practices for Linux.
Understanding NFS-Kernel Server
Installation and Configuration
Prerequisites
Installing NFS-Kernel Server
Configuring NFS Exports
Applying Changes
Starting and Enabling NFS Service
Configuring the Firewall
Client-Side Configuration
Common Commands for NFS Management
Troubleshooting NFS
Best Practices
Understanding NFS-Kernel Server
The NFS (Network File System) Kernel Server is a critical component in Unix/Linux
environments that allows file sharing between systems on a network. Developed by Sun
Microsystems in the 1980s, NFS enables a client machine to access files on a remote server
as though they were local. This capability makes it an essential tool for managing resources
in both small and large-scale deployments.
Key features include:
File Sharing: Share directories and files across multiple systems.
Centralized Management: Manage files in a central location, reducing redundancy.
Cross-Platform Compatibility: Interoperate between different Unix-like systems.
User Mapping: Map remote users to local users for secure access control.
https://blog.geekinstitute.org/2024/11/nfs-kernel-server-linux-file-sharing.html 1/5
2/5/25, 3:27 PM NFS-Kernel Server : Linux File Sharing Configuration
Installation and Configuration
Prerequisites
Before starting, ensure:
A Linux server (e.g., Ubuntu, CentOS) for hosting NFS.
A client machine (Linux or Unix-based).
Administrative privileges on both systems.
Basic understanding of file permissions.
Installing NFS-Kernel Server
On Ubuntu/Debian:
sudo apt update
sudo apt install nfs-kernel-server -y
On CentOS/RHEL:
sudo yum update
sudo yum install nfs-utils -y
Configuring NFS Exports
https://blog.geekinstitute.org/2024/11/nfs-kernel-server-linux-file-sharing.html 2/5
2/5/25, 3:27 PM NFS-Kernel Server : Linux File Sharing Configuration
Edit the /etc/exports file to define shared directories and access permissions. Example
configuration:
/home/shared 192.168.1.0/24(rw,sync,no_subtree_check)
Explanation of options:
/home/shared : Directory to be shared.
192.168.1.0/24 : Restricts access to a specific subnet.
rw : Grants read-write access.
sync : Ensures data is written to disk before confirming.
no_subtree_check : Prevents subtree-related permission issues.
Applying Changes
sudo exportfs -a
Starting and Enabling NFS Service
sudo systemctl start nfs-kernel-server
sudo systemctl enable nfs-kernel-server
Configuring the Firewall
Allow NFS traffic through the firewall:
sudo ufw allow from 192.168.1.0/24 to any port nfs
Client-Side Configuration
Installing the NFS Client
https://blog.geekinstitute.org/2024/11/nfs-kernel-server-linux-file-sharing.html 3/5
2/5/25, 3:27 PM NFS-Kernel Server : Linux File Sharing Configuration
On Ubuntu/Debian:
sudo apt install nfs-common -y
On CentOS/RHEL:
sudo yum install nfs-utils -y
Mounting an NFS Share
sudo mount -t nfs 192.168.1.100:/home/shared /mnt
Automating Mounts with /etc/fstab
192.168.1.100:/home/shared /mnt nfs defaults 0 0
Common Commands for NFS Management
Listing Active Exports
sudo exportfs -v
Restarting the NFS Service
sudo systemctl restart nfs-kernel-server
Troubleshooting NFS
Permissions Issues
https://blog.geekinstitute.org/2024/11/nfs-kernel-server-linux-file-sharing.html 4/5
2/5/25, 3:27 PM NFS-Kernel Server : Linux File Sharing Configuration
sudo chmod 777 /home/shared
Firewall Blocks
sudo ufw allow from <client-ip> to any port nfs
Client Cannot Mount
sudo showmount -e 192.168.1.100
Best Practices
Use firewall rules and IP restrictions to enhance security.
Implement UID/GID mapping for proper user management.
Regularly monitor logs for suspicious activity.
https://blog.geekinstitute.org/2024/11/nfs-kernel-server-linux-file-sharing.html 5/5