Типичная система Linux имеет, кроме прочих, следующие каталоги:
/
Корневой каталог. С него начинается все дерево каталогов.
/bin
Каталог, содержащий исполняемые программы, необходимые для работы в
однопользовательском режиме и для запуска или ремонта системы.
/boot
Содержит статические файлы для загрузчика системы. Файлы этого каталога
необходимы при загрузке системы. Инсталлятор карты и конфигурационные файлы
должны находится не здесь, а в
/sbin
и
/etc.
/dev
Специальные файлы и файлы устройств, ссылающиеся на физические устройства. См.
mknod(1).
/dos
Если на компьютере запускаются и Linux, и MS-DOS, то обычно файловая система
DOS подключается к этому каталогу.
/etc
Содержит конфигурационные файлы машины. Hекоторые большие программные пакеты,
такие, как X11, могут иметь свои собственные подкаталоги в
/etc.
Конфигурационные общедоступные файлы могут помещаться
либо в этот каталог, либо в
/usr/etc.
Тем не менее, программы всегда должны искать эти файлы в
/etc.
Вы можете иметь ссылки на эти файлы в
/usr/etc.
/etc/opt
Файлы настроек для дополнительных приложений в
/opt.
/etc/sgml
Этот каталог содержит файлы настроек для SGML и XML (дополн.).
/etc/skel
При создании новой учетной записи пользователя файлы из этого каталога, как
правило, копируются в домашний каталого пользователя.
/etc/X11
Конфигурационные файлы оконной системы X11.
/home
В машинах с домашними каталогами пользователей эти каталоги обычно
прямо или косвенно содержатся в этом каталоге. Его структура зависит
от администратора системы.
/lib
Этот каталог должен содержать разделяемые библиотеки, необходимые для загрузки
системы и запуска команд, содержащихся в корневой файловой системе.
/mnt
Этот каталог является точкой подключения временно запускаемых файловых систем.
/opt
Этот каталог седержит дополнительные пакеты с файлами собранными статически.
/proc
Точка подключения файловой системы
proc,
предоставляющей пользователю доступ к информации о запущенных процессах и ядре.
Это псевдофайловая система, более подробно описанная в
proc(5).
/root
Этот каталог является домашним для пользователя root.
/sbin
Как и
/bin,
содержит команды, необходимые для запуска системы, но, как правило, не
запускаемые обычными пользователями.
/tmp
Этот каталог содержит временные файлы, которые можно удалить без всяких
проблем в любое время, например, при загрузке системы.
/usr
К этому каталогу обычно подключается отдельный раздел. В нем должны содержаться
разделяемые, предназначенные только для чтения данные, так что он может быть
запущен различными машинами, работающими в Linux.
/usr/X11R6
Система X-Window, версия #11, выпуск #6 (дополн.).
/usr/X11R6/bin
Исполняемые файлы, принадлежащие системе X-Windows. Часто на него имеется символьная
ссылка в более традиционном каталоге
/usr/bin/X11.
/usr/X11R6/lib
Файлы данных, связанные с системой X-Windows.
/usr/X11R6/lib/X11
Содержит различные файлы, необходимые для запуска X Window System.
В каталоге
/usr/lib/X11
часто имеется символьная ссылка на вышеуказанный каталог.
/usr/X11R6/include/X11
Содержит файлы заголовков для компиляции программ, использующих систему X11.
Часто имеется символьная ссылка на этот каталог в каталоге
/usr/inlcude/X11.
/usr/bin
Это основной каталог для исполняемых программ. Большая часть программ,
не требующихся для загрузки или для ремонта системы, не устанавливаемых
локально и запускаемых обычными пользователями, должна быть
помещена в этот каталог.
/usr/bin/X11
Традиционное место поиска исполняемых файлов X11; в Linux это обычно символьная
ссылка на
/usr/X11R6/bin.
/usr/dict
Заменен на
/usr/share/dict.
/usr/doc
Заменен на
/usr/share/doc.
/usr/etc
В этом каталоге возможно хранить общедоступные конфигурационные файлы,
которые могут использоваться несколькими машинами одновременно. Hесмотря на
это, команды, ссылающиеся на них, должны находиться в каталоге
/etc.
Ссылки из каталога
/etc
должны указывать на соответствующие файлы в
/usr/etc.
/usr/games
Программы для обучения и игры (дополн.).
/usr/include
Файлы заголовков для компилятора C.
/usr/include/X11
Файлы заголовков для компилятора C и системы X-Windows. Как правило, это
символьная ссылка на
/usr/X11R6/include/X11.
/usr/include/asm
Файлы заголовков, определяющие некоторые ассемблерные функции.
Это символьная ссылка на
/usr/src/linux/include/asm.
/usr/include/linux
Содержит информацию, которая может меняться от выпуска к выпуску.
Это символьная ссылка на
/usr/src/linux/include/linux
для получения информации, предназначенной только для данной системы.
(Обратите внимание, что необходимо иметь файлы заголовоков, корректно
работающие с текущей glibc и в пространстве пользователя. Hесмотря на это,
исходные версии ядра не рассчитаны на работу в пользовательской программе и не
знакомы с libc, которую Вы запустили. Весьма вероятно, что появятся ошибки,
если
/usr/include/asm
и
/usr/include/linux
будут указывать на произвольное дерево ядра. Системы Debian не делают этого,
а используют файлы заголовков тех версий ядра, которые себя хорошо зарекомендовали.
Они поставляются в пакете libc*-dev package.
/usr/include/g++
Файлы заголовков, используемые с компилятором GNU C++.
/usr/lib
Объектные библиотеки, в том числе и динамические, а также некоторые программы,
обычно не запускаемые непосредственно. Более сложные программы могут иметь в
этом каталоге свои подкаталоги.
/usr/lib/X11
Стандартная область для файлов данных, связанных с программами X Window System, а также для
конфигурационных файлов самой системы X Window System. В Linux это обычно
символьная ссылка на
/usr/X11R6/lib/X11.
/usr/lib/gcc-lib
содержит исполняемые файлы и файлы заголовков для компилятора GNU C, имя которого
gcc(1).
/usr/lib/groff
Файлы для системы форматирования документов GNU groff.
В этот каталог обычно помещаются локальные программы.
/usr/local/bin
Локальные исполняемые файлы.
/usr/local/doc
Локальная документация.
/usr/local/etc
Файлы настройки локальных программ.
/usr/local/games
Программы установленных игр.
/usr/local/lib
Файлы, связанные с локальными программами.
/usr/local/include
Файлы заголовков для компилятора C.
/usr/local/info
Страницы info, связанные с локальными программами.
/usr/local/man
Страницы man, связанные с локальными программами.
/usr/local/sbin
Локальные программы для системного администрирования.
/usr/local/share
Локальные данные приложений, которые могут быть разделены различными
архитектурами одной ОС.
/usr/local/src
Исходный код локального программного обеспечения.
/usr/man
Заменен на
/usr/share/man.
/usr/sbin
Каталог, содержащий исполняемые программы для системного администрирования, не
относящиеся к процессу загрузки, запуску
/usr
или ремонту системы.
/usr/share
Каталог, где подкаталоги содержат данные, которые могут быть
использованы в различных архитектурах одной и той же ОС. В нем содержатся данные
из
/usr/doc,
/usr/lib
или из
/usr/man.
/usr/share/dict
Содержит словарь для проверки орфографии.
/usr/share/doc
Документация на установленные программы.
/usr/share/games
Статические данные для игр из
/usr/games.
/usr/share/info
Информационные странички (вид документации).
/usr/share/locale
Информация о локали.
/usr/share/man
Странички руководства.
/usr/share/man/<locale>/man[1-9]
Эти каталоги содержат разделы со страницами руководств в исходниках.
/usr/share/misc
Различные данные которые могут быть разделяемыми.
/usr/share/nls
Каталог с сообщениями на родном языке.
/usr/share/sgml
Файлы для SGML и XML.
/usr/share/terminfo
База данных для terminfo.
/usr/share/tmac
Макросы Тroff не распространяемые вместе с groff.
/usr/share/zoneinfo
Файлы информации о временном поясе.
/usr/src
Исходные файлы тех частей системы, которые входят в состав различных пакетов.
Hе используйте этот каталог для работы над своими проектами, так как файлы в
подкаталогах /usr предназначены только для чтения (кроме случаев установки
программного обеспечения).
/usr/src/linux
Этот каталог всегда был традиционным местоположением исходных файлов ядра.
Многие дистрибутивы размещают тут исходники для ядра.
Для сборки собственного ядра, рекомендуется использовать другой каталог.
/usr/tmp
Устарел. Должен быть ссылкой на
/var/tmp.
Эта ссылка оставлена только для совместимости систем, но ее не следует использовать.
/var
Каталог, содержащий файлы, размер которых может меняться.
Это файлы очередей и журнала.
/var/adm
Этот каталог заменен
/var/log
и должен быть символьной ссылкой на
/var/log.
/var/backups
Этот каталог зарезервирован.
/var/cache
Кэшированные данные для программ.
/var/catman/cat[1-9] или /var/cache/man/cat[1-9]
Эти каталоги содержат предварительно отформатированные странички руководства
в соответствии с их разделами. (Категорически запрещается
использовать их в работе).
/var/cron
Зарезервированные каталог.
/var/lib
Каталог с состоянием переменных для программ.
/var/local
Данные по переменным для
/usr/local.
/var/lock
В этом каталоге содержатся файлы блокировки. Соглашения об именах файлов,
блокирующих устройства, следующее:
LCK..<устройство>,
где
<device>
- это имя устройства файловой системы.
Используется формат файлов блокировки HDU UUCP, то есть файлы блокировки
содержат PID в виде 10-байтного числа ASCII в десятичной системе исчисления;
после этого числа стоит символ новой строки.
Временные файлы, создаваемые во время работы. В них содержатся идентификаторы
процессов (PIDs) и журнал пользователей
(utmp).
Файлы из этого каталога обычно удаляются в процессе загрузки системы.
/var/spool
Файлы, поставленные в очередь различными программами.