Иерархия файловой системы

Материал из Слакваря

Перейти к: навигация, поиск

Иерархия файловой системы (Filesystem Hierarchy Standard, FHS) — стандарт, принятый для унификации местонахождения файлов и директорий с общим назначением в файловой системе ОС UNIX. На данный момент большинство UNIX-подобных систем в той или иной степени следует этим правилам. Например, обычная база данных о пользователях всегда хранится в файле /etc/passwd.

Текущая версия стандарта — 2.3, анонсирована 29 января 2004 г.

Так как FHS начиналась как инициатива Linux-сообщества, другие UNIX и UNIX-подобные операционные системы полностью игнорируют её в пользу своих собственных систем, которые иногда распространены довольно широко. Например, Mac OS X использует такие имена, как /Library/, /Applications/ и /Users/ вместе с традиционными именами UNIX-иерархии.

Содержание

Структура директорий

В FHS все файлы и директории находятся внутри корневой директории, даже если они расположены на различных физических носителях. Однако некоторые из директорий могут присутствовать только в случае, если установлено определённое программное обеспечение, такое как, например, X Window System. Большая часть этих директорий существует во всех UNIX-подобных операционных системах и используется похожим образом.

Директория Описание
/ Корневая директория, содержащая всю файловую иерархию.
/bin Основные утилиты, необходимые как в однопользовательском режиме, так и при обычной работе всем пользователям (например: cat, ls, cp).
/boot Загрузочные файлы (в том числе файлы загрузчика, ядро, initrd, System.map). Часто выносится на отдельный раздел.
/dev Основные файлы устройств (например, /dev/null, /dev/zero).
/etc Общесистемные конфигурационные файлы (имя происходит от et cetera).
/etc/opt
Файлы конфигурации для /opt.
/etc/X11
Файлы конфигурации X Window System версии 11.
/etc/sgml
Конфигурационные файлы SGML.
/etc/xml
Конфигурационные файлы XML.
/home Содержит домашние директории пользователей, которые в свою очередь содержат персональные настройки и данные пользователя. Часто размещается на отдельном разделе.
/lib Основные библиотеки, необходимые для работы программ из /bin и /sbin.
/media Точки монтирования для сменных носителей, таких как CD-ROM, DVD-ROM (впервые описано в FHS-2.3).
/mnt Содержит временно монтируемые файловые системы.
/opt Дополнительное программное обеспечение.
/proc Виртуальная файловая система, представляющая состояние ядра операционной системы и запущенных процессов в виде файлов.
/root Домашняя директория пользователя root.
/sbin Основные системные программы для администрирования и настройки системы, например, init, iptables, ifconfig.
/srv Данные, специфичные для окружения системы.
/tmp Временные файлы (см. также /var/tmp).
/usr Вторичная иерархия для данных пользователя; содержит большинство пользовательских приложений и утилит, используемых в многопользовательском режиме. Может быть смонтирована по сети только для чтения и быть общей для нескольких машин.
/usr/bin
Дополнительные программы для всех пользователей, не являющиеся необходимыми в однопользовательском режиме.
/usr/include
Стандартные заголовочные файлы.
/usr/lib
Библиотеки для программ, находящихся в /usr/bin и /usr/sbin.
/usr/sbin
Дополнительные системные программы (такие как демоны различных сетевых сервисов).
/usr/share
Архитектурно-независимые общие данные.
/usr/src
Исходные коды (например, здесь располагаются исходные коды ядра).
/usr/X11R6
X Window System, версии 11, релиз 6.
/usr/local
Третичная иерархия для данных, специфичных для данного хоста. Обычно содержит такие поддиректории, как bin, lib, share.[1]
/var Изменяемые файлы, такие как файлы регистрации (log-файлы), временные почтовые файлы, файлы спулеров.
/var/lib
Информация о состоянии. Постоянные данные, изменяемые программами в процессе работы (например, базы данных, метаданные пакетного менеджера и др.).
/var/lock
Лок-файлы, указывающие на занятость некоторого ресурса.
/var/log
Различные файлы регистрации (log-файлы).
/var/mail
Почтовые ящики пользователей.
/var/run
Информация о запущенных программах (в основном, о демонах).
/var/spool
Задачи, ожидающие обработки (например, очереди печати, непрочитанные или неотправленные письма).
/var/spool/mail
Местоположение пользовательских почтовых ящиков (устаревшее, но популярное).
/var/tmp
Временные файлы, которые должны быть сохранены между перезагрузками.

Примечания

  1. Исторически и строго следуя стандарту, /usr/local является хранилищем данных, которые должны хранится на локальном хосте в противоположность /usr, которая может монтироваться по сети. Однако обычно /usr редко монтируется удалённо, а /usr/local чаще используется для инсталляции программного обеспечения и данных, которые не являются частью дистрибутива: в этом случае /usr должен содержать программы и данные только из стандартного дистрибутива. Возможно, в будущем стандарт FHS будет изменён для отражения этой устоявшейся ситуации.

См. также

Ссылки

Личные инструменты