Loading AI tools
стандарт на иерархию файловых систем UNIX Из Википедии, свободной энциклопедии
FHS (англ. Filesystem Hierarchy Standard, «стандарт иерархии файловой системы») — стандарт, унифицирующий местонахождение файлов и каталогов с общим назначением в файловой системе ОС Linux. На данный момент большинство UNIX-подобных систем в той или иной степени следует этим правилам[2]. Например, обычная база данных о пользователях всегда хранится в файле /etc/passwd
.
FHS | |
---|---|
![]() | |
Создатель | The Linux Foundation |
Опубликован | 14 февраля 1994 |
Последняя версия | |
Официальный сайт |
wiki.linuxfoundation.org/… pathname.com/fhs/ |
FHS разрабатывает и публикует организация Linux Foundation[2].
Актуальная версия стандарта — 3.0, она анонсирована 3 июня 2015 года.
Для получения справки об используемой в ОС системе каталогов иногда существует команда hier
либо man hier
.
![]() | В разделе не хватает ссылок на источники (см. рекомендации по поиску). |
Процесс разработки стандарта иерархии файловой системы начался в августе 1993 года с попыток упорядочить структуру каталогов и файлов в операционной системе GNU/Linux.
14 февраля 1994 года Linux-активистами, координатором которых стал Дэниел Куинлан (англ. Daniel Quinlan), был выпущен FSSTND (акроним словосочетания Filesystem Standard), стандарт файловой системы, специфичной для GNU/Linux[3]. Последующие версии были выпущены 9 октября 1994 года и 28 марта 1995 года.
В начале 1996 года сообщество разработчиков BSD присоединилось к разработке новой версии FSSTND с целью разработать стандарт, пригодный для всех UNIX-подобных операционных систем. Имя стандарта при этом было изменено на Filesystem Hierarchy Standard (FHS).
![]() | В разделе не хватает ссылок на источники (см. рекомендации по поиску). |
FHS поддерживается Free Standards Group — некоммерческой организацией, в составе которой находятся крупные разработчики программного и аппаратного обеспечения, такие как HP, Red Hat, IBM и Dell. Однако основная часть разработчиков дистрибутивов, включая и тех, кто входит в состав Free Standards Group, не следует стандарту полностью. В частности, пути, специально созданные группой, такие как /srv
, практически нигде не используются. Некоторые Linux-системы отвергают FHS и следуют своему собственному стандарту, как, например, GoboLinux.
Так как FHS начиналась как инициатива Linux-сообщества, другие UNIX и UNIX-подобные операционные системы полностью игнорируют её в пользу своих собственных систем, которые иногда распространены довольно широко. Например, Mac OS X использует такие имена, как /Library/
, /Applications/
и /Users/
вместе с традиционными именами UNIX-иерархии.
В FHS все файлы и каталоги находятся внутри корневого каталога[2], даже если они расположены на различных физических носителях. Однако некоторые из каталогов могут присутствовать только в случае, если установлено определённое программное обеспечение, такое как, например, X Window System.
Большая часть этих каталогов существует во всех UNIX-подобных операционных системах, в том числе BSD и MacOS и используется похожим образом[2].
Каталог | Описание |
---|---|
/ |
Корневой каталог, содержащий всю файловую иерархию. |
Основные утилиты, необходимые как в однопользовательском режиме, так и при обычной работе всем пользователям (например: cat, ls, cp). | |
|
Загрузочные файлы (в том числе файлы загрузчика, ядро, initrd , System.map ). Часто выносится на отдельный раздел. |
Основные файлы устройств (например, /dev/null , /dev/zero ). | |
Общесистемные конфигурационные файлы (имя происходит от лат. et cetera). | |
|
Файлы конфигурации для /opt . |
|
Файлы конфигурации X Window System версии 11. |
|
Конфигурационные файлы SGML. |
|
Конфигурационные файлы XML. |
Содержит домашние каталоги пользователей, которые в свою очередь содержат персональные настройки и данные пользователя. Часто размещается на отдельном разделе. | |
|
Основные библиотеки, необходимые для работы программ из /bin и /sbin . |
|
Точки монтирования для сменных носителей, таких как CD-ROM, DVD-ROM (впервые описано в FHS-2.3). |
|
Содержит временно монтируемые файловые системы. |
|
Дополнительное программное обеспечение. |
Виртуальная файловая система, представляющая состояние ядра операционной системы и запущенных процессов в виде файлов. | |
Домашний каталог пользователя root. | |
|
Информация о системе с момента её загрузки, в том числе данные, необходимые для работы демонов (pid-файлы, UNIX-сокеты и т. д.)[4]. |
|
Основные системные программы для администрирования и настройки системы, например, init, iptables, ifconfig. |
|
Данные для сервисов, предоставляемых системой (например, www или ftp). |
|
Содержит информацию об устройствах, драйверах, а также некоторых свойствах ядра[5]. |
|
Временные файлы (см. также /var/tmp ). |
Вторичная иерархия файловой системы, доступная пользователям только для чтения и предназначенная для хранения пользовательских программ и данных. Она содержит большинство пользовательских приложений и утилит, используемых в многопользовательском режиме, может быть смонтирована по сети только для чтения и быть общей для нескольких машин[6]. | |
|
Дополнительные программы для всех пользователей, не являющиеся необходимыми в однопользовательском режиме. |
|
Стандартные заголовочные файлы. |
|
Библиотеки для программ, находящихся в /usr/bin и /usr/sbin . |
|
Третичная иерархия файловой системы, предназначена для специфичных для конкретного хоста данных. Обычно /usr/local содержит подкаталоги bin , lib , share [lower-alpha 1]. |
|
Дополнительные системные программы (такие как демоны различных сетевых сервисов). |
|
Архитектурно-независимые общие данные. |
|
Исходные коды (например, здесь располагаются исходные коды ядра). |
Изменяемые файлы, такие как файлы регистрации, временные почтовые файлы, файлы спулеров. | |
|
Кэш приложений. Такие данные генерируются локально в результате ресурсозатратных вычислений или операций ввода-вывода. Приложение обязано уметь регенерировать эти данные. Данные файлы могут быть удалены без потери данных. |
|
Информация о состоянии. Постоянные данные, изменяемые программами в процессе работы (например, базы данных, метаданные пакетного менеджера и др.). |
|
Файлы блокировки, указывающие на занятость некоторого ресурса. |
|
Различные файлы регистрации. |
|
Почтовые ящики пользователей. |
|
Каталог для хранения информации о системе с момента её загрузки, в 3 версии FHS указан как устаревший. В FHS 3.0 допускается делать /var/run символической ссылкой на /run . Этот каталог оставлен для обратной совместимости с программами, которые всё ещё используют каталог /var/run [7]. |
|
Задачи, ожидающие обработки (например, очереди печати, непрочитанные или неотправленные письма). |
|
Местоположение пользовательских почтовых ящиков (устаревшее). |
|
Временные файлы, которые должны быть сохранены между перезагрузками. |
Разделение на системные (например, /etc, /bin) и пользовательские каталоги необходимо для следующих целей:
Домашний каталог суперпользователя (root) находится в /root
, а не в /home/root
, так как учётная запись суперпользователя предназначена исключительно для администрирования операционной системы. Это помогает повысить надёжность системы: /root
обычно располагается на том же разделе, где и система, что позволяет производить обслуживание и настройку операционной системы, смонтировав лишь корневой раздел.
/usr/local
является хранилищем данных, которые должны храниться на локальном хосте в противоположность /usr
, которая может монтироваться по сети. Однако обычно /usr
редко монтируется удалённо, а /usr/local
чаще используется для установки программного обеспечения и данных, которые не являются частью дистрибутива Linux (в этом случае /usr
должен содержать программы и данные только из стандартного дистрибутива). Возможно, в будущем стандарт FHS будет изменён для отражения этой устоявшейся практики.Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.