OPS335 NFS Lab

From CDOT Wiki
Revision as of 15:43, 10 March 2012 by Paul.W (talk | contribs) (NFS and Automount)
Jump to: navigation, search

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.

Important.png
Prerequisites

Before you begin make sure your Fedora 16 host machine software is up to date (yum update).
After you build your VM, ensure its updated as well (yum update).

Ensure both host and VM have firewalls set up according to prior labs.

Part A: Setting up the Guest VM

  1. Login to the host as joker and use virt-manager to set up one guest VM. Name this machine vm01 and ensure it is updated to current software levels (yum update). Be sure to add user joker to your VM. Also check that the firewall is set up according to prior labs VM.
  2. Ensure the VM guest network is functioning properly. You can use the "host cbc.ca" command to see if DNS queries are being answered.
  3. Start firefox on vm01 and ensure you can surf the web with it.
  4. Be sure to set the firewall on both your VM and host according to prior labs. Use the command iptables-save to verify.
  5. 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.
  6. At this point you should be able to shut down vm01 and start it again and your network should be working correctly. Test it to be sure it works.
  7. Install the NFS software on both vm01 and your host using the command "yum install nfs-utils".
  8. Add the following line to the bottom of the /etc/fstab file on vm01
  	192.168.122.1:/home  	/home	nfs	defaults	0	0
  • Logout of vm01 and shut it down.

Part B: Setting up the NFS Server on the Host

  • On your Fedora host machine edit /etc/exports so that it contains ONLY the following line (where 192.168.122.yyy is the IP address of your guest VM):
 /home 192.168.122.yyy(rw,root_squash)
  1. Start your nfs server with the command 'service nfs start'. NOTE: You'll have to adjust your firewall on the host to get NFS to work, so do this before you go on to the next step.
  2. Start up vm01 and login as joker and run and record the output of the 'df -Th' command.
  3. Back on your host PC run and record the output of the 'exportfs' and 'showmount -e' commands.
  4. As joker on vm01, create an empty file using the touch command:
touch empty_file

Now shutdown vm01.

  • Back on your host PC, as joker, run and record the output of the 'ls -l' command.
  • Shutdown the nfs server with the command "service nfs stop".

Part C: Setting up Automount on the VM

  • Start up vm01, login as joker and switch to root.
  • Remove the line from /etc/fstab that you entered in PART A.
  • Install automount (yum install autofs) if it's not already installed.
  • Edit the file /etc/auto.master so that it contains 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.
  1. Create another empty file with the name another_empty_file.
  2. Run and record the output of the "df -Th" command.
  3. Back on the host machine as joker, run and record the output of the "ls -l" command.

Completing the Lab

Answer the following questions

  1. What is your full name and 9 digit Seneca student ID?
  2. Show the exact output recorded in Part B (df -Th, exportfs, showmount -e and ls -l)
  3. Show the exact output recorded in Part C. (df -Th, ls -l)
  4. Explain in your own words the meaning of the no_root_squash option for an NFS mount.
  5. Explain the meaning of the defaults option to the mount command.
  6. What is the function of the 'exportfs' command?
  7. What is the purpose of the 'showmount' command?
  8. What is the meaning of the "timeout=60" phrase in Part C?
  9. What is the meaning of the asterisk (*) in Part C?
  10. What is the meaning of the ampersand (&) in Part C?
  11. What is the role of the /etc/mtab file on the host?
  12. What port does nfs use?