Go to the previous, next section.

File Systems and NFS (Network File System)

The term file system actually has two (2) meanings. First it refers to a software mechanism that is generally responsible for the management of all on-line files. Secondly, the way we will use the term filesystem, refers to a given subset of a physical disk drive, divided into some defined number of disk blocks.

All files are usually stored on some type of file system. Most file systems on any given machine will usually be either local (meaning the disk is physically located on that machine), or NFS (having the disk physically located elsewhere).

NFS is a network file system originally developed at Sun. With NFS, you may have a physical file on one system facilitating access to it on another. Under NFS there exists a concept of an NFS server and an NFS client. The server is the system that has the physical space and the client is the system that mounts that space (meaning that space is available). A system may act as both an NFS server and an NFS client. Moreover, any file system on a server is also available locally within that system.

From the user perspective, NFS should be transparent. Really, from the user's view, the only way to identify whether a certain file system is mounted NFS, would be to do a df. A typical df would look as follows:

Filesystem            kbytes    used   avail capacity Mounted on
/dev/sd0a              14095   11292    1393    89%   /
/dev/sd0e              95942   83083    3264    96%   /usr
/dev/sd0d               2335     319    1782    15%   /tmp
lynx:/src             623486  540682   20455    96%   /nfs/lynx/src
lynx:/usenet          582110  290034  233865    55%   /nfs/lynx/usenet
shale:/fog/local      189369  148562   21870    87%   /nfs/shale/local
shale:/u1             322658  253664   36728    87%   /nfs/shale/users
frisby:/spare         454838  377286   32068    92%   /nfs/frisby/spare
frisby:/u1            453799  375705   32714    92%   /nfs/frisby/users

Here you can see this system has three (3) local file systems, and six (6) NFS mounted file systems. Consider the following line, from the above output:

lynx:/src             623486  540682   20455    96%   /home/rigel/src

Here, the `lynx:/src' means the NFS server is lynx and the file system we are mounting is `/src'. The next four (4) fields show statistics about disk space over that file system. The last field, `/nfs/lynx/src', shows where on your local system the lynx:/src file system appears. So for example, if you did a cd to `src' on rigel and do an ls, you would get the same listing from ls if you did a cd to `/home/rigel/src' on this system and did an ls. This /home/rigel/src is a convention established here at PSU. On our machines all NFS file systems are mounted under /home/machine-name/file-system, so in the previous example, machine_name was rigel, and file_system was bacon.

NFS provides a means of allowing file systems form one system to appear on another. Again, this should appear transparent to the user.

Go to the previous, next section.