Ubuntu Linux: NFS Client Configuration To Mount NFS Share

NFS (Network File System) client allows you to access shared directory from Linux client. The computer sharing the directory is called the NFS server (it can be NAS server too) and the computers or devices connecting to that server are called clients. The clients need to use the mount command to access the shared directory.

Ubuntu NFS

You need to install nfs-command package as follows (open terminal and type the following command):
$ sudo apt-get update
$ sudo apt-get install nfs-common

Sample outputs:

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  libgssglue1 libnfsidmap2 librpcsecgss3 portmap
The following NEW packages will be installed:
  libgssglue1 libnfsidmap2 librpcsecgss3 nfs-common portmap
0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 333kB of archives.
After this operation, 1,126kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 http://archive.ubuntu.com/ubuntu/ lucid/main libgssglue1 0.1-4 [22.4kB]
Get:2 http://archive.ubuntu.com/ubuntu/ lucid/main libnfsidmap2 0.23-2 [29.1kB]
Get:3 http://archive.ubuntu.com/ubuntu/ lucid/main librpcsecgss3 0.19-2 [33.1kB]
Get:4 http://archive.ubuntu.com/ubuntu/ lucid/main portmap 6.0.0-1ubuntu2 [37.2kB]
Get:5 http://archive.ubuntu.com/ubuntu/ lucid/main nfs-common 1:1.2.0-4ubuntu4 [212kB]
Fetched 333kB in 3s (95.3kB/s)
Preconfiguring packages ...
Selecting previously deselected package libgssglue1.
(Reading database ... 161647 files and directories currently installed.)
Unpacking libgssglue1 (from .../libgssglue1_0.1-4_i386.deb) ...
Selecting previously deselected package libnfsidmap2.
Unpacking libnfsidmap2 (from .../libnfsidmap2_0.23-2_i386.deb) ...
Selecting previously deselected package librpcsecgss3.
Unpacking librpcsecgss3 (from .../librpcsecgss3_0.19-2_i386.deb) ...
Selecting previously deselected package portmap.
Unpacking portmap (from .../portmap_6.0.0-1ubuntu2_i386.deb) ...
Selecting previously deselected package nfs-common.
Unpacking nfs-common (from .../nfs-common_1%3a1.2.0-4ubuntu4_i386.deb) ...
Processing triggers for man-db ...
Processing triggers for ureadahead ...
Setting up libgssglue1 (0.1-4) ...

Setting up libnfsidmap2 (0.23-2) ...

Setting up librpcsecgss3 (0.19-2) ...

Setting up portmap (6.0.0-1ubuntu2) ...
portmap start/running, process 4193

Setting up nfs-common (1:1.2.0-4ubuntu4) ...

Creating config file /etc/idmapd.conf with new version

Creating config file /etc/default/nfs-common with new version
Adding system user `statd' (UID 116) ...
Adding new user `statd' (UID 116) with group `nogroup' ...
Not creating home directory `/var/lib/nfs'.
statd start/running, process 4416
gssd stop/pre-start, process 4441
idmapd stop/pre-start, process 4469

Processing triggers for libc-bin ...
ldconfig deferred processing now taking place

Task: See The List Of All Shared Directories

Type the following command:
$ showmount -e server-Ip-address
$ showmount -e 192.168.1.1

Sample outputs from my 192.168.1.1 NFS server:

Export list for 192.168.1.1:
/viveks
/Web
/Usb
/Recordings
/Public
/Network Recycle Bin 1
/Multimedia
/Download

Task: Mount Shared Directory

Now mount /viveks directory as follows>:
$ sudo mkdir /nfs
$ sudo mount -o soft,intr,rsize=8192,wsize=8192 192.168.1.1:/viveks /nfs
$ df -h

Sample outputs:

/dev/sda5              477G    25G   428G   6% /
none                   4.2G   398k   4.2G   1% /dev
none                   4.2G   377k   4.2G   1% /dev/shm
none                   4.2G   230k   4.2G   1% /var/run
none                   4.2G      0   4.2G   0% /var/lock
none                   4.2G      0   4.2G   0% /lib/init/rw
192.168.1.1:/viveks    491G   208M   491G   1% /nfs

How do I Access My Files Using NFS?

Just go to mount point i.e. /nfs directory with the cd command:
cd /nfs
ls
gedit file.c

How Do I Mount NFS Automatically After Reboot?

Edit /etc/fstab, enter:
$ sudo vi /etc/fstab
OR use gui text editor such as gedit:
$ sudo gedit /etc/fstab
Append the following line:

192.168.1.1:/viveks  /nfs  nfs   soft,intr,rsize=8192,wsize=8192

Save and close the file.

How Do I Remove Mounted NFS Directory (unmount NFS)?

Type the following command:
$ cd
$ sudo umount /nfs
$ df -H

🐧 If you liked this page, please support my work on Patreon or with a donation.
🐧 Get the latest tutorials on SysAdmin, Linux/Unix, Open Source & DevOps topics via:
CategoryList of Unix and Linux commands
File Managementcat
FirewallAlpine Awall CentOS 8 OpenSUSE RHEL 8 Ubuntu 16.04 Ubuntu 18.04 Ubuntu 20.04
Network Utilitiesdig host ip nmap
OpenVPNCentOS 7 CentOS 8 Debian 10 Debian 8/9 Ubuntu 18.04 Ubuntu 20.04
Package Managerapk apt
Processes Managementbg chroot cron disown fg jobs killall kill pidof pstree pwdx time
Searchinggrep whereis which
User Informationgroups id lastcomm last lid/libuser-lid logname members users whoami who w
WireGuard VPNAlpine CentOS 8 Debian 10 Firewall Ubuntu 20.04
36 comments… add one
  • Eoin Aug 15, 2015 @ 5:59

    Thanks for this helpful tutorial! I’ve gone through about ten tutorials and this is the one that finally solved it for me. I didn’t realise that I had the NFS share name incorrect, but your step above to list that share fixed that for me.

    Fantastic article, still helping people 9 years after you wrote it!

  • jane Aug 18, 2012 @ 5:01

    how can one browse the contents of an NFS share without mounting it? [ubuntu nfs client]

    • Matt Jan 9, 2013 @ 13:47

      Try this
      showmount -e

      This displays all of the nfs shares on that server/computer

      Matt.

  • randomguy May 6, 2012 @ 10:28

    bigj, your sharemount script works great! I’m running lubuntu w/wifi and NFS shares. I had some .bash login/logout scripts on 11.10, but it wouldn’t allow my pc to sleep/suspend.

  • kk Nov 13, 2011 @ 11:35

    Hi ,
    I Created a NFS share in windows 2008 and i tried to mount it as in tutorial, everything went fine but when i access the directory it says “bash: cd: /nfs: Permission denied”
    I am able to see that mount using df -h.
    Please help..
    Thanks in advance

  • Mohsen Miran Sep 7, 2011 @ 19:08

    Thank You Very Much :))))

  • burak Jul 30, 2011 @ 15:21

    Terminal produced this:

    tvin@tvin-Macmini ~ $ showmount -e 192.168.2.149
    Export list for 192.168.2.149:
    /DataVolume/tvin *
    /DataVolume/Public *
    /DataVolume/Download *
    /DataVolume/acarburak *
    tvin@tvin-Macmini ~ $ sudo mkdir /nfs
    mkdir: cannot create directory `/nfs’: File exists
    tvin@tvin-Macmini ~ $ sudo mount -o soft,intr,rsize=8192,wsize=192.168.2.149:/DataVolume/public /nfs
    mount: can’t find /nfs in /etc/fstab or /etc/mtab
    tvin@tvin-Macmini ~ $ df -h

    Can anyone help?

    • TryMe Jul 30, 2011 @ 18:58

      /nfs seems like a file. Try it as follows:

      sudo mkdir /nfs2
      sudo mount -o soft,intr,rsize=8192,wsize=192.168.2.149:/DataVolume/Public /nfs2
      
      • burak Jul 30, 2011 @ 20:22

        Thank you, but Terminal doesn’t accept my passwd anymore, all of a sudden (I guess).

        • TryMe Jul 30, 2011 @ 20:29

          sudo will prompt for password once in every 5 mintues. Run the df command to verify that nfs is mounted at /nfs2

          • burak Jul 30, 2011 @ 20:35

            No, it’s not.

            • burak Jul 30, 2011 @ 20:36

              tvin@tvin-Macmini ~ $ df
              Filesystem 1K-blocks Used Available Use% Mounted on
              /dev/sda3 18263168 4084516 13250920 24% /
              none 484552 700 483852 1% /dev
              none 495360 248 495112 1% /dev/shm
              none 495360 372 494988 1% /var/run
              none 495360 0 495360 0% /var/lock
              /dev/sdb3 692358132 614644 691743488 1% /media/MEDYA
              /dev/sdb2 39062500 26080056 12982444 67% /media/OS X
              /dev/sda2 57617188 26519600 31097588 47% /media/NOSI
              tvin@tvin-Macmini ~ $

  • Ahmed May 7, 2011 @ 22:40

    This is by far the best HowTo I ever seen for mounting NFS shares on ubuntu.
    Thanks dude 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

Use HTML <pre>...</pre>, <code>...</code> and <kbd>...</kbd> for code samples.