OPS335 NFS Lab
NFS and Automount
In this lab you'll set up a Fedora 16 host as an NFS (Network File System) server. Then you'll set up a Fedora 16 guest VM (Virtual Machine) that will import its /home directory from this host.
Part A: Setting up the Guest VM
- Ensure the VM guest network is functioning properly. You can use the "host cbc.ca" command to see if DNS queries are being answered.
- Ensure you have full connectivity to the internet.
- Be sure to set the firewall on both your VM and host according to prior labs. Use the command iptables-save to verify.
- Once your VM guest network is working use the ifconfig command and record the IP adddress of your VM guest. The address should be something like 192.168.122.yyy.
- Install the NFS software on both vm03 and your host using the command "yum install nfs-utils".
- Add the following line to the bottom of the /etc/fstab file on vm03
192.168.x.1:/home /home nfs defaults 0 0
- Edit the file /etc/idmapd.conf and uncomment and change the following lines:
Verbosity = 3 Domain = <learn-id>.org
- Restart the nfs-idmap daemon.
systemctl restart nfs-idmap.service
- Check /var/log/messages for output when troubleshooting.
- Logout of vm03 and shut it down.
Part B: Setting up the NFS Server on the Host
On your Fedora host machine perform the following tasks:
- edit /etc/exports so that it contains ONLY the following line (where 192.168.x.4 is the IP address of your guest VM):
/home 192.168.x.4(rw,root_squash,insecure)
- Edit the file /etc/idmapd.conf and uncomment and change the following lines:
Verbosity = 3 Domain = <learn-id>.org
- Restart the nfs-idmap daemon.
systemctl restart nfs-idmap.service
- Start your nfs server with the command:
systemctl start nfs-server.service
NOTE: You'll have to adjust your firewall on the host to get NFS to work. Run netstat to determine the ports needed.
Testing NFS mounts on your VM
- Start up vm03 and login using your learnid.
- On your host PC run and record the output of the following commands:
exportfs
showmount -e
- Now on vm03
mount | grep /home
- On vm03, create an empty file using the touch command.
touch empty_file_created_on_vm03
- Now shutdown vm03.
- Now on your host PC, run the following command:
ls -l
- Shutdown the nfs server with the command
systemctl stop nfs-server.service
Part C: Setting up Automount on the VM
On vm03 as root performt he following tasks:
- Comment or remove the line from /etc/fstab that you entered earlier.
- Install automount
yum install autofs
- Move the existing file /etc/auto.master:
mv /etc/auto.master /etc/auto.master.orig
- This is a great way to keep a back up in case you need to restore the file in the future. Now create another:
vi /etc/auto.master
- Add only the following line:
/home /etc/auto.home --timeout=60
- Edit the file /etc/auto.home so that it contains ONLY the following line:
* -fstype=nfs,rw,nosuid,soft 192.168.122.1:/home/&
- Start autofs with the command
service autofs start
- Log out of vm01 and back on the host start the nfs server.
- Log into vm01 as joker.
- Create another empty file with the name another_empty_file.
- Run and record the output of the "df -Th" command.
- Back on the host machine as joker, run and record the output of the "ls -l" command.
Completing the Lab
Answer the following questions
- What is your full name and 9 digit Seneca student ID?
- Show the exact output recorded in Part B (df -Th, exportfs, showmount -e and ls -l)
- Show the exact output recorded in Part C. (df -Th, ls -l)
- Explain in your own words the meaning of the no_root_squash option for an NFS mount.
- Explain the meaning of the defaults option to the mount command.
- What is the function of the 'exportfs' command?
- What is the purpose of the 'showmount' command?
- What is the meaning of the "timeout=60" phrase in Part C?
- What is the meaning of the asterisk (*) in Part C?
- What is the meaning of the ampersand (&) in Part C?
- What is the role of the /etc/mtab file on the host?
- What port does nfs use?