System Administration Guide

Types of File Systems

The Solaris system software supports three types of file systems:

To identify the type for a particular file system, see "Determining a File System's Type".

Disk-based File Systems

Disk-based file systems are stored on physical media such as hard disks, CD-ROMs, and diskettes. Disk-based file systems can be written in different formats. The available formats are:

Each type of disk-based file system is customarily associated with a particular media device:

These associations are not, however, restrictive. For example, CD-ROMs and diskettes can have UFS file systems put on them.

Network-based File Systems

Network-based file systems are file systems accessed over the network. Typically, network-based file systems reside on one system and are accessed by other systems across the network. NFS is the only available network-based file system.

NFS is the default distributed file system for Solaris. You administer distributed file systems by exporting them from a server and mounting them on individual systems. See "Mounting and Unmounting" for more information.

Virtual File Systems

Virtual file systems are memory-based file systems that provide access to special kernel information and facilities. Most virtual file systems do not use file system disk space. However, Cache File Systems use a file system on the disk to contain the cache, and some virtual file systems, such as the Temporary File System, use the swap space on a disk.

The Cache File System

The Cache File System (CacheFSTM) can be used to improve performance of remote file systems or slow devices such as CD-ROM drives. When a file system is cached, the data read from the remote file system or CD-ROM is stored in a cache on the local system. See Chapter 29, The Cache File System (Tasks) for detailed information on setting up and administering Cache File Systems.

The Temporary File System

The Temporary File System (TMPFS) uses local memory for file system reads and writes. Access to files in a TMPFS file system is typically much faster than to files in a UFS file system. Files in the temporary file system are not permanent. They are deleted when the file system is unmounted and when the system is shut down or rebooted.

TMPFS is the default file system type for the /tmp directory in the Solaris system software. You can copy or move files into or out of the /tmp directory, just as you would in a UFS file system.

Using TMPFS file systems can improve system performance by saving the cost of reading and writing temporary files to a local disk or across the network. For example, temporary files are created when you compile a program. The operating system generates a lot of disk or network activity while manipulating these files. Using TMPFS to hold these temporary files may significantly speed up their creation, manipulation, and deletion.

The TMPFS file system uses swap space as a temporary backing store. If a system with a TMPFS file system does not have adequate swap space, two problems can occur:

See Chapter 27, Creating File Systems (Tasks) for information on how to create TMPFS file systems. See Chapter 30, Configuring Additional Swap Space (Tasks) for information about increasing swap space.

The Loopback File System

The Loopback File System (LOFS) lets you create a new virtual file system so you can access files by using an alternative path name. For example, you can create a loopback mount of root / onto /tmp/newroot. The entire file system hierarchy looks like it is duplicated under /tmp/newroot, including any file systems mounted from NFS servers. All files are accessible either with a path name starting from /, or with a path name starting from /tmp/newroot.

See Chapter 27, Creating File Systems (Tasks) for information on how to create LOFS file systems.

The Process File System

The Process File System (PROCFS) resides in memory. It contains a list of active processes, by process number, in the /proc directory. Information in the /proc directory is used by commands like ps. Debuggers and other development tools can also access the address space of the processes by using file system calls. The following example shows a partial listing of the contents of the /proc directory:

$ ls -l /proc
total 144944
-rw-------   1 root     root           0 Dec 19 15:45 00000
-rw-------   1 root     root      196608 Dec 19 15:45 00001
-rw-------   1 root     root           0 Dec 19 15:45 00002
-rw-------   1 root     root     1028096 Dec 19 15:46 00073
-rw-------   1 root     root     1445888 Dec 19 15:46 00091
-rw-------   1 root     root     1142784 Dec 19 15:46 00093
-rw-------   1 root     root     1142784 Dec 19 15:46 00095
-rw-------   1 ignatz   staff    1576960 Dec 19 15:50 00226
-rw-------   1 ignatz   staff     192512 Dec 19 15:51 00236
-rw-------   1 ignatz   staff    1269760 Dec 19 15:52 00240
-rw-------   1 ignatz   staff    6090752 Dec 19 15:52 00241
-rw-------   1 ignatz   staff     188416 Dec 19 15:52 00247
-rw-------   1 ignatz   staff    2744320 Dec 19 15:52 00256

Caution - Caution -

Do not delete the files in the /proc directory. Deleting processes from the /proc directory is not the best way to kill them. Remember, /proc files do not use disk space, so there is little reason to delete files from this directory.


The /proc directory does not require system administration.

Additional Virtual File Systems

These additional types of virtual file systems are listed for your information. They do not require administration.