Корневой каталог
Стандарт FHS предлагает создать в корневом каталоге следующие подкаталоги
Таблица 2. Основные подкаталоги корневого каталога
bin | Файлы основных команд (утилит), которые необходимы, когда никакая другая файловая система еще не смонтирована (например, в однопользовательском режиме). | ||
boot | Неизменяемые файлы, необходимые для загрузки системы | ||
dev | Файлы устройств | ||
etc |
| Файлы конфигурации системы на данном компьютере | |
home | Домашние каталоги пользователей | ||
lib | Основные разделяемые библиотеки и модули ядра | ||
lib<alt> | Основные разделяемые библиотеки для альтернативных форматов исполняемых файлов | ||
mnt | Точка монтирования для временно подключаемых файловых систем | ||
root | Домашний каталог суперпользователя root | ||
opt | Дополнительные пакеты программного обеспечения | ||
sbin | Основные системные исполняемые файлы | ||
tmp | Временные файлы | ||
usr | Иерархия второго уровня | ||
var | Переменные данные |
Это не означает, что все содержимое перечисленных каталогов должно размещаться в корневой файловой системе. Указанные каталоги могут являться просто точками монтирования для других файловых систем или ссылками на такие системы. Более того, в стандарте явно рекомендуется размещать в каталогах /usr, /opt и /var такие файлы, которые могут располагаться в других разделах диска или в других файловых системах. Впрочем, давайте отложим рассмотрение вопроса о том, как разместить каталоги по разным файловым системам, до последнего раздела настоящей статьи, а пока вернемся к рассмотрению тех требований, которые стандарт FHS предъявляет к корневому каталогу.
В соответствии с требованиями стандарта приложения не должны создавать файлов и каталогов или требовать наличия каких-то специальных файлов и каталогов (кроме перечисленных выше) в корневой директории. Существует несколько причин, по которым это запрещено:
размер корневой файловой системы желательно сохранять по возможности малым из соображений безопасности и удобства использования;
если придерживаться данного соглашения, проще решаются проблемы монтирования других файловых систем, расположенных на других устройствах;
и, наконец, стандарт FHS обеспечивает достаточную гибкость и удобство размещения файлов, не попавших в корневую систему, в других файловых системах и подкаталогах.
Обратите внимание на то, что некоторые подкаталоги корневого каталога помечены значком (optional). Это означает, что стандарт не требует обязательного наличия таких каталогов в системе. Но уж если они существуют, то должны размещаться в корневом каталоге (но не обязательно в корневой файловой системе).
А теперь последовательно рассмотрим назначение каждого из основных подкаталогов корневого каталога.
В Linux-системах, если ядро расположено в /, мы рекомендуем использовать для него названия vmlinux или vmlinuz, которые используются в последних версиях исходных кодов ядра Linux.