Centos 7 - How To Install NFS and Mount Remotely

Server Side Config

1.) First install nfs-utils

yum -y install nfs-utils

2.) Configure nfs share

Create a directory for your NFS share

mkdir /datastore

Create your NFS share in /etc/exports

echo "/datastore 10.220.101.0/24(rw,sync,no_root_squash)" >> /etc/exports
systemctl restart nfs

/etc/exports is where all NFS shares are defined

Allowed Client IP Range = 10.220.101.0/24

Read and Writing Allowed = rw

no_root_squash = makes it so the default of nobody is not used on the NFS share as a user (not secure in normal environments with user access but it makes sense for our situation)

sync = a good idea because otherwise the nfs server will reply to requests for unwritten/unstable data which can lead to corruption and data loss potentially.

Client Side

yum -y install nfs-utils

mount 10.10.2.20:/tmp/nfsmount /mnt/nfs/

IP of NFS Server = 10.10.2.20

NFS Share = /tmp/nfsmount

Local Mount Path = /mnt/nfs

Make it permanent with fstab

10.10.2.20:/tmp/nfsmount /mnt/nfs nfs defaults 0 0

Troubleshooting

Most issues are a result of a few things.

  1. You can't mount because nfs-utils was not installed on the client side.
  2. The IP range you specified is incorrect or invalid (if you are using NAT absolutely verify what the source IP from your client looks like to the server).
  3. Insecure ports issue if you are using NAT (you should set the "insecure" option
 rpc.mountd: refused mount request from somehostname.com for /some/path (/a/path/): illegal port 59201

If you get the above error you are probably using NAT somewhere between the client and server.  NAT mapping ends up resulting in high and so-called "insecure" ports to be used (I guess the fact that they are unprivileged and a non-root user could easly sniff or intercept on those ports). However if that's not a concern you modify your exports line like this:

/datastore 10.220.101.0/24(insecure,rw,sync,no_root_squash)


Tags:

centos, install, nfs, mount, remotely, utils, bcitcourse, yum, plugins, fastestmirror, kb, epel, _, metalink, extras, updates, updateinfo, primary_db, mb, eta, http, repo, virtualhosting, hk, repodata, dcc, ec, dec, ef, fb, bda, bd, db, primary, sqlite, bz, errno, unavailable, loading, speeds, cached, hostfile, ftp, cuhk, edu, jaist, ac, jp, resolving, dependencies, transaction, installed, processing, dependency, libtirpc, gssproxy, libnfsidmap, libevent, keyutils, libini_config, libverto, module, libref_array, ref_array_, ini_config_, libcollection, libbasicobjects, updated, update, libpath_utils, path_utils_, tevent, resolution, resolved, repository, installing, updating, summary, packages, upgrade, download, downloading, delta, rpms, disabled, usr, bin, applydeltarpm, rpm, os, succeeded, cleanup, verifying, configure, shares, defined, etc, exports, mkdir, datastore, echo, quot, rw, sync, no_root_squash, systemctl, restart,

Latest Articles

  • how to use ifplugd in Linux to execute a command or script when a NIC cable is unplugged or plugged in
  • dd how to backup and restore disk images including compression with gzip
  • mpv / mplayer with Radeon / AMD GPU Video Card Driver enable VDPAU GPU Accelerated Video Decoding
  • Wordpress Reset Blog User Password from MySQL Using Linux Bash and not PHPMyadmin
  • Ubuntu Linux Mint Debian xorg performance and tear-free tuning for AMD Radeon Based Cards
  • Centos 7 Stopped and Disabled Firewalld and ports still blocked
  • MariaDB / MySQL Reset Root Forgotten Password on Centos 7
  • Centos 7 How to install Mysql/Mariadb
  • PHP 7.2, Apache and Centos 7 How To Install
  • Ubuntu Debian Linux Mint r8169 r8168 Network Driver Problem and Solution
  • Linux 3D Performance benchmarks with glxgears 59-60fps solution
  • How To Install Asterisk 16 17 on Debian Ubuntu Linux
  • Linux Ubuntu Debian Centos How To Make a Bootable Windows 7, 8, 10, 2016, 2019 Server USB from ISO
  • How To Restore Windows MBR Bootsector from Linux using syslinux
  • Linux Ubuntu Cannot Print Large Images
  • Cannot Print PDF Solution and Howto Resize
  • Linux Console Login Screen TTY Change Message
  • Apache Cannot Start Listening Already on 0.0.0.0
  • MySQL Bash Query to pipe input directly without using heredoc trick
  • CentOS 6 and 7 / RHEL Persistent DHCP Solution