Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
FILESYSTEM(7)	       Miscellaneous Information Manual		 FILESYSTEM(7)

       filesystem - file system	organization


       The  SunOS file system tree is organized	for easy administration.  Dis-
       tinct areas within the file system tree are provided for	files that are
       private	to  one	machine, files that can	be shared by multiple machines
       of a common architecture, files that can	be shared by all machines, and
       home  directories.   This  organization allows the sharable files to be
       stored on one machine, while being accessed by many  machines  using  a
       remote  file  access mechanism such as Sun's Network File System	(NFS).
       Grouping	together similar files makes the file system  tree  easier  to
       upgrade and manage.

       The file	system tree consists of	a root file system and a collection of
       mountable file systems.	The mount(8) program attaches  mountable  file
       systems	to the file system tree	at mount points	(directory entries) in
       the root	file system, or	other previously mounted  file	systems.   Two
       file systems, / (the root) and /usr, must be mounted in order to	have a
       fully functional	system.	 The root file system is mounted automatically
       by  the	kernel	at  boot  time;	the /usr file system is	mounted	by the
       /etc/rc.boot script, which is run as part of the	booting	process.

       The root	file system contains files that	are unique to each machine; it
       can  not	 be  shared among machines.  The root file system contains the
       following directories:

       /dev	 Character and block  special  files.	Device	files  provide
		 hooks	into  hardware devices or operating system facilities.
		 The MAKEDEV command (see makedev(8)) builds device  files  in
		 the  /dev  directory.	 Typically,  device files are built to
		 match the kernel and hardware configuration of	the machine.

       /etc	 Various configuration files and system	 administration	 data-
		 bases	that  are  machine specific.  You can think of /etc as
		 the "home directory" of a machine, defining  its  "identity."
		 Executable programs are no longer kept	in /etc.

       /home	 Mount points for home directories.  This directory may	be ar-
		 ranged	so that	shared user files are placed under the	direc-
		 tory  /home/machine-name on machines serving as file servers.
		 Machines may then be locally configured with mount points un-
		 der  /home  for all of	the file servers of interest, with the
		 name of the mount point being the name	of the file server.

       /mnt	 A generic mount point.	 This is an empty directory  available
		 for temporarily mounting file systems on.

       /sbin	 Executable  programs  that are	needed in the boot process be-
		 fore /usr is mounted.	/sbin  contains	 only  those  programs
		 that are needed in order to mount the /usr file system: host-
		 name(1), ifconfig(8C),	init(8), mount(8), and	sh(1).	 After
		 /usr  is mounted, the full complement of utilities are	avail-

       /tmp	 Temporary files that are deleted at reboot time.

       /var	 Files,	such as	log files, that	are unique to  a  machine  but
		 that can grow to an arbitrary ("variable") size.

       /var/adm	 System	logging	and accounting files.

		 Backup	files for vi(1)	and ex(1).

		 Subdirectories	 for  files used in printer spooling, mail de-
		 livery, cron(8), at(1), etc.

       /var/tmp	 Transitory files that are not deleted at reboot time.

       Because it is desirable to keep the root	file system small, larger file
       systems are often mounted on /var and /tmp.

       The file	system mounted on /usr contains	architecture-dependent and ar-
       chitecture-independent  shareable  files.   The	 subtree   rooted   at
       /usr/share  contains architecture-independent shareable files; the rest
       of the /usr tree	contains architecture-dependent	files.	By mounting  a
       common  remote file system, a group of machines with a common architec-
       ture may	share a	single /usr file system.   A  single  /usr/share  file
       system can be shared by machines	of any architecture.  A	machine	acting
       as a file server	may export many	different /usr file systems to support
       several different architectures and operating system releases.  Clients
       usually mount /usr read-only to prevent	their  accidentally  modifying
       any  shared  files.  The	/usr file system contains the following	subdi-

       /usr/5bin		System V executables.

       /usr/5include		System V include files.

       /usr/5lib		System V library files.

       /usr/bin			Executable programs.  The bulk of  the	system
				utilities are located here.

       /usr/dict		Dictionary databases.

       /usr/etc			Executable system administration programs.

       /usr/games		Executable game	programs and data.

       /usr/include		Include	files.

       /usr/lib			Program	libraries and various architecture-de-
				pendent	databases.

       /usr/pub			Various	data files.

       /usr/ucb			Executable programs descended from the	Berke-
				ley Software Distribution.

       /usr/share		Subtree	for architecture-independent shareable

       /usr/share/man		Subdirectories for the on-line reference  man-
				ual pages.

       /usr/share/lib		Architecture-independent databases.

       A  machine with disks may export	root file systems, swap	files and /usr
       file systems to diskless	 or  partially-disked  machines,  which	 mount
       these  into the standard	file system hierarchy.	The standard directory
       tree for	exporting these	file systems is:

       /export			The root of the	exported file system tree.

				The exported /usr file system  supporting  ar-
				chitecture-name	for the	current	release.

				The  exported  /usr file system	supporting ar-
				chitecture-name	for SunOS release-name.

       /export/share		The exported common /usr/share directory tree.

       /export/root/hostname	The exported root file system for hostname.

       /export/swap/hostname	The exported swap file for hostname.

       /export/var/hostname	The exported /var directory tree for hostname.

       /export/dump/hostname	The exported dump file for hostname.

       /export/crash/hostname	The exported crash dump	 directory  for	 host-

   Changes from	Previous Releases
       The file	system layout described	here is	quite a	bit different from the
       layout employed previous	to release 4.0 of  SunOS.   For	 compatibility
       with  earlier releases of SunOS,	and other versions of the UNIX system,
       symbolic	links are provided for various files and  directories  linking
       their  previous	names  to their	current	locations.  The	symbolic links
       provided	include:

       /bin -->	/usr/bin	All programs previously	located	 in  /bin  are
				now in /usr/bin.

       /lib -->	/usr/lib	All  files  previously located in /lib are now
				in /usr/lib.

       /usr/adm	--> /var/adm	The entire /usr/adm directory has  been	 moved
				to /var/adm.

       /usr/spool --> /var/spool
				The entire /usr/spool directory	has been moved
				to /var/spool.

       /usr/tmp	--> /var/tmp	The  /usr/tmp  directory  has  been  moved  to

       /etc/termcap -->	/usr/share/lib/termcap

       /usr/5lib/terminfo --> /usr/share/lib/terminfo

       /usr/lib/me --> /usr/share/lib/me

       /usr/lib/ms --> /usr/share/lib/ms

       /usr/lib/tmac --> /usr/share/lib/tmac

       /usr/man	--> /usr/share/man

       The  following  program	binaries have been moved from /etc to /usr/etc
       with symbolic links to them left	in /etc: arp, clri, cron,  chown,  ch-
       root,  config, dkinfo, dmesg, dump, fastboot, fasthalt, fsck, halt, if-
       config, link, mkfs, mknod, mount, ncheck, newfs,	pstat, rdump,  reboot,
       renice,	restore,  rmt, rrestore, shutdown, umount, update, unlink, and

       In addition, some files and directories have been moved	with  no  sym-
       bolic link left behind in the old location:

	      Old Name		  New Name

	      /etc/biod		  /usr/etc/biod

	      /etc/fsirand	  /usr/etc/fsirand

	      /etc/getty	  /usr/etc/getty

	      /etc/in.rlogind	  /usr/etc/in.rlogind

	      /etc/in.routed	  /usr/etc/in.routed

	      /etc/in.rshd	  /usr/etc/in.rshd

	      /etc/inetd	  /usr/etc/inetd

	      /etc/init		  /usr/etc/init

	      /etc/nfsd		  /usr/etc/nfsd

	      /etc/portmap	  /usr/etc/portmap

	      /etc/rpc.lockd	  /usr/etc/rpc.lockd

	      /etc/rpc.statd	  /usr/etc/rpc.statd

	      /etc/ypbind	  /usr/etc/ypbind


	      /usr/preserve	  /var/preserve

	      /usr/lib/aliases	  /etc/aliases

	      /stand		  /usr/stand

	      /etc/yp		  /var/yp

       Note: with this new file	system organization, the approach to repairing
       a broken	file system changes.  One must	mount  /usr  before  doing  an
       fsck(8),	 for example.  If the mount point for /usr has been destroyed,
       /usr can	be mounted temporarily on /mnt or /tmp.	 If the	root file sys-
       tem on a	standalone system is so	badly damaged that none	of these mount
       points exist, or	if /sbin/mount has been	corrupted, the only way	to re-
       pair it may be to re-install the	root file system.

       at(1),  ex(1),  hostname(1),  sh(1), vi(1), intro(4), nfs(4P), hier(7),
       fsck(8),	ifconfig(8C), init(8), makedev(8), mount(8), rc(8)

				10 January 1988			 FILESYSTEM(7)


Want to link to this manual page? Use this URL:

home | help