]> git.ipfire.org Git - thirdparty/man-pages.git/blob - man7/hier.7
feature_test_macros.7: Further tweaks to _REENTRANT description
[thirdparty/man-pages.git] / man7 / hier.7
1 .\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de)
2 .\"
3 .\" %%%LICENSE_START(VERBATIM)
4 .\" Permission is granted to make and distribute verbatim copies of this
5 .\" manual provided the copyright notice and this permission notice are
6 .\" preserved on all copies.
7 .\"
8 .\" Permission is granted to copy and distribute modified versions of this
9 .\" manual under the conditions for verbatim copying, provided that the
10 .\" entire resulting derived work is distributed under the terms of a
11 .\" permission notice identical to this one.
12 .\"
13 .\" Since the Linux kernel and libraries are constantly changing, this
14 .\" manual page may be incorrect or out-of-date. The author(s) assume no
15 .\" responsibility for errors or omissions, or for damages resulting from
16 .\" the use of the information contained herein. The author(s) may not
17 .\" have taken the same level of care in the production of this manual,
18 .\" which is licensed free of charge, as they might when working
19 .\" professionally.
20 .\"
21 .\" Formatted or processed versions of this manual, if unaccompanied by
22 .\" the source, must acknowledge the copyright and authors of this work.
23 .\" %%%LICENSE_END
24 .\"
25 .\" Modified Sun Jul 25 11:05:58 1993 by Rik Faith (faith@cs.unc.edu)
26 .\" Modified Sat Feb 10 16:18:03 1996 by Urs Thuermann (urs@isnogud.escape.de)
27 .\" Modified Mon Jun 16 20:02:00 1997 by Nicolás Lichtmaier <nick@debian.org>
28 .\" Modified Mon Feb 6 16:41:00 1999 by Nicolás Lichtmaier <nick@debian.org>
29 .\" Modified Tue Feb 8 16:46:45 2000 by Chris Pepper <pepper@tgg.com>
30 .\" Modified Fri Sep 7 20:32:45 2001 by Tammy Fox <tfox@redhat.com>
31 .TH HIER 7 2015-03-29 "Linux" "Linux Programmer's Manual"
32 .SH NAME
33 hier \- description of the filesystem hierarchy
34 .SH DESCRIPTION
35 A typical Linux system has, among others, the following directories:
36 .TP
37 .I /
38 This is the root directory.
39 This is where the whole tree starts.
40 .TP
41 .I /bin
42 This directory contains executable programs which are needed in
43 single user mode and to bring the system up or repair it.
44 .TP
45 .I /boot
46 Contains static files for the boot loader.
47 This directory holds only
48 the files which are needed during the boot process.
49 The map installer
50 and configuration files should go to
51 .I /sbin
52 and
53 .IR /etc .
54 The operating system kernel (initrd for example) must be located in either
55 .I /
56 or
57 .IR /boot .
58 .TP
59 .I /dev
60 Special or device files, which refer to physical devices.
61 See
62 .BR mknod (1).
63 .TP
64 .I /etc
65 Contains configuration files which are local to the machine.
66 Some
67 larger software packages, like X11, can have their own subdirectories
68 below
69 .IR /etc .
70 Site-wide configuration files may be placed here or in
71 .IR /usr/etc .
72 Nevertheless, programs should always look for these files in
73 .I /etc
74 and you may have links for these files to
75 .IR /usr/etc .
76 .TP
77 .I /etc/opt
78 Host-specific configuration files for add-on applications installed
79 in
80 .IR /opt .
81 .TP
82 .I /etc/sgml
83 This directory contains the configuration files for SGML (optional).
84 .TP
85 .I /etc/skel
86 When a new user account is created, files from this directory are
87 usually copied into the user's home directory.
88 .TP
89 .I /etc/X11
90 Configuration files for the X11 window system (optional).
91 .TP
92 .I /etc/xml
93 This directory contains the configuration files for XML (optional).
94 .TP
95 .I /home
96 On machines with home directories for users, these are usually beneath
97 this directory, directly or not.
98 The structure of this directory
99 depends on local administration decisions (optional).
100 .TP
101 .I /lib
102 This directory should hold those shared libraries that are necessary
103 to boot the system and to run the commands in the root filesystem.
104 .TP
105 .I /lib<qual>
106 These directories are variants of
107 .I /lib
108 on system which support more than one binary format requiring separate
109 libraries (optional).
110 .TP
111 .I /lib/modules
112 Loadable kernel modules (optional).
113 .TP
114 .I /lost+found
115 This directory contains items lost in the filesystem.
116 These items are usually chunks of files mangled as a consequence of
117 a faulty disk or a system crash.
118 .TP
119 .I /media
120 This directory contains mount points for removable media such as CD
121 and DVD disks or USB sticks.
122 On systems where more than one device exists
123 for mounting a certain type of media,
124 mount directories can be created by appending a digit
125 to the name of those available above starting with '0',
126 but the unqualified name must also exist.
127 .TP
128 .I /media/floppy[1\-9]
129 Floppy drive (optional).
130 .TP
131 .I /media/cdrom[1\-9]
132 CD-ROM drive (optional).
133 .TP
134 .I /media/cdrecorder[1\-9]
135 CD writer (optional).
136 .TP
137 .I /media/zip[1\-9]
138 Zip drive (optional).
139 .TP
140 .I /media/usb[1\-9]
141 USB drive (optional).
142 .TP
143 .I /mnt
144 This directory is a mount point for a temporarily mounted filesystem.
145 In some distributions,
146 .I /mnt
147 contains subdirectories intended to be used as mount points for several
148 temporary filesystems.
149 .TP
150 .I /opt
151 This directory should contain add-on packages that contain static files.
152 .TP
153 .I /proc
154 This is a mount point for the
155 .I proc
156 filesystem, which provides information about running processes and
157 the kernel.
158 This pseudo-filesystem is described in more detail in
159 .BR proc (5).
160 .TP
161 .I /root
162 This directory is usually the home directory for the root user (optional).
163 .TP
164 .I /sbin
165 Like
166 .IR /bin ,
167 this directory holds commands needed to boot the system, but which are
168 usually not executed by normal users.
169 .TP
170 .I /srv
171 This directory contains site-specific data that is served by this system.
172 .TP
173 .I /sys
174 This is a mount point for the sysfs filesystem, which provides information
175 about the kernel like
176 .IR /proc ,
177 but better structured, following the formalism of kobject infrastructure.
178 .TP
179 .I /tmp
180 This directory contains temporary files which may be deleted with no
181 notice, such as by a regular job or at system boot up.
182 .TP
183 .I /usr
184 This directory is usually mounted from a separate partition.
185 It should hold only sharable, read-only data, so that it can be mounted
186 by various machines running Linux.
187 .TP
188 .I /usr/X11R6
189 The X\-Window system, version 11 release 6 (optional).
190 .TP
191 .I /usr/X11R6/bin
192 Binaries which belong to the X\-Window system; often, there is a
193 symbolic link from the more traditional
194 .I /usr/bin/X11
195 to here.
196 .TP
197 .I /usr/X11R6/lib
198 Data files associated with the X\-Window system.
199 .TP
200 .I /usr/X11R6/lib/X11
201 These contain miscellaneous files needed to run X; Often, there is a
202 symbolic link from
203 .I /usr/lib/X11
204 to this directory.
205 .TP
206 .I /usr/X11R6/include/X11
207 Contains include files needed for compiling programs using the X11
208 window system.
209 Often, there is a symbolic link from
210 .I /usr/include/X11
211 to this directory.
212 .TP
213 .I /usr/bin
214 This is the primary directory for executable programs.
215 Most programs
216 executed by normal users which are not needed for booting or for
217 repairing the system and which are not installed locally should be
218 placed in this directory.
219 .TP
220 .I /usr/bin/mh
221 Commands for the MH mail handling system (optional).
222 .TP
223 .I /usr/bin/X11
224 is the traditional place to look for X11 executables; on Linux, it
225 usually is a symbolic link to
226 .IR /usr/X11R6/bin .
227 .TP
228 .I /usr/dict
229 Replaced by
230 .IR /usr/share/dict .
231 .TP
232 .I /usr/doc
233 Replaced by
234 .IR /usr/share/doc .
235 .TP
236 .I /usr/etc
237 Site-wide configuration files to be shared between several machines
238 may be stored in this directory.
239 However, commands should always
240 reference those files using the
241 .I /etc
242 directory.
243 Links from files in
244 .I /etc
245 should point to the appropriate files in
246 .IR /usr/etc .
247 .TP
248 .I /usr/games
249 Binaries for games and educational programs (optional).
250 .TP
251 .I /usr/include
252 Include files for the C compiler.
253 .TP
254 .I /usr/include/bsd
255 BSD compatibility include files (optional).
256 .TP
257 .I /usr/include/X11
258 Include files for the C compiler and the X\-Window system.
259 This is
260 usually a symbolic link to
261 .IR /usr/X11R6/include/X11 .
262 .TP
263 .I /usr/include/asm
264 Include files which declare some assembler functions.
265 This used to be a
266 symbolic link to
267 .IR /usr/src/linux/include/asm .
268 .TP
269 .I /usr/include/linux
270 This contains information which may change from system release to
271 system release and used to be a symbolic link to
272 .I /usr/src/linux/include/linux
273 to get at operating-system-specific information.
274
275 (Note that one should have include files there that work correctly with
276 the current libc and in user space.
277 However, Linux kernel source is not
278 designed to be used with user programs and does not know anything
279 about the libc you are using.
280 It is very likely that things will break
281 if you let
282 .I /usr/include/asm
283 and
284 .I /usr/include/linux
285 point at a random kernel tree.
286 Debian systems don't do this
287 and use headers from a known good kernel
288 version, provided in the libc*-dev package.)
289 .TP
290 .I /usr/include/g++
291 Include files to use with the GNU C++ compiler.
292 .TP
293 .I /usr/lib
294 Object libraries, including dynamic libraries, plus some executables
295 which usually are not invoked directly.
296 More complicated programs may
297 have whole subdirectories there.
298 .TP
299 .I /usr/lib<qual>
300 These directories are variants of
301 .I /usr/lib
302 on system which support more than one binary format requiring separate
303 libraries, except that the symbolic link
304 .I /usr/lib<qual>/X11
305 is not required (optional).
306 .TP
307 .I /usr/lib/X11
308 The usual place for data files associated with X programs, and
309 configuration files for the X system itself.
310 On Linux, it usually is
311 a symbolic link to
312 .IR /usr/X11R6/lib/X11 .
313 .TP
314 .I /usr/lib/gcc-lib
315 contains executables and include files for the GNU C compiler,
316 .BR gcc (1).
317 .TP
318 .I /usr/lib/groff
319 Files for the GNU groff document formatting system.
320 .TP
321 .I /usr/lib/uucp
322 Files for
323 .BR uucp (1).
324 .TP
325 .I /usr/local
326 This is where programs which are local to the site typically go.
327 .TP
328 .I /usr/local/bin
329 Binaries for programs local to the site.
330 .TP
331 .I /usr/local/doc
332 Local documentation.
333 .TP
334 .I /usr/local/etc
335 Configuration files associated with locally installed programs.
336 .TP
337 .I /usr/local/games
338 Binaries for locally installed games.
339 .TP
340 .I /usr/local/lib
341 Files associated with locally installed programs.
342 .TP
343 .I /usr/local/lib<qual>
344 These directories are variants of
345 .I /usr/local/lib
346 on system which support more than one binary format requiring separate
347 libraries (optional).
348 .TP
349 .I /usr/local/include
350 Header files for the local C compiler.
351 .TP
352 .I /usr/local/info
353 Info pages associated with locally installed programs.
354 .TP
355 .I /usr/local/man
356 Man pages associated with locally installed programs.
357 .TP
358 .I /usr/local/sbin
359 Locally installed programs for system administration.
360 .TP
361 .I /usr/local/share
362 Local application data that can be shared among different architectures
363 of the same OS.
364 .TP
365 .I /usr/local/src
366 Source code for locally installed software.
367 .TP
368 .I /usr/man
369 Replaced by
370 .IR /usr/share/man .
371 .TP
372 .I /usr/sbin
373 This directory contains program binaries for system administration
374 which are not essential for the boot process, for mounting
375 .IR /usr ,
376 or for system repair.
377 .TP
378 .I /usr/share
379 This directory contains subdirectories with specific application data, that
380 can be shared among different architectures of the same OS.
381 Often one finds stuff here that used to live in
382 .I /usr/doc
383 or
384 .I /usr/lib
385 or
386 .IR /usr/man .
387 .TP
388 .I /usr/share/dict
389 Contains the word lists used by spell checkers (optional).
390 .TP
391 .I /usr/share/dict/words
392 List of English words (optional).
393 .TP
394 .I /usr/share/doc
395 Documentation about installed programs (optional).
396 .TP
397 .I /usr/share/games
398 Static data files for games in
399 .I /usr/games
400 (optional).
401 .TP
402 .I /usr/share/info
403 Info pages go here (optional).
404 .TP
405 .I /usr/share/locale
406 Locale information goes here (optional).
407 .TP
408 .I /usr/share/man
409 Manual pages go here in subdirectories according to the man page sections.
410 .TP
411 .I /usr/share/man/<locale>/man[1\-9]
412 These directories contain manual pages for the
413 specific locale in source code form.
414 Systems which use a unique language and code set for all manual pages
415 may omit the <locale> substring.
416 .TP
417 .I /usr/share/misc
418 Miscellaneous data that can be shared among different architectures of the
419 same OS.
420 .TP
421 .I /usr/share/nls
422 The message catalogs for native language support go here (optional).
423 .TP
424 .I /usr/share/sgml
425 Files for SGML (optional).
426 .TP
427 .I /usr/share/sgml/docbook
428 DocBook DTD (optional).
429 .TP
430 .I /usr/share/sgml/tei
431 TEI DTD (optional).
432 .TP
433 .I /usr/share/sgml/html
434 HTML DTD (optional).
435 .TP
436 .I /usr/share/sgml/mathtml
437 MathML DTD (optional).
438 .TP
439 .I /usr/share/terminfo
440 The database for terminfo (optional).
441 .TP
442 .I /usr/share/tmac
443 Troff macros that are not distributed with groff (optional).
444 .TP
445 .I /usr/share/xml
446 Files for XML (optional).
447 .TP
448 .I /usr/share/xml/docbook
449 DocBook DTD (optional).
450 .TP
451 .I /usr/share/xml/xhtml
452 XHTML DTD (optional).
453 .TP
454 .I /usr/share/xml/mathml
455 MathML DTD (optional).
456 .TP
457 .I /usr/share/zoneinfo
458 Files for timezone information (optional).
459 .TP
460 .I /usr/src
461 Source files for different parts of the system, included with some packages
462 for reference purposes.
463 Don't work here with your own projects, as files
464 below /usr should be read-only except when installing software (optional).
465 .TP
466 .I /usr/src/linux
467 This was the traditional place for the kernel source.
468 Some distributions put here the source for the default kernel they ship.
469 You should probably use another directory when building your own kernel.
470 .TP
471 .I /usr/tmp
472 Obsolete.
473 This should be a link
474 to
475 .IR /var/tmp .
476 This link is present only for compatibility reasons and shouldn't be used.
477 .TP
478 .I /var
479 This directory contains files which may change in size, such as spool
480 and log files.
481 .TP
482 .I /var/account
483 Process accounting logs (optional).
484 .TP
485 .I /var/adm
486 This directory is superseded by
487 .I /var/log
488 and should be a symbolic link to
489 .IR /var/log .
490 .TP
491 .I /var/backups
492 Reserved for historical reasons.
493 .TP
494 .I /var/cache
495 Data cached for programs.
496 .TP
497 .I /var/cache/fonts
498 Locally-generated fonts (optional).
499 .TP
500 .I /var/cache/man
501 Locally-formatted man pages (optional).
502 .TP
503 .I /var/cache/www
504 WWW proxy or cache data (optional).
505 .TP
506 .I /var/cache/<package>
507 Package specific cache data (optional).
508 .TP
509 .IR /var/catman/cat[1\-9] " or " /var/cache/man/cat[1\-9]
510 These directories contain preformatted manual pages according to their
511 man page section.
512 (The use of preformatted manual pages is deprecated.)
513 .TP
514 .I /var/crash
515 System crash dumps (optional).
516 .TP
517 .I /var/cron
518 Reserved for historical reasons.
519 .TP
520 .I /var/games
521 Variable game data (optional).
522 .TP
523 .I /var/lib
524 Variable state information for programs.
525 .TP
526 .I /var/lib/hwclock
527 State directory for hwclock (optional).
528 .TP
529 .I /var/lib/misc
530 Miscellaneous state data.
531 .TP
532 .I /var/lib/xdm
533 X display manager variable data (optional).
534 .TP
535 .I /var/lib/<editor>
536 Editor backup files and state (optional).
537 .TP
538 .I /var/lib/<name>
539 These directories must be used for all distribution packaging support.
540 .TP
541 .I /var/lib/<package>
542 State data for packages and subsystems (optional).
543 .TP
544 .I /var/lib/<pkgtool>
545 Packaging support files (optional).
546 .TP
547 .I /var/local
548 Variable data for
549 .IR /usr/local .
550 .TP
551 .I /var/lock
552 Lock files are placed in this directory.
553 The naming convention for
554 device lock files is
555 .I LCK..<device>
556 where
557 .I <device>
558 is the device's name in the filesystem.
559 The format used is that of HDU UUCP lock files, that is, lock files
560 contain a PID as a 10-byte ASCII decimal number, followed by a newline
561 character.
562 .TP
563 .I /var/log
564 Miscellaneous log files.
565 .TP
566 .I /var/opt
567 Variable data for
568 .IR /opt .
569 .TP
570 .I /var/mail
571 Users' mailboxes.
572 Replaces
573 .IR /var/spool/mail .
574 .TP
575 .I /var/msgs
576 Reserved for historical reasons.
577 .TP
578 .I /var/preserve
579 Reserved for historical reasons.
580 .TP
581 .I /var/run
582 Run-time variable files, like files holding process identifiers (PIDs)
583 and logged user information
584 .IR (utmp) .
585 Files in this directory are usually cleared when the system boots.
586 .TP
587 .I /var/spool
588 Spooled (or queued) files for various programs.
589 .TP
590 .I /var/spool/at
591 Spooled jobs for
592 .BR at (1).
593 .TP
594 .I /var/spool/cron
595 Spooled jobs for
596 .BR cron (8).
597 .TP
598 .I /var/spool/lpd
599 Spooled files for printing (optional).
600 .TP
601 .I /var/spool/lpd/printer
602 Spools for a specific printer (optional).
603 .TP
604 .I /var/spool/mail
605 Replaced by
606 .IR /var/mail .
607 .TP
608 .I /var/spool/mqueue
609 Queued outgoing mail (optional).
610 .TP
611 .I /var/spool/news
612 Spool directory for news (optional).
613 .TP
614 .I /var/spool/rwho
615 Spooled files for
616 .BR rwhod (8)
617 (optional).
618 .TP
619 .I /var/spool/smail
620 Spooled files for the
621 .BR smail (1)
622 mail delivery program.
623 .TP
624 .I /var/spool/uucp
625 Spooled files for
626 .BR uucp (1)
627 (optional).
628 .TP
629 .I /var/tmp
630 Like
631 .IR /tmp ,
632 this directory holds temporary files stored for an unspecified duration.
633 .TP
634 .I /var/yp
635 Database files for NIS,
636 formerly known as the Sun Yellow Pages (YP).
637 .SH CONFORMING TO
638 The Filesystem Hierarchy Standard, Version 2.3
639 .UR http://www.pathname.com\:/fhs/
640 .UE .
641 .SH BUGS
642 This list is not exhaustive; different systems may be configured
643 differently.
644 .SH SEE ALSO
645 .BR find (1),
646 .BR ln (1),
647 .BR proc (5),
648 .BR mount (8)
649
650 The Filesystem Hierarchy Standard