====== Step-by-Step Guide to Setting Up NFS Server and Client====== NFS (Network File System) enables file and directory sharing across a network. Here's the guide to set it up. ===== Prerequisites ===== * **Server**: Ubuntu 22.04 LTS. * **Client**: Linux system (Ubuntu preferred). * **Permissions**: Root or `sudo` access. ===== Setting Up the NFS Server ===== ==== 1. Install NFS Kernel Server ==== Update and install: sudo apt update sudo apt install nfs-kernel-server ==== 2. Create and Configure the Export Directory ==== Create the directory: sudo mkdir -p /srv/nfs/share Set ownership and permissions: sudo chown nobody:nogroup /srv/nfs/share sudo chmod 777 /srv/nfs/share ==== 3. Edit NFS Exports ==== Add the following to `/etc/exports` (replace ``): /srv/nfs/share (rw,sync,no_subtree_check) Export the changes: sudo exportfs -a ==== 4. Start NFS Service ==== Enable and start the service: sudo systemctl enable nfs-kernel-server sudo systemctl start nfs-kernel-server ==== 5. Configure Firewall ==== Allow NFS traffic: sudo ufw allow from to any port nfs Enable UFW and check the status: sudo ufw enable sudo ufw status ===== Setting Up the NFS Client ===== The client in this case is the server where Kubernetes is installed and running. ==== 1. Install NFS Common Package ==== Update and install: sudo apt update sudo apt install nfs-common ==== 2. Create a Mount Point ==== Create the directory: sudo mkdir -p /mnt/nfs_clientshare ==== 3. Mount the NFS Share ==== Mount the shared directory (replace ``): sudo mount :/srv/nfs/share /mnt/nfs_clientshare ==== 4. Verify Mount ==== Check mounted filesystems: df -h | grep nfs_clientshare List files in the mounted directory: ls /mnt/nfs_clientshare Your NFS server and client setup is complete, enabling efficient file sharing over the network. Ensure regular updates and security checks for optimal performance.