Стандарт на структуру каталогов файловой системы
      

Filesystem Hierarchy Standard - 1 Introduction


Filesystem Hierarchy Standard - 1 Introduction Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) Введение

Назначение

Этот стандарт необходим для того, чтобы: программное обеспечение легко находило нужные файлы и каталоги, и пользователи легко находили установленные в системе файлы и каталоги.

Мы достигаем этих целей тем, что формулируем основополагающие принципы, в соответствии с которыми формируется каждая составная часть файловой системы, указываем минимально необходимый список файлов и подкаталогов, перечисляем исключения из основных принципов, и перечисляем особые случаи, возникающие в силу исторических причин.

Настоящий стандарт используется для того, чтобы независимые постащики программного обеспечения могли создавать приложения, совместимые со стандартом FHS, и работать с FHS-совместимыми дистрибутивами, создатели операционных систем разрабатывали системы, совместимые с FHS, и пользователи понимали и поддерживали FHS-совместимость систем. Обозначения

Мы рекомендуем вам читать версию этого документа, набранную с использованием различных шрифтов, а не простой текстовый вариант. В версии, использующей различные шрифты, имена файлов и каталогов набраны шрифтом фиксированной ширины.



Компоненты имен файлов, которые могут изменяться, представляются описанием соответствующего компонента, заключенным угловые скобки "<" и ">", <вот так>. Адреса электронной почты тоже заключаются в "<" и ">", но они изображаются обычным шрифтом.

Необязательные компоненты имен файлов заключаются квадратные скобки "[" и "]", причем оба этих условных обозначения могут комбинироваться. Например, если имя файла может иметь расширение или не иметь такового, это представляется следующим образом: <filename>[.<extension>].

Произвольная подстрока в имени каталога или файла обозначается символом "*".

Filesystem Hierarchy Standard - 2 The Filesystem


Filesystem Hierarchy Standard - 2 The Filesystem Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) Файловая система

В настоящем стандарте предполагается, что операционная система, использующая FHS-совместимую файловую систему, поддерживает обычные для большинства UNIX-систем средства обеспечения безопасности (the same basic security features found in most UNIX filesystems).

Можно определить два независимых критерия разбиения множества файлов на независимые типы (прим.переводчика: математик сказал бы - на непересекающиеся подмножества): разделяемые файлы в противоположность неразделяемым и неизменяемые (статические) файлы как противоположность изменяемым файлам.

Разделяемые данные - это те, к которым может быть разрешен доступ с различных хостов; неразделяемые - те, которые являются специфическими для данного хоста. Например, домашние каталоги пользователей содержат разделяемые данные, а файлы блокирования устройств (device lock files) являются неразделяемыми.

Неизменяемые (или статические) данные - это исполняемые файлы, библиотеки, документация, и все, что не должно изменяться без вмешательства системного администратора; изменяемые данные - это все, что может изменяться без участия системного администратора.

Должно существовать простое и понятное соответствие между каталогами и типом данных, которые в этом каталоге размещаются: каталоги могут являться точками монтирования для других файловых систем, характеристики которых отличаются от характеристик той файловой системы, в которую они монтируются. Начало пояснений Различать разделяемые и неразделяемые файлы необходимо по следующим причинам: При работе компьютера в сети (т.е. в тех случаях, когда несколько компьютеров взаимосвязаны), всегда имеется достаточно значительная доля таких данных, которые могут использоваться совместно всеми компьютерами, что позволяет экономить дисковое пространство и облегчает выполнение задач поддержки и обслуживания (task of maintenance). С другой стороны при работе в сети некоторые файлы содержат информацию, которая относится только к данному компьютеру.
Следовательно, эти данные не могут использоваться другими хостами и не могут быть разделяемыми (если не принять специальных мер). Старые реализации файловых систем для UNIX допускали размещение разделяемых и неразделяемых файлов в одних и тех же каталогах, ограничивая тем самым возможность делать разделяемыми по сети большие части файловой системы. Выделение "разделяемых" данных может использоваться, например, для: монтирования (в режиме "только для чтения") раздела /usr (или части /usr) по сети (используя NFS). монтирования раздела /usr (или части раздела /usr) с носителя, допускающего только чтение. CD-ROM является одним из возможных примеров того, как одна копия файловой системы может использоваться другими FHS-совместимыми файловыми системами через "сеть" некоего рода. Различие между "статическими" и "изменяемыми" данными оказывает влияние на структуру файловой системы по двум основным направлениям: Поскольку корневой каталог / содержит как изменяемые, так и статические данные, он должен всегда монтироваться в режиме чтения-записи. Поскольку традиционно каталог /usr содержал как статические, так и изменяемые данные, и поскольку мы теперь хотим монтировать его в режиме "только для чтения" (смотри выше), необходимо найти способ монтировать /usr только для чтения. Этого можно достичь, если создать каталоговую структуру /var, которая монтируется в режиме "чтение-запись" (либо размещается в другом разделе, где разрешены как чтение, так и запись, таком, как /), а в оставшейся части структуры /usr разрешить только чтение. Приведем пример того, как должны распределяться данные для того, чтобы файловая система могла считаться совместимой со стандартом FHS (еще раз повторим, что это только пример, можно привести и другие примеры того, как размещать данные для обеспечения FHS-совместимости).

Разделяемые Неразделяемые
Статические /usr /etc
/opt /boot
Изменяемые /var/mail /var/run
/var/spool/news /var/lock
Таблица 2.1
Конец пояснений

Filesystem Hierarchy Standard


Filesystem Hierarchy Standard - 3.10 /lib<qual> : Alternate format essential shared libraries (optional) Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /lib<qual> : Основные разделяемые библиотеки альтернативных форматов (optional)

Назначение Более одного варианта каталога /lib может существовать в системах, поддерживающих более одного формата исполняемых файлов, когда для каждого формата требуется свой отдельный вариант разделяемых библиотек.

Требования Если одна или несколько таких директорий существует, требования к их содержимому те же самые, что и к обычному каталогу /lib, за исключением того, что /lib<qual>/cpp не требуется.

[12] Обычно это используется для поддержки 64-битного или 32-битного формата в системах, поддерживающих несколько форматов исполняемых файлов, и требующих библиотек с одним и тем же названием. В этом случае /lib32 и /lib64 могут быть библиотечными каталогами, а /lib - символической ссылкой на один из них.

[13] Наличие /lib<qual>/cpp все же допускается: тем самым допускаются случаи, когда /lib и /lib<qual> есть фактически одно и то же (один из них является символической ссылкой на другой).

Filesystem Hierarchy Standard - 3.1 Purpose


Filesystem Hierarchy Standard - 3.1 Purpose Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) Корневая файловая система Назначение Корневая файловая система должна содержать все, что необходимо для того, чтобы загрузить операционную систему, а также восстановить ее после сбоев и аварийных ситуаций или переустановить систему из резервной копии. Для загрузки системы необходимо, чтобы в корневом разделе диска было все необходимое для монтирования других файловых систем. Здесь же должны быть необходимые утилиты, файлы конфигурации, информация, необходимая загрузчику, и другие данные, используемые на этапе старта системы. Содержимое каталогов /usr, /opt и /var формируется таким образом, чтобы они могли размещаться в других разделах или даже в файловых системах других типов. Для того, чтобы обеспечить возможность восстановления системы после сбоев, в корневой файловой системе должны присутствовать все утилиты, необходимые опытному администратору для диагностирования проблем и реконструкции системы после любой аварийной систуации. Для восстановления системы с резервной копии в корневой файловой системе должны иметься все утилиты, необходимые для работы с резервными носителями (дискетами, магнитными лентами и так далее). НАЧАЛО ПОЯСНЕНИЙ

В противовес изложенным соображениям, в силу которых очень многое требуется разместить в корневой каталоговой системе, стоит подумать о том, чтобы поддерживать размер корневой файловой системы настолько малым, насколько это только возможно. Желание сохранить размер корневой файловой системы разумно малым возникает по нескольким причинам: Она может располагаться на носителях очень малого объема. Корневая файловая система содержит много конфигурационных файлов с данными, относящимися только к данной конкретной системе. Примерами таких данных может служить ядро, которое является специфичным для данной системы, индифидуальное имя хоста и так далее. Отсюда следует, что корневая файловая система не должна быть разделяемой, то есть доступной с других компьютеров сети.
Поддержание малого размера корневой файловой системы на серверах сети минимизирует количество потерь дискового пространства, возникающих из-за необходимости хранить неразделяемые по сети файлы. Кроме того, появляется возможность использовать рабочие станции с малыми по объему локальными жесткими дисками. Даже если вы имеете возможность разместить корневую файловую систему в большом разделе диска, и можете заполнить ее любыми данными по своему усмотрению, стоит помнить и о том, что у некоторых людей корневой раздел имеет меньший размер. Если у вас в ней установлено много файлов, вы можете натолкнуться на несовместимость с другими системами, в которых корневая файловая система размещена в разделе меньшего объема. Если вы разработчик, тогда вы можете превратить ваше допущение в проблему для большого числа пользователей. Сбои диска, вследствии которых разрушается корневая файловая система, представляют бОльшую проблему, чем сбой в любом другом разделе. Малая корневая файловая система менее подвержена разрушению в результате системных сбоев. Программы или приложения никогда не должны создавать или предполагать наличие каких-то файлов или подкаталогов в корневой директории. Другие области файловой иерархии FHS предоставляют более чем достаточно места для любого пакета. Существует несколько причин, по которым создание нового подкаталога в корневой файловой системе запрещено: Создание каталога требует выделения пространства в корневом разделе диска, а системный администратор может иметь желание поддерживать этот раздел малым и по возможности простым, либо из соображений безопасности, либо для повышения производительности. Это приводит к тому, что разрушает порядок, который системный администратор заводит для того, чтобы иметь возможность устанавливать единую структуру каталогов на монтируемых томах. (It evades whatever discipline the system administrator may have set up for distributing standard file hierarchies across mountable volumes.) КОНЕЦ ПОЯСНЕНИЙ

Filesystem Hierarchy Standard - 3.2 Requirements


Filesystem Hierarchy Standard - 3.2 Requirements Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) Требования Следующие каталоги или символические ссылки на каталоги должны иметься в /.

"/"
bin
boot
dev
etc
lib
mnt
opt
sbin
tmp
usr
var
"Корневой каталог"
Основные исполняемые команды
Статические файлы для загрузчика
Специальные файлы устройств
Специфичные для данного хоста конфигурационный данные
Основные разделяемые библиотеки и модули ядра
Точка монтирования для временно подключаемых файловых систем
Дополнительные пакеты программного обеспечения
Основные системные утилиты
Временные файлы
Каталоговая структура второго уровня
Переменные данные

Дерево 3.2.1

Каждый каталог из перечисленных выше подробно рассматривается далее в отдельном разделе. Каждому из каталогов /usr и /var посвящен целый раздел в этом документе в силу сложности этих каталогов.



Filesystem Hierarchy Standard - 3.4 /bin : Essential user command binaries (for use by all users)


Filesystem Hierarchy Standard - 3.4 /bin : Essential user command binaries (for use by all users) Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /bin : Основные исполняемые файлы (доступные всем пользователям) Назначение Каталог /bin содержит команды, которые могут использоваться как системным администратором, так и рядовыми пользователями, причем только те команды, которые необходимы, когда никакая другая файловая система еще не смонтирована (например, в однопользовательском режиме). В этом каталоге могут также содержаться команды, которые используются не напрямую пользователем, а через скрипты. Требования В каталоге /bin не должно быть подкаталогов.

В /bin должны иметься следующие команды или символические ссылки на соответствующие команды:

cat утилита для конкатенации файлов с отображением результата на стандартный вывод
chgrp утилита для изменения аттрибута принадлежности файла группе
chmod утилита для изменения прав доступа к файлу
chown утилита для изменения владельцев файла
cp утилита для копирования файлов и каталогов
date утилита для вывода или изменения системной даты и времени
dd утилита для для преобразования и копирования файлов
df утилита, информирующая об использовании дискового пространства в файловых системах
dmesg утилита для вывода сообщений, записанных в буфере ядра
echo утилита для отображения строки текста
false утилита, не выполняющая никаких действий и возращающая статус завершения "не успешно"
hostname утилита, показывающая или устанавливающая системное имя хоста
kill утилита для посылки сигналов процессам
ln утилита для задания ссылок на файлы
login утилита, открывающая сессию работы пользователя в системе
ls утилита для вывода списка файлов в каталоге
mkdir утилита для создания каталогов
mknod утилита для создания специальных файлов устройств блочного или символьного типов
more утилита для постраничного вывода текста
mount утилита для монтирования файловых систем
mv утилита для перемещения/переименования файлов
ps утилита, возвращающая статус выполняющихся процессов
pwd утилита, возвращающая имя текущего рабочего каталога
rm утилита удаления файлов или каталогов
rmdir утилита удаления пустых каталогов
sed потоковый редактор `sed'
sh командная оболочка Борна
stty утилита для изменения установок или вывода информации об установках терминальной линии
su утилита смены идентификатора пользователя
sync утилита для сброса на диск содержимого буферов кеш-памяти
true утилита, не выполняющая никаких действий и возращающая статус завершения "успешно"
umount утилита для размонтирования файловых систем
uname утилита для получения информации о системе

Таблица 3.4.2.1

Если /bin/sh не является настоящей оболочкой Борна, это должна быть жесткая или символическая ссылка на реальную программу оболочки.

Обе команды [ и test должны быть расположены вместе, либо в каталоге /bin, либо в /usr/bin. НАЧАЛО ПОЯСНЕНИЙ
Команда bash работает по-разному в зависимости от того, была ли она вызвана как sh или как bash. Кроме того, использование символической ссылки позволяет пользователям легко увидеть, что /bin/sh не является настоящей оболочкой Борна. Требование того, чтобы команды [ и test включались в этот каталог как отдельные исполняемые файлы (даже если они реализованы как встроенные команды оболочки) присутствует также в стандарте POSIX.2. КОНЕЦ ПОЯСНЕНИЙ
Рекомендации Следующие программы или символические ссылки на программы должны находиться в каталоге /bin если только соответствующие пакеты установлены в системе:

csh оболочка C-shell (optional)
ed редактор `ed' (optional)
tar утилита архивации tar (optional)
cpio утилита архивации cpio (optional)
gzip утилита сжатия (компрессии), разработанная в рамках проекта GNU (optional)
gunzip утилита декомпрессии, разработанная в рамках проекта GNU (optional)
zcat утилита декомпрессии, разработанная в рамках проекта GNU (optional)
netstat утилита сетевой статистики (optional)
ping утилита тестирования сети с помощью протокола ICMP (optional)
Таблица 3.4.3.2 Если файлы gunzip и zcat существуют, они должны быть символическими или жесткими ссылками на gzip. /bin/csh может быть символической ссылкой либо на /bin/tcsh, либо на /usr/bin/tcsh. НАЧАЛО ПОЯСНЕНИЙ
Команды tar, gzip и cpio необходимы для восстановления системы (в предположении, что каталог / доступен). Если же необходимость восстановления системы из корневого раздела отсутствует (например, в случае загрузки бездисковых рабочих станций, когда каталог /usr монтируется посредством протокола NFS) эти команды могут отстутствовать и в каталоге /bin. Если восстановление системы планируется проводить по сети, то файлы программ ftp или tftp (вместе со всем, что необходимо для установления соединения по протоколу ftp) должны быть размещаться в корневом разделе диска.
КОНЕЦ ПОЯСНЕНИЙ
[1] Исполняемые файлы, которые не так важны, чтобы быть расположенными в каталоге /bin, должны размещаться в каталоге /usr/bin.Те утилиты, которые необходимы только рядовым пользователям (файлы системы X Window, chsh, и так далее) обычно не так необходимы, чтобы размещаться в корневой файловой системе (в корневом разделе диска).

Filesystem Hierarchy Standard - 3.5 /boot : Static files of the boot loader


Filesystem Hierarchy Standard - 3.5 /boot : Static files of the boot loader Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /boot : Статические файлы для системного загрузчика

Назначение Этот каталог содержит все, что необходимо в процессе загрузки, исключая конфигурационные файлы и the map installer. Таким образом, в /boot хранятся данные, которые используются до того, как ядро начинает исполнять программы пользователя. Здесь же находятся резервные сохраненные копии главной загрузочной записи (master boot sectors), sector map files, и другие данные, которые не подлежат прямому редактированию.

Specific Options Ядро операционной системы должно быть расположено либо в корневом каталоге /, либо в /boot.

[2] Программы, необходимые загрузчику для организации загрузки файлов, должны быть расположены в /sbin. Конфигурационные файлы загрузчика должны размещаться в /etc.

[3] На некоторых i386 компьютерах в силу аппартаных ограничений может оказаться необходимым разместить каталог /boot на отдельном разделе диска, расположенном целиком в пределах первых 1024 цилиндров загрузочного диска.

Certain MIPS systems require a /boot partition that is a mounted MS-DOS filesystem or whatever other filesystem type is accessible for the firmware. This may result in restrictions with respect to usable filenames within /boot (only for affected systems).

Filesystem Hierarchy Standard - 3.6 /dev : Device files


Filesystem Hierarchy Standard - 3.6 /dev : Device files Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /dev : Специальные файлы устройств

Назначение Каталог /dev - это место расположения специальных файлов устройств.

Рекомендации

Если может потребоваться создавать файлы устройств в /dev вручную, каталог /dev должен содержать команду MAKEDEV, которая может создать файл устройства в случае необходимости. Он может также содержать MAKEDEV.local для любых локальных устройств.

Если требуется, MAKEDEV должен иметь возможность создания любого устройства, которое может быть установлено в системе, а не только тех устройств, которые устанавливаются при какой-либо конкретной реализации.

Filesystem Hierarchy Standard - 3.7 /etc : Host-specific system configuration


Filesystem Hierarchy Standard - 3.7 /etc : Host-specific system configuration Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /etc : Специфичная для данного хоста конфигурационная информация

Назначение Каталог /etc содержит конфигурационные файлы и каталоги, специфичные для данной конкретной системы.

Требования В каталоге /etc не должно быть бинарных файлов.

Следующие каталоги или символические ссылки на каталоги должны быть расположены в /etc:

"/etc"
opt
"Конфигурационная информация для данного хоста"
Конфигурация для /opt

Дерево 3.7.2.1

Рекомендации

Следующие каталоги либо символические ссылки на них должны быть расположены в /etc, если соответствующие пакеты установлены в системе:

"/etc"
X11
sgml
"Конфигурационная информация для данного хоста"
Конфигурация системы X Window (optional)
Конфигурация для SGML и XML (optional)

Дерево 3.7.3.2

Следующие файлы либо символические ссылки на них должны быть расположены в /etc, если соответствующие пакеты установлены в системе:

csh.login Общесистемный инициализационный файл для оболочки C-shell (optional)
exports Список контроля доступа для сетевой файловой системы NFS (optional)
fstab Постоянная информация для монтирования файловых систем (optional)
ftpusers Список контроля доступа для демона FTP (optional)
gateways Файл, содержащий список шлюзов для демона routed (optional)
gettydefs Установки терминала, используемые демоном getty (optional)
group Файл, определяющий списки групп пользователей в системе (optional)
host.conf Файл конфигурации для системы разрешения имен (optional)
hosts Постоянная информация об именах хостов (optional)
hosts.allow Список хостов, с которых разрешен доступ в систему (optional)
hosts.deny Список хостов, с которых запрещен доступ в систему (optional)
hosts.equiv Список доверенных хостов для rlogin, rsh, rcp (optional)
hosts.lpd Список доверенных (разрешенных) имен хостов для демона печати lpd (optional)
inetd.conf Конфигурационный файл для демона inetd (optional)
inittab Конфигурационный файл для init (optional)
issue Сообщение, выдаваемое системой до регистрации пользователя (optional)
ld.so.conf Список дополнительных каталогов для поиска разделяемых библиотек (optional)
motd Сообщение, выдаваемое системой после регистрации пользователя (optional)
mtab Динамически изменяющаяся информация о смонтированных файловых системах (optional)
mtools.conf Конфигурационный файл для mtools (optional)
networks Статическая информация о сетевых именах (optional)
passwd Файл паролей (optional)
printcap База данных с настройками принтеров для lpd (optional)
profile Общесистемный файл инициализации для оболочки, запускаемой при входе пользователя в систему (optional)
protocols Перечень IP-протоколов (optional)
resolv.conf Конфигурационный файл для системы разрешения имен (optional)
rpc Перечень протоколов удаленного вызова процедур (RPC) (optional)
securetty Файл со списком устройств, с которых может заходить пользователь root (optional)
services Имена портов для сетевых сервисов (optional)
shells Список путей доступа для имеющихся в системе оболочек (optional)
syslog.conf Конфигурационный файл для демона syslogd (optional)

Таблица 3.7.3.1

Файл mtab не соответствует неизменяемой природе файлов, размещенных в /etc: он помещен в данный каталог в виде исключения по историческим причинам. /etc/opt : Конфигурационные файлы для /opt

1 Назначение Специфичные для данного хоста конфигурационные файлы для дополнительных пакетов прикладного программного обеспечения должны устанавливаться в каталоги /etc/opt/<package>, где <package> - имя поддерева в /opt, в котором хранятся статические данные для этого пакета. 2 Требования Никаких ограничений на внутреннюю структуру каталога /etc/opt/<package> не какладывается.

Если конфигурационный файл должен располагаться в ином месте для того, чтобы пакет или система функционировали должным образом, этот файл может помещаться в каталог, отличный от /etc/opt/<package>. НАЧАЛО ПОЯСНЕНИЙ Смотри пояснения к /opt.
КОНЕЦ ПОЯСНЕНИЙ
/etc/X11 : Конфигурация для системы X Window (optional) 1 Назначение /etc/X11 - это место размещения всех конфигурационных данных для X11, специфичных для данного хоста. Эта директория необходима для того, чтобы обеспечить локальное управление системой X Window в том случае, когда файловая система /usr монтируется только на чтение. 2 Рекомендация Следующие файлы или символические ссылки должны находиться в /etc/X11, если только соответствующая система установлена:

Xconfig Конфигурационный файл для ранних версий XFree86 (optional)
XF86Config Конфигурационный файл для XFree86 версий 3 и 4 (optional)
Xmodmap Глобальный файл модификации клавиатуры в X11 (optional)
Таблица 3.7.5.2.2 Среди подкаталогов в /etc/X11 могут находиться отдельные подкаталоги с конфигурационной информацией для xdm и других программ (например, для оконнных менеджеров), которые в такой информации нуждаются. /etc/sgml : Конфигурационные файлы для SGML и XML (optional) 1 Назначение Здесь устанавливаются исходные конфигурационные файлы, определяющие параметры верхнего уровня SGML- или XML-систем. Файлы с именами *.conf - это исходные (generic) конфигурационные файлы. Файлы с именами *.cat - это DTD-специфичные централизованные (centralized) каталоги, содержащие ссылки ко всем другим каталогам, необходимым для использования какого-то конкретного DTD. Файл супер-каталога catalog содержит ссылки на все централизованные каталоги. [4] Размещение командных скриптов запуска может осуществляться в соответствии с моделями, принятыми в System V, BSD, или какими-то другими моделями. Более точные спецификации в этой области могут быть установлены будущими версиями настоящего стандарта. [5] Системы, в которых используются теневые пароли, создают дополнительные конфигурационные каталоги и файлы в /etc (/etc/shadow и другие), а также размещают программы в каталоге /usr/sbin (useradd, usermod и другие). [6] В некоторых Linux-системах это может быть символическая ссылка на /proc/mounts; в этом случае исключение не требуется. [7] /etc/X11/xdm содержит конфигурационные файлы для xdm.В большинстве случаев это файлы, которые раньше размещались в /usr/lib/X11/xdm. Неоторые локальные переменные данные для xdm хранятся в /var/lib/xdm. Мы рекомендуем, чтобы оконные менеджеры с одним единственным конфигурационным файлом, который обычно по умолчанию имеет имя .*wmrc, переименовали его в system.*wmrc (если только нет общепринятого альтернативного названия) и не использовать подкаталог. Любой подкаталог для оконного менеджера должен называться так же, как называется исполняемый файл оконного менеджера.

Filesystem Hierarchy Standard - 3.8 /home : User home directories (optional)


Filesystem Hierarchy Standard - 3.8 /home : User home directories (optional) Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /home : Домашние каталоги пользователей (optional)

Назначение Наличие каталога /home - это достаточно стандартное решение, очевидно только, что этот каталог является специфичным для каждого отдельного компьютера.

[8] Разные люди предпочитают размещать пользовательские каталоги в разных местах. Данная секция описывает только предлагаемые варианты размещения домашних каталогов пользователей; тем не менее мы рекомендуем, чтобы все FHS-совместимые дистрибутивы использовали именно каталог /home как место размещения домашних каталогов.

В маленьких системах каждый пользовательский каталог является одним из многих подкаталогов каталога /home, таких как /home/smith, /home/torvalds, /home/operator и так далее. В больших системах (особенно когда каталоги /home являются разделяемыми между многими хостами посредством NFS) полезно объединить домашние каталоги в группы, введя подкаталоги групп такие как /home/staff, /home/guests, /home/students и так далее. Но как бы то ни было структура домашних каталогов различается от хоста к хосту. Следовательно, никакая программа не должна полагаться на какие-то предположения о структуре домашних каталогов.

[9] Если вы хотите разыскать домашний каталог пользователя, вы должны использовать библиотечную функцию getpwent(3), а не полагаться на запись в /etc/passwd, потому что информация о пользователях может храниться на удаленных хостах, используя такие системы, как NIS.

Filesystem Hierarchy Standard - 3.9 /lib : основные разделяемые библиотеки и модули ядра


Filesystem Hierarchy Standard - 3.9 /lib : основные разделяемые библиотеки и модули ядра Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /lib : Основные разделяемые библиотеки и модули ядра

Назначение Каталог /lib содержит те разделяемые библиотеки, которые необходимы для загрузки системы и запуска команд, расположенных в корневой файловой системе, то есть в каталогах /bin и /sbin. Требования По крайней мере один из файлов, соответствующих каждому из следующих шаблонов, должен найтись в данном каталоге (это могут быть либо реальные файлы, либо символические ссылки):

libc.so.* Динамически подсоединяемые библиотеки C (optional)
ld* Компоновщик/загрузчик времени выполнения (The execution time linker/loader) (optional)

Таблица 3.9.2.1

Если препроцессор языка Си установлен, /lib/cpp должен быть ссылкой на него, по историческим причинам. Рекомендации Следующие каталоги или символические ссылки на каталоги должны находиться в /lib, если соответствующая подсистема установлена:

"/lib"
modules
"Основные разделяемые библиотеки и модули ядра"
Загружаемые модули ядра (optional)

Дерево 3.9.3.1

[10] Разделяемые библиотеки, которые необходимы только исполняемым файлам, расположенным в /usr (таким как бинарные файлы системы X Window) НЕ должны располагаться в /lib. Только те разделяемые библиотеки, которые необходимы для запуска программ из /bin и /sbin могут располагаться здесь. В частности, библиотека libm.so.* может быть расположена в /usr/lib, если она не требуется никаким программам из /bin или /sbin.

[11] Обычное местоположение этого бинарного файла - /usr/lib/gcc-lib/<target>/<version>/cpp. /lib/cpp может быть либо прямой ссылкой на этот файл, либо ссылкой на любой другой указатель этого файла, существующий в файловой системе. (Например, часто используется /usr/bin/cpp).

Filesystem Hierarchy Standard - 3.12 /opt : Add-on application software packages


Filesystem Hierarchy Standard - 3.12 /opt : Add-on application software packages Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /opt : Дополнительные пакеты программного обеспечения Назначение Каталог /opt зарезервирован для установки дополнительных пакетов программного обеспечения.

Пакет, который устанавливается в каталог /opt, должен размещать свои статические файлы в отдельной каталоговой структуре /opt/<package>, где <package> - название соответствующего пакета программного обеспечения.

Требования

"/opt"
<package>
"Дополнительные пакеты программного обеспечения"
Статические объекты пакета

Дерево 3.12.2.1

Каталоги /opt/bin, /opt/doc, /opt/include, /opt/info, /opt/lib и /opt/man зарезервированы для использования локальным системным администратором. Пакеты могут предоставлять "front-end" файлы, которые локальный системный администратор может разместить в этих зарезервированных каталогах (либо путем копирования, либо установив ссылку), но любой пакет должен нормально функционировать и в случае отсутствия этих зарезервированных директорий.

Программы, вызываемые на исполнение пользователем, должны располагаться в каталоге /opt/<package>/bin. Если пакет ПО содержит в своем составе страницы обычного в UNIX интерактивного руководства man, они должны устанавливаться в каталог /opt/<package>/man, который должен иметь такую же структуру, как и каталог /usr/share/man.

Файлы пакета, которые являются переменными (изменяемыми при выполнении стандартных операций), должны устанавливаться в /var/opt. Дополнительную информацию ищите в разделе о каталоге /var/opt.

Специфичные для хоста конфигурационные данные должны устанавливаться в /etc/opt. Дополнительную информацию ищите в разделе о каталоге /etc.

Никакие файлы пакета не должны размещаться вне каталогов /opt, /var/opt и /etc/opt, кроме тех файлов, которые должны оказаться в других местах по той причине, что иначе пакет не сможет функционировать нормально.
Например, файлы блокирования устройств должны располагаться в /var/lock, а файлы устройств должны располагаться в /dev. Дистрибутивы могут устанавливать программное обеспечение в каталог /opt, но не должны модифицировать или удалять ПО, установленное местным системным администратором, без разрешения этого самого администратора. НАЧАЛО ПОЯСНЕНИЯ Использование каталога /opt для дополнительного ПО является широко распространенной практикой в сообществе UNIX. The System V Application Binary Interface [AT&T 1990], основанный на System V Interface Definition (Third Edition), предлагает придерживаться для /opt структуры очень похожей на ту, которая определена здесь. Стандарт Intel Binary Compatibility Standard v. 2 (iBCS2) тоже предполагает подобную структуру для /opt. Как правило все данные, необходимые для поддержки функционирования пакета, должны присутствовать в каталоге /opt/<package>, включая файлы, копируемые в /etc/opt/<package> и /var/opt/<package> а также специально создаваемые для пакета каталоги в /opt. Небольшие ограничения на дистрибутивы, использующие /opt, необходимы из-за возможности возникновения конфликтов между ПО, устанавливаемым из дистрибутива, и локально устанавливаемого ПО, особенно в том случае, когда бинарные пакеты используют фиксированные имена каталогов и файлов.
КОНЕЦ ПОЯСНЕНИЙ

Filesystem Hierarchy Standard - 3.13 /root : Home directory for the root user (optional)


Filesystem Hierarchy Standard - 3.13 /root : Home directory for the root user (optional) Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /root : Домашний каталог пользователя root (optional)

Назначение Домашний каталог пользователя root может быть задан разработчиком или определен при инсталляции системы, но рекомендуемое место его расположения по умолчанию - каталог /root.

[14] Если домашний каталог суперпользователя расположен не в корневом разделе диска, необходимо убедиться, что если он не будет найден, то по умолчанию таковым будет назначен каталог /. (Примечание переводчика. Я не совсем уверен, что вышеприведенное предложение является правильным переводом следующего текста: "If the home directory of the root account is not stored on the root partition it will be necessary to make certain it will default to / if it can not be located.")

Мы не рекомендуем использовать бюджет пользователя root для выполнения задач, которые могут быть выполнены непривилегированным пользователем. Бюджет суперпользователя должен использоваться исключительно для системного администрирования. По этой причине мы не рекомендуем размещать подкаталоги для почты и других приложений в домашнем каталоге пользователя root. Почта для таких администраторских ролей как root, postmaster и webmaster должна пересылаться соответствующему пользователю.

Filesystem Hierarchy Standard - 3.14 /sbin : System binaries


Filesystem Hierarchy Standard - 3.14 /sbin : System binaries Стандарт на структуру каталогов файловой системы (Filesystem Hierarchy Standard) /sbin : Системные утилиты

Назначение Утилиты для выполнения задач системного администрирования (и другие команды, используемые только пользователем root) размещаются в /sbin, /usr/sbin и /usr/local/sbin. Каталог /sbin содержит исполняемые файлы, необходимые для загрузки системы и ее воссстановления в различных ситуациях (restoring, recovering, and/or repairing the system) и не попавшие в каталог /bin. Требования Следующие команды или символические ссылки обязательно должны присутствовать в /sbin.

shutdown Команда остановки системы.

Таблица 3.14.2.1

Рекомендации Следующие команды или символические ссылки должны быть размещены в /sbin, если только соответствующие пакеты установлены в системе:

fastboot Команда перезагрузки системы без проверки дисков (optional)
fasthalt Команда остановки системы без проверки дисков (optional)
fdisk Программа переразбиения диска (optional)
fsck Утилита для проверки и восстановления файловых систем (optional)
fsck.* Утилиты для проверки и восстановления отдельных типов файловых систем (optional)
getty Программа getty (optional)
halt Команда остановки системы (optional)
ifconfig Утилита конфигурирования сетевых интерфейсов (optional)
init Первоначальный процесс (optional)
mkfs Команда создания файловой системы (optional)
mkfs.* Команда создания файловой системы конкретного типа (optional)
mkswap Команда создания файла или раздела подкачки (swap-раздела) (optional)
reboot Команда перезагрузки системы (optional)
route Утилита определения таблицы статической IP-маршрутизации (optional)
swapon Утилита подключения механизма свопинга (optional)
swapoff Утилита отключения свопинга (optional)
update Демон периодической очистки системных буферов (optional)

Таблица 3.14.3.2

[15] Когда-то исполняемые файлы, размещаемые теперь в /sbin, помещались в /etc. Программы, которые выполняются после того, когда смонтирован каталог /usr (если монтирование прошло без проблем) обычно размещаются в /usr/sbin.
Локально устанавливаемые программы для системного администрирования должны быть размещены в /usr/local/sbin. [16] Принять решение о том, какие программы разместить в каталогах "sbin", довольно просто: если обычный пользователь (не системный администратор) когда-либо запускает программу, она должна размещаться в одном из каталогов "bin". Обычные пользователи не должны указывать каталоги sbin в списке путей, просматриваемых по умолчанию (в своей переменной PATH). Такие, к примеру, файлы, как chfn, которые пользователи запускают очень редко и только в особых случаях, должны, тем не менее, размещаться в /usr/bin. Команда ping, хотя она абсолютно необходима суперпользователю для решения задач сетевой диагностики и восстановления сети, часто используется и рядовыми пользователями, и по этой причине должна размещаться в /bin. Мы рекомендуем предоставить всем пользователям право на чтение и выполнение для всех файлов, расположенных в /sbin, кроме, может быть тех программ, для которых установлены биты setuid и setgid. Разделение каталогов /bin и /sbin делается не из соображений безопасности и не для того, чтобы лишить пользователей возможности видеть системные утилиты. Целью такого деления является установление явного различия между исполняемыми файлами, которые используются всеми, и теми утилитами, которые в основном используются для решения административных задач. С точки зрения безопасности нет никаких преимуществ в том, чтобы сделать /sbin недоступным для пользователей.

Filesystem Hierarchy Standard - 3.15 /tmp : Temporary files


Filesystem Hierarchy Standard - 3.15 /tmp : Temporary files Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /tmp : Временные файлы

Назначение Каталог /tmp должен быть доступен для программ, которым необходимы временные файлы.

Программы не должны предполагать, что какой-либо файл в каталоге /tmp сохранится при следующем запуске программы. НАЧАЛО ПОЯСНЕНИЙ Стандарт IEEE P1003.2 (POSIX, part 2) выдвигает требования, аналогичные сформулированным выше.

Хотя данные, сохраняемые в каталоге /tmp могут удаляться по правилам, специфичным для каждого хоста, рекомендуется удалять все файлы и каталоги в /tmp при каждой загрузке системы.

FHS вводит последнюю рекомендацию на основе исторических прецедентов и общей практики, но не считает ее обязательным требованием, поскольку вопросы системного администрирования не являются предметом настоящего стандарта.
КОНЕЦ ПОЯСНЕНИЙ

Filesystem Hierarchy Standard - 4.1 Purpose


Filesystem Hierarchy Standard - 4.1 Purpose Стандартная иерархия файловых систем
(Filesystem Hierarchy Standard) Иерархия /usr

Назначение Каталог /usr - это второй главный раздел файловой системы (is the second major section of the filesystem). /usr содержит разделяемые данные, предназначенные только для чтения. Это означает, что /usr может быть доступен с различных FHS-совместимых хостов и права записи в него не должно быть. Любая информация, которая является специфичной для конкретного хоста или может изменяться со временем, должна записываться в другое место.

Большие программные пакеты не должны использовать непосредственно подкаталоги каталога /usr в этой иерархии. (Large software packages must not use a direct subdirectory under the /usr hierarchy.)



Filesystem Hierarchy Standard - 4.2 Requirements


Filesystem Hierarchy Standard - 4.2 Requirements Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Требования Следующие каталоги или символические ссылки на каталоги должны присутствовать в /usr.

"/usr"
bin
include
lib
local
sbin
share
"Каталоговоая структура второго уровня"
Большая часть пользовательских команд
Файлы заголовков (header files), включаемые в программы на языке C
Библиотеки
Каталоговая структура Local (пустая непосредственно после инсталляции системы)
Системные утилиты, не являющиеся жизненно-важными (Non-vital system binaries)
Архитектурно-независимые данные

Дерево 4.2.1



Filesystem Hierarchy Standard - 4.3 Specific Options


Filesystem Hierarchy Standard - 4.3 Specific Options Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Рекомендации

"/usr"
X11R6
games
lib<qual>
src
"Каталоговая структура второго уровня"
X Window System, version 11 release 6 (optional)
Игры и обучающие программы (optional)
Библиотеки для альтернативных форматов (optional)
Исходные коды (optional)

Дерево 4.3.1

Исключение сделано для системы X Window в силу сложившихся традиций и широко распространенной практики.

Могут создаваться следующие символические ссылки на каталоги. /usr/spool -> /var/spool /usr/tmp -> /var/tmp /usr/spool/locks -> /var/lock

Эта возможность обусловлена необходимостью сохранить совместимость со старыми системами до тех пор, пока все реализации не начнут использовать каталоги, размещенные непосредственно в /var.

Если система уже не требует наличия указанных ссылок, они могут быть удалены, если есть такое желание.

Filesystem Hierarchy Standard - 4.4 /usr/X11R6 : X Window System, Version 11 Release 6 (optional)


Filesystem Hierarchy Standard - 4.4 /usr/X11R6 : X Window System, Version 11 Release 6 (optional) Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/X11R6 : X Window System, Version 11 Release 6 (optional)

Назначение Эта каталоговая структура зарезервирована для системы X Window System, version 11 release 6, и относящихся к ней файлов.

Для некоторого упрощения и сохранения совместимости XFree86 с системой X Window для других типов операционных систем должны быть созданы следующие символические ссылки, если только каталог /usr/X11R6 существует:

/usr/bin/X11 -> /usr/X11R6/bin /usr/lib/X11 -> /usr/X11R6/lib/X11 /usr/include/X11 -> /usr/X11R6/include/X11

В общем случае программное обеспечение не должно использовать перечисленные символические ссылки при инсталляции или в целях управления. Они предназначены только для пользователей. Трудности связаны с версиями выпусков системы X Window -- в переходный период невозможно узнать, какая версия X11 используется. Рекомендации Специфичные для каждого хоста данные в каталоге /usr/X11R6/lib/X11 должны использоваться только в демонстрационных целях. Приложения, которым необходима информация о текущей конфигурации хоста, должны искать ее в каталоге /etc/X11, куда могут быть сделаны ссылки из каталога /usr/X11R6/lib.

[17] Примерами таких конфигурационных файлов могут служить Xconfig, XF86Config или system.twmrc.

Filesystem Hierarchy Standard - 4.5 /usr/bin : Most user commands


Filesystem Hierarchy Standard - 4.5 /usr/bin : Most user commands Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/bin : Большая часть команд пользователя (Most user commands)

Назначение Это основное место для размещения исполняемых файлов системы. Рекомендации Следующие каталоги или символические ссылки на каталоги должны быть присутствовать в /usr/bin, если только соответствующие пакеты установлены в системе:

"/usr/bin"
mh
"Исполняемые файлы, которые не нужны в однопользовательском режиме"
Команды для системы обработки почты MH (MH mail handling system) (optional)

Дерево 4.5.2.1

/usr/bin/X11 должен быть символической ссылкой на /usr/X11R6/bin если последний существует.

Следующие файлы или символические ссылки на файлы должны быть размещены в /usr/bin, если только соответствующие пакеты установлены в системе:

perl Язык Perl (The Practical Extraction and Report Language) (optional)
python Интерпретирующий язык Python (optional)
tclsh Оболочка интерпретатора Tcl (optional)
wish Оболочка Tcl/Tk (optional)
expect Программа для организации интерактивного диалога (optional)

Таблица 4.5.2.1

НАЧАЛО ПОЯСНЕНИЙ Поскольку интерпретаторы скриптов оболочки (вызываемые командой вида #!<path> в первой строке скрипта) не могут полностью полагаться на эту строку, имеет смысл стандартизовать их расположение. Размещение интерпретаторов оболочек Борна и C-shell уже зафиксировано в каталоге /bin, но интерпретаторы языков Perl, Python и Tcl часто размещаются в самых разных местах. В каталоге /usr/bin можно оставить только символические ссылки на действительное местоположение интерпретаторов.
КОНЕЦ ПОЯСНЕНИЙ

Filesystem Hierarchy Standard - 4.6 /usr/include : Directory for standard include files.


Filesystem Hierarchy Standard - 4.6 /usr/include : Directory for standard include files. Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/include : Каталог для стандартных подключаемых файлов.

Назначение Это место, где должны быть размещены все системные подключаемые файлы общего пользования для языка программирования C. Рекомендации Следующие каталоги или символические ссылки на каталоги должны быть в /usr/include, если соответствующие подсистемы установлены:

"/usr/include"
bsd
"Подключаемые файлы"
BSD-совместимые подключаемые файлы (optional)

Дерево 4.6.2.1

Символическая ссылка /usr/include/X11 должны указывать на /usr/X11R6/include/X11, если тлько последний существует.

Filesystem Hierarchy Standard - 4.7 /usr/lib : Libraries for programming and packages


Filesystem Hierarchy Standard - 4.7 /usr/lib : Libraries for programming and packages Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/lib : Библиотеки для программирования и приложений

Назначение Каталог /usr/lib содержит объектные файлы, библиотеки и внутренние исполняемые файлы, которые не могут вызываться непосредственно пользователями из командной строки или скриптов оболочки.

Приложения могут использовать отдельные подкаталоги в /usr/lib. Если приложение использует подкаталог, все архитектурно-зависимые данные, используемые только этим приложением, должны размещаться внутри этого подкаталога.

Рекомендации

По историческим причинам /usr/lib/sendmail должен быть символической ссылкой на /usr/sbin/sendmail, если последний существует.

Если /lib/X11 существует, /usr/lib/X11 должен быть символической ссылкой на /lib/X11, либо на тот каталог, на который ссылается /lib/X11.

[18] Различные архитектурно-зависимые статические файлы и подкаталоги, специфичные для отдельных приложений, должны размещаться в /usr/share.

[19] Например, подкаталог perl5 для модулей и библиотек Perl 5.

[20] Некоторые исполняемые команды, такие как makewhatis и sendmail тоже по традиции размещаются в /usr/lib. makewhatis - это внутреннй исполняемый файл и должен размещаться в подкаталоге для бинарных файлов; пользователям предоставляется доступ только к catman. Исполняемые файлы последних версий sendmail теперь по умолчанию располагаются в /usr/sbin. Кроме того, системы, использующие sendmail-совместимые агенты передачи почты, должны делать /usr/sbin/sendmail символической ссылкой к соответствующему исполняемому файлу.

[21] Специфичные для каждого хоста данные для системы X Window не должны размещаться в /usr/lib/X11. Специфичные для хоста конфигурационные файлы, такие как Xconfig или XF86Config должны храниться в /etc/X11. Это требование относится и к таким фонфигурационным данным, как system.twmrc, даже если это только символическая ссылка на более общий конфигурационный файл (вероятно в /usr/X11R6/lib/X11).

Filesystem Hierarchy Standard - 4.8 /usr/lib<qual> : Alternate format libraries (optional)


Filesystem Hierarchy Standard - 4.8 /usr/lib<qual> : Alternate format libraries (optional) Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/lib<qual> : Библиотеки для альтернативных форматов (optional)

Назначение /usr/lib<qual> выполняет ту же роль, что и каталог /usr/lib, но по отношению к альтернативным форматам исполняемых файлов, за исключением того, что символические ссылки /usr/lib<qual>/sendmail и /usr/lib<qual>/X11 не требуются.

[22] В случае, когда /usr/lib и /usr/lib<qual> есть фактически одно и то же (один из них есть просто символическая ссылка на другой) эти файлы и подкаталоги для отдельных приложений будут существовать.

Filesystem Hierarchy Standard - 4.9 /usr/local : Local hierarchy


Filesystem Hierarchy Standard - 4.9 /usr/local : Local hierarchy Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/local : Каталог для локального ПО (Local hierarchy)

Назначение Каталоговая структура /usr/local используется системным администратором в тех случаях, когда он устанавливает программное обеспечение, которое будет использоваться локально в рамках данного хоста. Этот каталог не должен перезаписываться при обновлениях системного программного обеспечения. Он может использоваться для программ и данных, не попавших в каталог /usr, доступ к которым разрешен с других хостов.

Локально устанавливаемое программное обеспечение должно располагаться не в /usr, а в /usr/local если только его установка производится не в целях замены или обновления ПО в /usr. Требования Следующие каталоги или символические ссылки на каталоги должны иметься в /usr/local

"/usr/local"
bin
games
include
lib
man
sbin
share
src
"Каталог для локального ПО"
Локальные исполняемые файлы
Локально установленные игровые приложения
Локальные заголовочные файлы для C
Локальные библиотеки
Локальные онлайновые руководства
Локальные системные исполняемые файлы
Архитектурно-независимые каталоговая структура для локального ПО
Локально установленные исходные коды

Дерево 4.9.2.1

Никаких каталогов, кроме перечисленных выше, не должно быть в /usr/local после первой установки FHS-совместимой системы. Рекомендации Если каталоги /lib<qual> или /usr/lib<qual> существуют, аналогичные каталоги должны иметься и в /usr/local.

[23] Программное обеспечение, расположенное в / или /usr может быть перезаписано при обновлениях системы (хотя мы рекомендуем, чтобы дистрибутивы не перезаписывали данные в /etc в таких обстоятельствах). По этой причине локально устанавливаемое программное обеспечение не должно размещаться за пределами каталога /usr/local без достаточных на то оснований.

Filesystem Hierarchy Standard - 4.10 /usr/sbin : Non-essential standard system binaries


Filesystem Hierarchy Standard - 4.10 /usr/sbin : Non-essential standard system binaries Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/sbin : Не обязательные стандартные системные команды

Назначение Этот каталог содержит любые не обязательные системные команды, используемые исключительно системным администратором. Программы для выполнения задач системного администрирования, которые необходимы для восстановления системы, монтирования /usr, или для других самых важных системных задач, должны размещаться в /sbin.

[24] Локально устанавливаемые программы для системного алминистрирования должны размещаться в /usr/local/sbin.

Filesystem Hierarchy Standard - 4.11 /usr/share : Architecture-independent data


Filesystem Hierarchy Standard - 4.11 /usr/share : Architecture-independent data Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/share : Архитектурно-независимые данные Назначение Каталоговая структура /usr/share предназначена для всех файлов, которые предназначены только для чтения и не зависят от архитектуры.

Эта каталоговая структура предназначена для того, чтобы хранить файлы, используемые всеми архитектурными платформами данной ОС. Так, например, компьютеры на платформах i386, Alpha и PPC могут поддерживать один общий каталог /usr/share, который монтируется на отдельных компьютерах. Заметим, однако, что /usr/share обычно не предназначен для того, чтобы быть разделяемым различными операционными системами или различными версиями одной и той же ОС (or by different releases of the same OS).

Любая программа или пакет, который содержит или требует данных, не подлежащих модификации, должны хранить эти данные в каталоге /usr/share (или /usr/local/share, если пакет установлен локально). Рекомендуется использовать для этих целей подкаталоги каталога /usr/share.

Данные игровых программ, сохраняемые в /usr/share/games, должны быть чисто статическими данными. Любые модифицируемые файлы, такие как файлы результатов игр (score files), протоколы игр и так далее, должны размещаться в каталоге /var/games.

Требования Следующие каталоги или символические ссылки на каталоги должны присутствовать в /usr/share

"/usr/share"
man
misc
"Архитектурно-независимые данные"
Онлайновые руководства
Различные архитектурно-независимые данные

Дерево 4.11.2.1

Рекомендации Следующие каталоги или символические ссылки на каталоги должны иметься в /usr/share, если соответствующие подсистемы установлены:

"/usr/share"
dict
doc
games
info
locale
nls
sgml
terminfo
tmac
zoneinfo
"Архитектурно-независимые данные"
Словари (optional)
Различная документация (optional)
Файлы статических данных для /usr/games (optional)
Основная директория для системы GNU Info (optional)
Локальная информация (optional)
Каталоги сообщений для поддержки языков (Native language support) (optional)
Данные для SGML и XML (optional)
Каталог базы данных для terminfo (optional)
Макросы для troff, не распространяемые с groff (optional)
Конфигурационные файлы и информация о временной зоне (optional)

Дерево 4.11.3.2 Рекомендуется размещать здесь создаваемые приложениями, архитектурно-независимые каталоги. К такого рода каталогам относятся groff, perl, ghostscript, texmf и kbd (Linux) или syscons (BSD). Они могут, однако, из соображений обратной совместимости, располагаться в /usr/lib, at the distributor's discretion. Подобным же образом в дополнение к каталогу /usr/share/games может создаваться каталог /usr/lib/games если разработчик желает разместить тут какие-то данные для своей игры. /usr/share/dict : Словари (optional) Назначение Эта директория содержит списки слов (словари), используемые в системе; обычно в ней находится только файл words для английского языка, который используется утилитой look(1) и различными программами проверки правописания. Файл words может быть ориентирован либо на американский, либо на британский вариант языка (may use either American or British spelling). НАЧАЛО ПОЯСНЕНИЙ Причина того, что здесь размещается только один список слов, состоит в том, что это единственный файл, общий для всех программ проверки правописания. КОНЕЦ ПОЯСНЕНИЙ
Рекомендации Следующие файлы или символические ссылки на файлы должны быть в /usr/share/dict, если соответствующие подсистемы установлены:
words Список слов английского языка (optional)
Таблица 4.11.4.2.1 В системах, где необходим как американский, так и британский английский, можно сделать words ссылкой на /usr/share/dict/american-english или /usr/share/dict/british-english. Списки слов для других языков могут быть добавлены, используя английское название соответствующего языка, например, /usr/share/dict/french, /usr/share/dict/danish, и так далее. В названиях должен, по возможности, использоваться набор символов ISO 8859, соответствующий данному языку; если возможно, надо использовать набор символов Latin1 (ISO 8859-1) (зачастую это невозможно). Другие списки слов тоже могут включаться в этот каталог, если они присутствуют. /usr/share/man : Страницы руководства man Назначение Настоящий раздел детализирует организацию страниц интерактивного руководства man в системе, включая описание каталогов /usr/share/man и /var/cache/man. Исходной директорией (<mandir>) для интерактивного руководства man в системе является каталог /usr/share/man.


Этот каталог содержит информацию о командах и других данных, размещаемых в файловых системах / и /usr. Страницы интерактивного руководства хранятся в каталогах <mandir>/<locale>/man<section>/<arch>. Разъяснения того, что имеется в виду под <mandir>, <locale>, <section> и <arch> даются ниже. Страница интерактивного руководства man разбиты на следующие секции: man1: Пользовательские программы
В этой секции содержатся описания общедоступных команд. Большая часть необходимой пользователям документации к программам расположена здесь. man2: Системные вызовы
Эта секция описывает все системные вызовы (запросы к ядру на выполнение каких-то операций). man3: Библиотеки функций и подпрограмм
В секции 3 описываются юиблиотеки программных процедур, которые не являются прямыми вызовами сервисов ядра. Эта секция, как и секция 2, представляет интерес только для программистов. man4: Специальные файлы
Секция 4 описывает специальные файлы устройств, функции соответствующих драйверов и средства сетевой поддержки, предоставляемые системой. Обычно в эту секцию включается описание файлов устройств, хаходящихся в каталоге /dev и интерфейса ядра для средств поддержки сетевых протоколов. man5: Форматы файлов
Форматы многих файлов данных документированы в секции 5. Речь идет о различных подключаемых файлах, файлах вывода программ, системных файлах и так далее. man6: Игры
В эту секцию включена документация к играм, демо и другим тривиальным программам. Разные люди могут иметь разные мнения о том, насколько важно то, что размещено здесь. man7: Разное
Страницы руководства, которые трудно отнести к какому-то иному разделу, размещаются в секции 7. Здесь вы найдете, к примеру, описание troff и других средств для обработки текста. man8: Системное администрирование
Программы, используемые системным администратором для выполнения системных операций и поддержки работоспособности системы документированы в этой секции. Некоторые из этих программ бывают полезны иногда и обычным пользователям. Рекомендации Следующие каталоги или символические ссылки на каталоги должны быть в /usr/share/<mandir>/<locale>, если только она не пуста.
"<mandir>/<locale>"
man1
man2
man3
man4
man5
man6
man7
man8
"Иерархия страниц интерактивного руководства"
Пользовательские программы (optional)
Системные вызовы (optional)
Библиотечные вызовы (optional)
Специальные файлы (optional)
Форматы файлов (optional)
Игры (optional)
Разное (optional)
Системное администрирование (optional)



Дерево 4.11.5.2.3 Компонент <section> задает секцию руководства. Некоторые дополнения должны быть сделаны в структуре каталога /usr/share/man для поддержки страниц руководства, написанных на разных (или нескольких) языках. При внесении этих изменений необходимо иметь в виду место расположения и ссылки на эти страницы. Кроме того, приходится учитывать такие особенности языка как различия, обусловленные географическими факторами и различными кодировками. Способ именования специфичных для языка подкаталогов /usr/share/man основан на Приложении E стандарта POSIX 1003.1, которое задает формат строки, идентифицирующей локаль, -- это общепринятый метод определения особенностей, определяемых культурой той или иной страны. Строка <locale> имеет следующий формат: <language>[_<territory>][.<character-set>][,<version>] Поле <language> должно браться из стандарта ISO 639 (коды для представления названий языков). Оно должно состоять из двух символов и записываться только в нижнем регистре. Поле <territory> представляет собой, если это возможно, двух-буквенный код из ISO 3166 (спецификация представления названий стран). (a specification of representations of countries). (Большинство людей знакомы с двухбуквенными кодами, используемыми для обозначения стран в почтовых адресах. ). Это поле должно состоять из двух символов, записываемых только в верхнем регистре (заглавными буквами), Поле <character-set> представляет собой стандартное описание кодировки (the character set). Если поле <character-set> представлено только цифрами, эти цифры представляют номер международного стандарта, описывающего набор символов (the number represents the number of the international standard describing the character set). Рекомендуется, если это возможно, чтобы это было числовое представление (в особенности стандартов ISO), не включающее дополнительных символов пунктуации, и чтобы любые символы были в нижнем регистре. После поля <character-set> может располагаться параметр <version>, который отделяется запятой.


Этот параметр может использоваться для выделения каких-то культурных различий; например, dictionary order versus a more systems-oriented collating order. Настоящий стандарт рекомендует не использовать поле <version>, если только это не является необходимым. Системы, которые используют только один язык и набор символов для все страниц интерактивного руководства, могут опустить подстроку <locale> и хранить все страницы руководства в <mandir>. Например, системы, в которых страницы руководства имеются только на английском языке, причем в кодировке ASCII, могут хранить все страницы документации (каталоги man<section>) прямо в /usr/share/man. (Фактически это традиционное их местоположение.) Страны, для которых есть общепринятый стандарт кодвого набора символов, могут опустить поле <character-set>, но мы настоятельно рекомендуем включить его, особенно для стран с несколькими конкурирующими стандартами. Различные примеры:
Язык Территория Набор символов (Character Set) Каталог
Английский -- ASCII /usr/share/man/en
Английский Великобритания ASCII /usr/share/man/en_GB
Английский Соединенные Штаты ASCII /usr/share/man/en_US
Французский Канада ISO 8859-1 /usr/share/man/fr_CA
Французский Франция ISO 8859-1 /usr/share/man/fr_FR
Немецкий Германия ISO 646 /usr/share/man/de_DE.646
Немецкий Германия ISO 6937 /usr/share/man/de_DE.6937
Немецкий Германия ISO 8859-1 /usr/share/man/de_DE.88591
Немецкий Швейцария ISO 646 /usr/share/man/de_CH.646
Японский Япония JIS /usr/share/man/ja_JP.jis
Японский Япония SJIS /usr/share/man/ja_JP.sjis
Японский Япония UJIS (or EUC-J) /usr/share/man/ja_JP.ujis
Таблица 4.11.5.2.2 Аналогичным образом некоторые изменения должны быть сделаны для страниц руковоства, которые зависят от архитектуры, таких как описания драйверов устройств или низкоуровневых команд системного администрирования. Таковые должны быть размещены в подкаталогах <arch> в соответсвующем каталоге man<section>; например, man-страница для команды ctrlaltdel(8) для архитектуры i386 может быть расположен в /usr/share/man/<locale>/man8/i386/ctrlaltdel.8. Страницы руководства для команд и данных, размещаемых в /usr/local, хранятся в /usr/local/man.


Страницы руководства для X11R6 хранятся в /usr/X11R6/man. Отсюда следует, что иерархия страниц руководства в системе должна иметь ту же самую структуру, что и /usr/share/man. Секции руководства, отформатированные для вывода командой cat (cat<section>), тоже могут располагаться в подкаталогах каталога <mandir>/<locale>, но это не обязательно и оне не могут заменять страницы руководства в формате nroff. Нумерация секций от "1" до "8" определена традициями. В общем случае имена файлов для страниц руководства, расположенных в определнной секции, оканчиваются расширением вида .<section>. Кроме того, некоторые большие массивы страниц руководства, относящихся к определенным приложениям, могут иметь дополнительный суффикс, добавляемый к имени файла со страницей руководства. Например, для системы обработки почты MH файлы руководства должны иметь лополнительный суффикс mh в имени файла. Все страницы руководства для системы X Window System должны иметь дополнение x к имени файла. Обычай размещения страниц интерактивного руководства для различных языков в соответствующих подкаталогах каталога /usr/share/man распространяется также на другие структуры каталогов с руководствами, такие как /usr/local/man и /usr/X11R6/man. (Эта часть стандарта применяется также к каталоговой структуре /var/cache/man, рассматриваемой ниже.) /usr/share/misc : Различные архитектурно-независимые данные Этот каталог содержит различные архитектурно-независимые файлы, для которых не требуется отдельный подкаталог в /usr/share. Рекомендации Следующие файлы или символические ссылки на файлы должны иметься в /usr/share/misc, если соответствующие подсистемы установлены.
ascii таблица набора символов ASCII (ASCII character set table) (optional)
magic Список магических чисел (list of magic numbers) для команды file, используемый по умолчанию (optional)
termcap База данных с параметрами терминалов (optional)
termcap.db База данных с параметрами терминалов (optional)
Таблица 4.11.6.1.3 Другие (специфические для отдельных приложений) файлы тоже могут размещаться здесь , но разработчики могут при желании разместить их также в /usr/lib. /usr/share/sgml : данные для SGML и XML (optional) Назначение /usr/share/sgml содержит архитектурно-независимые файлы, используемые SGML или XML приложениями, такие как обычные каталоги (ordinary catalogs) (не централизованные, смотри /etc/sgml), DTDs, entities, или таблицы стилей. Рекомендации Следующие каталоги или символические ссылки на каталоги должны быть в /usr/share/sgml, если соответствующие подсистемы установлены:
"/usr/share/sgml"
docbook
tei
html
mathml
"данные для SGML и XML"
docbook DTD (optional)
tei DTD (optional)
html DTD (optional)
mathml DTD (optional)



Дерево 4.11.7.2.4 Другие файлы, которые не относятся к данному DTD, могут располагаться в их собственных подкаталогах. [25] Многие их этих данных когда-то размещались в /usr (man, doc) или /usr/lib (dict, terminfo, zoneinfo). [26] Очевидно, что файлы интерактивного руководства не нужны в корневой файловой системе /, потому что они не требуются во время загрузки системы и не являются необходимыми в чрезвычайных обстоятельствах. [27] Действительно. [28] Например, если /usr/local/man не содержит файлов руководства в секции 4 (Устройства), то /usr/local/man/man4 может не создаваться. [29] Главным исключением из этого правила является Великобритания (the United Kingdom), которая в ISO 3166 обозначается ка `GB', а в большинстве почтовых адресов как `UK'. [30] Вот некоторые из таких файлов: { airport, birthtoken, eqnchar, getopt, gprof.callg, gprof.flat, inter.phone, ipfw.samp.filters, ipfw.samp.scripts, keycap.pcvt, mail.help, mail.tildehelp, man.template, map3270, mdoc.template, more.help, na.phone, nslookup.help, operator, scsi_modes, sendmail.hf, style, units.lib, vgrindefs, vgrindefs.db, zipcodes }

Filesystem Hierarchy Standard - 4.12 /usr/src : Source code (optional)


Filesystem Hierarchy Standard - 4.12 /usr/src : Source code (optional) Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /usr/src : Исходные коды (optional)

Назначение Любые не локальные (Any non-local) исходные коды должны размещаться в этом каталоге.

Filesystem Hierarchy Standard


Filesystem Hierarchy Standard - 5.16 /var/yp : Network Information Service (NIS) database files (optional) Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/yp : Файлы базы данных сетевой информационной системы NIS (optional)

Назначение Переменные данные для сетевой информационной системы (Network Information Service - NIS), ранее известной как Sun Yellow Pages (YP), должны размещаться в этом каталоге. НАЧАЛО ПОЯСНЕНИЙ
Каталог /var/yp является стандартным каталогом для данных NIS (YP) и постоянно используются в документации на NIS и в соответствующих системах.
КОНЕЦ ПОЯСНЕНИЙ

[39] Не путайте NIS с Sun NIS+, которая использует другой каталог, /var/nis.

Filesystem Hierarchy Standard - 5.1 Purpose


Filesystem Hierarchy Standard - 5.1 Purpose Стандартная иерархия файловых систем
(Filesystem Hierarchy Standard) Каталоговая стуктура /var Назначение

Каталог /var содержит файлы с изменяющимися данными. В их число входят каталоги и файлы спулинга, данные об администрировании и логировании, временные файлы.

Некоторые части каталоговой структуры /var не являются разделяемыми между разными системами. К ним относятся /var/log, /var/lock и /var/run. Другие части могут быть разделяемыми, например, /var/mail, /var/cache/man, /var/cache/fonts и /var/spool/news.

Каталоговая структура /var определяется здесь с той целью, чтобы сделать возможным монтирование каталога /usr в режиме только для чтения. Все, что записывается на диск в процессе выполнения системных операций (в противоположность процессам инсталляции и поддержки программного обеспечения), должно размещаться в каталоге /var.

Если /var не может быть размещен в отдельном разделе диска, зачастую предпочительнее переместить каталог /var из корневого раздела в раздел с каталогом /usr. (Иногда это делается с целью уменьшения размера корневого раздела или когда в корневом разделе остается слишком мало места). Однако, /var нельзя делать ссылкой на /usr потому что это затрудняет разделение /usr и /var и может привести к конфликту имен. Лучше уж сделать /var ссылкой на /usr/var.

Приложения в общем случае не должны добавлять каталоги непосредственно в /var. Такие каталоги могут создаваться только в силу каких-то общесистемных соображений и после консультаций через лист рассылки FHS.

Filesystem Hierarchy Standard - 5.2 Requirements


Filesystem Hierarchy Standard - 5.2 Requirements Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Требования Следующие каталоги или символические ссылки на каталоги должны обязательно присутствовать в /var.

"/var"
cache
lib
local
lock
log
opt
run
spool
tmp
"Переменные данные"
Данные из кэшей приложений
Переменная информация о состоянии приложений
Переменные данные для /usr/local
Файлы блокирования устройств и программ
Каталоги и файлы протоколов
Переменные данные для /opt
Данные, относящиеся к запущенным процессам
Данные очередей, создаваемых приложениями
Временные файлы, сохраняемые между перезапусками системы

Дерево 5.2.1

Несколько каталогов "зарезервированы" в том смысле, что они не должны использоваться произвольным образом каким-либо из новых приложений, поскольку это противоречить исторической или локальной практике их использования. Это следующие каталоги: /var/backups /var/cron /var/msgs /var/preserve



Filesystem Hierarchy Standard - 5.3 Specific Options


Filesystem Hierarchy Standard - 5.3 Specific Options Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Рекомендации Следующие каталоги или символические ссылки на каталоги должны иметься в /var, если соответствующие системы установлены:

"/var"
account
crash
games
mail
yp
"Переменные данные"
Протоколы работы процессов (optional)
Дампы памяти при крахе системы (optional)
Временные данные игровых приложений (optional)
User mailbox files (optional)
Файлы базы данных Network Information Service (NIS) (optional)

Tree 5.3.1



Filesystem Hierarchy Standard - 5.4 /var/account : Process accounting logs (optional)


Filesystem Hierarchy Standard - 5.4 /var/account : Process accounting logs (optional) Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/account : Протоколы работы процессов (Process accounting logs) (optional)

Назначение В этом каталоге хранится текущее состояние протоколов работы процессов и обощенные данные об использовании процессов (такие, как используемые в некоторых UNIX-подобных операционных системах программами lastcomm и sa).

Filesystem Hierarchy Standard - 5.5 /var/cache : Application cache data


Filesystem Hierarchy Standard - 5.5 /var/cache : Application cache data Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/cache : Данные кэша приложений Назначение Каталог /var/cache предназначен для кэширования данных для приложений. Необходимость такого кэширования возникает при выполнении медленных процессов ввода-вывода или для хранения промежуточных результатов вычислений. Приложения должны иметь возможность регенерировать кэш и извлечь данные из кэша. В отличие от /var/spool, кэшированные файлы могут быть удалены без потери данных. Данные должны сохраняться между сеансами работы приложения и при перезагрузках системы.

Файлы, расположенные в /var/cache, могут удаляться либо самим приложением, либо администратором. Приложение должно всегда иметь возможность продолжить работу после удаления этих файлов вручную (например, при нехватке дискового пространства). Никаких других требований на формат данных к каталоге кэша не накладывается.

НАЧАЛО ПОЯСНЕНИЙ
Существование отдельной директории для кэшируемых данных позволяет системным администраторам устанавливать для этого каталога правила использования и резервного копирования, отличающиеся от правил, устанавливаемых для других каталогов в /var.
КОНЕЦ ПОЯСНЕНИЙ

Рекомендации

"/var/cache"
fonts
man
www
<package>
"Каталоги кэширования"
Локально сгенерированные шрифты (optional)
Локально отформатированные страницы руководства (optional)
Кэш данных для WWW proxy (optional)
Кэшируемые данные пакета <package> (optional)

Дерево 5.5.2.1

/var/cache/fonts : Локально сгенерированные шрифты (optional) 1 Назначение

Каталог /var/cache/fonts должен использоваться для хранения динамически создаваемых шрифтов. В частности, все шрифты, автоматически генерируемые программой mktexpk, должны размещаться в соответствующим образом названных подкаталогах каталога /var/cache/fonts. 2 Рекомендации Другие динамически создаваемые шрифты могут тоже размещаться в этом дереве, в соответствующим образом названных подкаталогах каталога /var/cache/fonts. /var/cache/man : Локально отформатированные страницы руководства (optional)

1 Назначение Этот каталог предусмотрен для сайтов, в которых файловая система /usr монтируется только на чтение, но в которых допускается создание станиц руководства, отформатированных локально.
Сайты, в которых /usr монтируется с правом записи (например, когда у системы всего в один пользователь) могут не создавать каталога /var/cache/man, а использовать вместо него каталоги cat<section> непосредственно в /usr/share/man. Мы рекомендуем, чтобы большинство сайтов использовали вместо этого один из следующих подходов: Хранить предварительно отформатированные версии всех страниц руководства параллельно с неотформатированными версиями. Не допускать кэширования отформатированных страниц на диск, требуя, чтобы форматирование выполнялось при каждом обращении к конкретной странице руководства. Разрешить хранение отформатированных man-страниц в каталоге /var/cache/man. Структура каталога /var/cache/man должна соответствовать наличию нескольких отдельных деревьев каталогов для страниц руководства и возможности наличия многоязыковой поддержки. В предположении, что неформатированные страницы руководства расположены в каталогах <path>/man/<locale>/man<section>, форматированные страницы должны располагаться в каталоге /var/cache/man/<catpath>/<locale>/cat<section>, где <catpath> получается из <path> путем удаления подстроки usr из начала и подстроки share в конце имени каталога. (Обратите внимание на то, что компонент <locale> может отсутствовать.) Страницы руководства, записанные в /var/cache/man, могут быть перенесены в исходные каталоги структуры man или удалены; подобным же образом отформатированные страницы руководства в каталоге man могут быть удалены, если они не использовались в течение какого-то периода времени. Если заранее отформатированные страницы руководства поставляются с системой на носителе, допускающем только чтение (например, на CD-ROM), они должны устанавливаться в исходную каталоговую структуру man (то есть в /usr/share/man/cat<section>). Каталог /var/cache/man зарезервирован как перезаписываемый кэш для отформатированных страниц руководства. НАЧАЛО ПОЯСНЕНИЙ
Версия 1.2 настоящего стандарта определяла каталог /var/catman для этой структуры.


Теперь ее местоположение перенесено в /var/ cache для более адекватного отражения динамической природы форматированных страниц руководства. Название каталога было заменено на man, что более соответствует динамической структуре форматированных страниц руководства. Имя каталога было заменено на man, для того, чтобы дать возможность включить в каталоговую структуру каталоги для новых форматов, отличных от "cat", таких, например, как PostScript, HTML или DVI.
КОНЕЦ ПОЯСНЕНИЙ
[31] Настоящий стандарт пока не предусматривает поглощение или замену the TeX Directory Structure (документ, который задает размещение файлов формата TeX и структуру соответствующих каталогов), так что этот документ полезно прочитать. Он размещается по адресу . [32] Например, отформатированный вариант страницы /usr/share/man/man1/ls.1 размещается как /var/cache/man/cat1/ls.1, а /usr/X11R6/man/<locale>/man3/XtClass.3x - как /var/cache/man/X11R6/<locale>/cat3/XtClass.3x.

Filesystem Hierarchy Standard - 5.6 /var/crash : System crash dumps (optional)


Filesystem Hierarchy Standard - 5.6 /var/crash : System crash dumps (optional) Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/crash : Дампы памяти при крахе системы (optional)

Назначение Этот каталог предназначен для записи в него содержимого оперативной памяти (дампа памяти) в случае краха системы. На момент выпуска данной версии настоящего стандарта дампы памяти не поддерживаются в системе Linux.

Filesystem Hierarchy Standard - 5.7 /var/games : Variable game data (optional)


Filesystem Hierarchy Standard - 5.7 /var/games : Variable game data (optional) Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/games : Временные данные игровых приложений (optional)

Назначение Здесь должны размещаться любые переменные данные, относящиеся к игровым приложениям, размещенным в /usr. Каталог /var/games должен содержать переменные данные, ранее находившиеся в /usr; статические данные, такие как тексты помощи, описания уровней игры и так далее, должны размещаться в других местах, например, в /usr/share/games. НАЧАЛО ПОЯСНЕНИЙ Каталог /var/games образует отдельную иерархию, которая теперь не объединена с каталогом /var/lib, как это было в версии 1.2 настоящего стандарта. Такое отделение позволяет применять к этому каталогу отдельные стратегии резервного копирования, задания прав доступа и ограничений на использование дискового пространства, а также разрешать совместное использование этих файлов несколькими хостами и уменьшает беспорядок в /var/lib. Кроме того, /var/games традиционно используется в BSD.
КОНЕЦ ПОЯСНЕНИЙ

Filesystem Hierarchy Standard - 5.8 /var/lib : Variable state information


Filesystem Hierarchy Standard - 5.8 /var/lib : Variable state information Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/lib : Переменные данные о состоянии системы Назначение

Эта каталоговая структура содержит информацию о состоянии отдельных приложений или всей системы. Информация о состоянии - это данные, которые программы изменяют в процессе своей работы, относящиеся к одному конкретному хосту. У пользователей нет нужды менять эти файлы для настройки действий пакета.

Информация о состоянии в общем случае используется для сохранения состояния приложения (или группы взаимосвязанных приложений) между двумя запусками или передачи такой информации между двумя одновременно запущенными копиями одного и того же приложения. Информация о состоянии, в общем случае, должна сохраняться после перезагрузки системы, не должна совпадать с протоколируемым выводом программы и данными из очередей (spooled data).

Приложение (или группа взаимосвязанных приложений) должно использовать отдельный подкаталог в /var/lib для своих данных. Имеется одна обязательная директория, /var/lib/misc, которая предназначена для файлов состояния, которые не требуют отдельного подкаталога; остальные подкаталоги должны присутствовать если соответствующее приложение включено в дистрибутив.

/var/lib/<name> - местоположение, которое должно использоваться для каждого пакета из дистрибутива. Разные дистрибутивы могут, естественно, разные имена.

Требования Следующие каталоги или символические ссылки на каталоги должны иметься в /var/lib:

"/var/lib"
misc
"Изменяемая информация о состоянии"
Различные данные о состоянии

Дерево 5.8.2.1

Рекомендации Следующие каталоги или символические ссылки на каталоги должны иметься в /var/lib, если соответствующие подсистемы установлены:

"/var/lib"
<editor>
<pkgtool>
<package>
hwclock
xdm
"Переменные данные о состоянии системы"
Резервные копии редактируемых файлов и данные о состоянии редактора (optional)
Файлы поддержки системы управления пакетами (optional)
Данные о состоянии пакетов и подсистем (optional)
Каталог с данными о состоянии hwclock (optional)
Изменяемые данные для менеджера дисплея (optional)

Дерево 5.8.3.2 /var/lib/<editor> : Резервные копии файлов и информация о состоянии редактора (optional) 1 Назначение Эти каталоги содержат сохраненные файлы, генерируемые при любом неожиданном прекращении работы редактора (такого как elvis, jove, nvi). Другие редакторы могут не требовать каталога для сохранения файлов на случай краха программы, но могут требовать четко определенного места для хранения другой информации в то время, когда редактор запущен. Такая информация может храниться в подкаталогах каталога /var/lib (например, GNU Emacs размещает файлы блокирования в /var/lib/emacs/lock). Другие редакторы могут требовать хранения дополнительной информации о состоянии кроме резервных копий файлов и файлов блокирования - такая информация тоже должна размещаться в /var/lib/<editor>. НАЧАЛО ПОЯСНЕНИЙ
Предыдущие версии Linux, также как все поставщики коммерческих версий, используют /var/preserve для vi или его клонов. Однако, каждый редактор использует свой собственный формат для резервных файлов, создаваемых на случай краха программы, так что для каждого редактора нужна отдельная директория. Специфичные для каждого редактора файлы блокирования обычно сильно отличаются от файлов блокирования устройств или ресурсов, которые хранятся в /var/lock и поэтому хранятся в /var/lib.
КОНЕЦ ПОЯСНЕНИЙ
/var/lib/hwclock : Каталог состояния для hwclock (optional) 1 Назначение Этот каталог содержит файл /var/lib/hwclock/adjtime. НАЧАЛО ПОЯСНЕНИЙ
В FHS 2.1 этот файл был /etc/adjtime, но, поскольку hwclock обновляет его, это, очевидно, некорректно.
КОНЕЦ ПОЯСНЕНИЙ
/var/lib/misc : Различные изменяемые данные 1 Назначение Этот каталог содержит переменные данные, не попавшие в подкаталоги /var/lib. Должны быть предприняты меры по использованию относительно уникальных имен в этом каталоге для того, чтобы избежать конфликта имен. [33] Важное различие между настоящей версией этого стандарта и предыдущими состоит в том, что от приложений не требуется использовать подкаталоги каталога /var/lib. [34] Эта каталоговая структура должна содержать файлы, которые в текущих версиях BSD хранятся в /var/db.В их число входят locate.database и mountdtab, а также базу(ы) символов ядра.

Filesystem Hierarchy Standard - 5.9 /var/lock : Lock files


Filesystem Hierarchy Standard - 5.9 /var/lock : Lock files Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/lock : Файлы блокирования

Назначение Файлы блокирования должны храниться в каталоговой структуре /var/lock.

Файлы блокирования устройств и других ресурсов, используемые многими приложениями, такие как файлы блокирования последовательных портов, которые ранее находились либо в /usr/spool/locks, либо в /usr/spool/uucp, теперь должны размещаться в /var/lock. Названия этих файлов должны формироваться в соответствии с соглашением, согласно которому используется префикс "LCK..", за которым следует базовое имя устройства. Например, для блокирования /dev/ttyS0 должен создаваться файл "LCK..ttyS0".

Внутренняя структура таких файлов блокирования должна соответствовать формату, определенному в HDB UUCP. Формат HDB предусматривает сохранение идентификатора процесса (PID) в виде десяти-байтового десятичного числа, за которым следует символ конца строки. Например, если процесс 1230 создает файл блокирования, в этом файле будет записано 11 символов: пробел, пробел, пробел, пробел, пробел, пробел, один, два, три, ноль и конец строки.

[35] Затем все, кто хочет использовать /dev/ttyS0 может прочитать файл блокирования и действовать соответственно (все файлы блокирования в /var/lock должны быть доступны по чтению всем).

Filesystem Hierarchy Standard - 5.10 /var/log : Log files and directories


Filesystem Hierarchy Standard - 5.10 /var/log : Log files and directories Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/log : Каталоги и файлы протоколов

Назначение Эта директория содержит разнообразные файлы протоколов. Большая часть протоколов должна записываться в этот каталог или соответствующий подкаталог. Рекомендации Следующие файлы или символические ссылки на на файлы должны быть в /var/log, если соответствующая подсистема установлена:

lastlog запись о последнем входе в систему каждого пользователя
messages системные сообщения от syslogd
wtmp записи о всех входах и выходах пользователей в систему

Table 5.10.2.1



Filesystem Hierarchy Standard - 5.11 /var/mail : User mailbox files (optional)


Filesystem Hierarchy Standard - 5.11 /var/mail : User mailbox files (optional) Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/mail : Почтовые ящики пользователей (optional)

Назначение Область спулинга для почты должна размещаться в /var/mail, а имена файлов с сообщениями должны иметь вид <username>.

Файлы почтовых ящиков в этих каталогах должны хранится в формате стандартных почтовых ящиков UNIX (UNIX mailbox format). НАЧАЛО ПОЯСНЕНИЙ
Прежнее логическое местоположение этого каталога (/var/spool/mail ) было изменено для того, чтобы привести FHS в соответствие почти со всеми реализациями UNIX. Это изменение важно с точки зрения обеспечения взаимодействия разных систем, поскольку единая область /var/mail часто используется многими хостами, на которых запущены различные реализации UNIX (despite NFS locking issues).

Важно заметить, что нет требования физически переместить область спулинга в указанный каталог. Однако программы и заголовочные файлы должны быть изменеы так, чтобы они использовали /var/mail.
КОНЕЦ ПОЯСНЕНИЙ

[36] Заметьте, что /var/mail может быть символической ссылкой на другой каталог.

Filesystem Hierarchy Standard - 5.12 /var/opt : Variable data for /opt


Filesystem Hierarchy Standard - 5.12 /var/opt : Variable data for /opt Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/opt : Переменные данные для /opt

Назначение Переменные данные для пакетов, установленных в /opt, должны размещаться в /var/opt/<package>, где <package> - это название структуры каталогов в /opt, в которой хранятся статические данные дополнительного пакета ПО, исключая те случаи, когда размещение явно указано в каком-либо файле из /etc. На внутреннюю структуру каталога /var/opt/<package> никаких ограничений не накладывается. НАЧАЛО ПОЯСНЕНИЙ
Смотри пояснения к /opt.
КОНЕЦ ПОЯСНЕНИЙ

Filesystem Hierarchy Standard - 5.13 /var/run : Run-time variable data


Filesystem Hierarchy Standard - 5.13 /var/run : Run-time variable data Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/run : Переменные данные времени выполнения (Run-time variable data)

Назначение Этот каталог содержит данные, описывающие состояние системы с того момента, как она была загружена (This directory contains system information data describing the system since it was booted). Файлы в этом каталоге должны очищаться (удаляться или урезаться соответствующим образом) в начале процесса загрузки системы. Программы могут иметь подкаталоги в каталоге /var/run; это приветствуется для программ, которые используют более одного файла времени выполнения.

Требования

Внутренний формат для файлов, в которых хранятся идентификаторы процесов (PID), остаются неизменными. Файл должен состоять из идентификатора процесса в коде ASCII, записанном в десятичной нотации, за которым следует символ конца строки. Например, если crond запущен как процесс с номером 25, /var/run/crond.pid будет содержать три символа: два, пять и символ новой строки.

Программы, которые читают PID-файлы, должны быть достаточно гибкими в отношении того, что они воспринимают: то есть они должны игнорировать лишние пробелы, предшествующие ноли, отсутствие завершающего символа новой строки или дополнительные строки в PID-файле. Программы, которые создают PID-файлы, должны использовать простые спецификации, изложенные в предыдущем параграфе.

Файл utmp, в котором хранится информация о том, кто в данный момент использует систему, расположен в этом каталоге.

Программы, которые поддерживают transient UNIX-domain sockets, должны размещать их в этом каталоге.

[37] Непривелигированные пользователи должны быть лишены права записи в каталог /var/run; с точки зрения безопасности предоставление любому пользователю права записи в этот каталог представляет большую угрозу. Файлы с идентификаторами процессов (PID), которые раньше располагались в /etc, должны быть размещены в /var/run. Соглашение об именах этих файлов следующее: <program-name>.pid. Например, PID-файл для демона crond называется /var/run/crond.pid.

Filesystem Hierarchy Standard - 5.14 /var/spool : Application spool data


Filesystem Hierarchy Standard - 5.14 /var/spool : Application spool data Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/spool : Очереди данных для приложений Назначение Каталог /var/spool содержит данные, которые ожидают какой-то последующей обработки. Данные в /var/spool представляют работы, которые должны быть выполнены в будущем (программой, пользователем или администратором); обычно после обработки эти данные удаляются. Рекомендации Следующие каталоги или символические ссылки на каталоги должны присутствовать в /var/spool, если соответствующие подсистемы установлены:

"/var/spool"
lpd
mqueue
news
rwho
uucp
"Каталоги очередей (спулинга)"
Каталог спулинга для принтера (optional)
Очередь исходящей почты (optional)
Каталог спулинга новостей (optional)
Файлы программы Rwhod (optional)
Каталог спулинга для UUCP (optional)

Дерево 5.14.2.1

/var/spool/lpd : Очередь печати для демона LPD (optional) Назначение

Файл блокировки для lpd, lpd.lock, должен размещаться в /var/spool/lpd. Предполагается, что файл блокировки для каждого принтера размещается в каталоге спулинга для этого конкретного принтера и называется lock. Рекомендации

"/var/spool/lpd"
<printer>
"Каталог спулинга для принтера"
Очереди печати для конкретного принтера (optional)

Дерево 5.14.3.2.2

/var/spool/rwho : Файлы для rwhod (optional)

Назначение Этот каталог содержит информацию, необходимую команде rwhod для ответов на запросы других машин в локальной сети. НАЧАЛО ПОЯСНЕНИЙ
Некоторые выпуски BSD используют каталог /var/rwho для хранения этих данных; хотя в других системах такие данные исторически располагались в /var/spool, но в силу того, что они вполне соотвествуют понятию данных, находящихся в очереди, новое местоположение их кажется более правильным.
КОНЕЦ ПОЯСНЕНИЙ

[38] Файлы блокировки для UUCP должны размещаться в каталоге /var/lock. Смотри выше секцию о /var/lock.

Filesystem Hierarchy Standard - 5.15 /var/tmp : Temporary files preserved between system reboots


Filesystem Hierarchy Standard - 5.15 /var/tmp : Temporary files preserved between system reboots Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) /var/tmp : Временные файлы, сохраняемые между перезапусками системы

Назначение Каталог /var/tmp сделан доступным для программ, которым требуется временные файлы или каталоги, которые должны сохраняться между перезагрузками системы. Следовательно, данные, хранящиеся в /var/tmp, являются более постоянными, чем данные в /tmp.

Файлы и каталоги, размещенные в /var/tmp, не должны удаляться, когда система (пере)загружается. Хотя данные, сохраняемые в /var/tmp, обычно удаляются специфичным для каждого сайта образом, рекомендуется удалять их чаще, чем данные в /tmp.

Filesystem Hierarchy Standard - 6.1 Linux


Filesystem Hierarchy Standard - 6.1 Linux Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Linux

Настоящее дополнение к стандарту относится только к операционной системе Linux. / : Корневой каталог

В Linux-системах, если ядро расположено в /, мы рекомендуем использовать для него названия vmlinux или vmlinuz, которые используются в последних версиях исходных кодов ядра Linux. /bin : Основные исполняемые файлы команд пользователя (доступные всем пользователям)

Linux-системы, в которых следующие файлы требуются, должны помещать их в /bin. { setserial }

/dev : Устройства и специальные файлы

Все устройства и специальные файлы в /dev должны соответствовать документу Linux Allocated Devices, который поставляется в составе исходных кодов ядра. Он поддерживается Питером Анвином (H. Peter Anvin) <адрес пропущен>.

Символические ссылки в каталоге /dev должны устанавливаться в Linux-системах не иначе как в соответствии с документом Linux Allocated Devices. НАЧАЛО ПОЯСНЕНИЙ
Требование не создавать символических ссылок произвольным образом выдвигается потому, что локальные установки часто отличаются от ссылок, создаваемых программами установки от разработчиков. Кроме того, если установочный скрипт дистрибутива создает символические ссылки во время инсталляции, эти ссылки часто не обновляются при локальных изменениях в аппаратном обеспечении. Если же ответственно относиться к ним на локальном уровне, они могут использоваться.
КОНЕЦ ПОЯСНЕНИЙ
/etc : Специфичная для данного хоста конфигурационная информация

Если в Linux-системе следующие файлы требуются, они должны размещаться в /etc. { lilo.conf }

/proc : Виртуальные файловые системы для хранения информации о ядре и процессах

Файловая система proc является фактически стандартным для Linux методом обработки информации о системе и процессах, в отличие от других систем, использующих /dev/kmem и другие подобные методы. Мы настоятельно рекомендуем использовать proc для хранения и получения информации о процессах, а также информации о ядре и памяти. /sbin : Основные системные утилиты

В Linux-системах следующие дополнительные файлы размещаются в /sbin. Команды для управления файловой системой ext2fs (Second extended filesystem) (optional): { badblocks, dumpe2fs, e2fsck, mke2fs, mklost+found, tune2fs } Программа установки загрузчика системы (optional): { lilo } Дополнительные файлы в /sbin: Неизменяемые исполняемые файлы:


{ ldconfig, sln, ssync } Статические исполняемые файлы ln (sln) и sync (ssync) используются в тех случаях, когда нормальный ход вещей нарушается. Основное назначение sln (восстанавливать некорректные символические ссылки в /lib после плохо организованного обновления) потеряло теперь былую важность, потому что имеется программа ldconfig (обычно расположенная в /usr/sbin), которая используется для обновления динамических библиотек. Программа sync полезна в некоторых критических ситуациях. Заметим, что эти файлы не обязаны, но могут быть ссылками на стандартные программы ln и sync. Программа ldconfig не обязана размещаться в /sbin, поскольку сайт может использовать запуск ldconfig на этапе начальной загрузки, а не только во время обновления разделяемых библиотек. (Не ясно, имеются ли какие-то преимущества в запуске ldconfig при каждой загрузке системы.) Но даже если это так, некоторые люди любят использовать ldconfig в следующих (часто встречающихся) ситуациях: Я только что удалил /lib/<file>. Я не могу узнать (разыскать) имя библиотеки, потому что ls связано динамически (is dynamically linked), я использую оболочку, которая не имеет встроеной команды ls, а я не знаю, что вместо нее можно использовать "echo *". У меня есть статическая ссылка sln, но я не знаю, что она вызывает. Разное:
{ ctrlaltdel, kbdrate } Чтобы найти выход из ситуации, когда некоторые клавиатуры поставляются с такой высокой скоростю повторения, что оказываются непригодны к использованию, kbdrate может быть в некоторых системах установлена в /sbin. Поскольку действием, которое ядро по умолчанию связывает с нажатием комбинации клавиш Ctrl-Alt-Del, является немедленная перезагрузка, обычно рекомендуется отменить отменить такое поведение перед монтированием корневой файловой системы в режиме только для чтения. Некоторые варианты демона init способны отменить действие Ctrl-Alt-Del, а другие требуют наличия программы ctrlaltdel, которая может быть установлена в таких системах в каталоге /sbin. /usr/include : Файлы заголовков, включаемые в программы на C Эти символические ссылки требуются, если компиляторы языков C или C++ установлены и только для систем, не основанных на glibc. /usr/include/asm -> /usr/src/linux/include/asm-<arch> /usr/include/linux -> /usr/src/linux/include/linux /usr/src : Исходные коды Для систем, основанных на glibc, нет никаких специфических правил для этого каталога.


Для систем, основанных на версиях библиотеки libc, предшествующих glibc, применяются следующие правила: Единственными исходными кодами, которые должны быть размещены в определенном месте, являются исходные коды ядра Linux. Они размещаются в /usr/src/linux. Если установлен компилятор C или C++, а полная версия исходных кодов ядра не установлена, то подключаемые файлы из исходных кодов ядра должны размещаться в следующих каталогах: /usr/src/linux/include/asm-<arch> /usr/src/linux/include/linux где <arch> - название архитектуры системы (например, i386). Замечание: /usr/src/linux может быть символической ссылкой на дерево каталогов с исходными кодами ядра. НАЧАЛО ПОЯСНЕНИЙ
Важно, чтобы подключаемые файлы ядра были расположены в /usr/src/linux, а не в /usr/include, так чтобы не было проблем, когда системные администраторы обновляют версию ядра в первый раз.
КОНЕЦ ПОЯСНЕНИЙ
/var/spool/cron : Задания для демонов cron и at Этот каталог содержит переменные данные для программ-демонов cron и at.

Filesystem Hierarchy Standard - 6 Operating System Specific Annex


Filesystem Hierarchy Standard - 6 Operating System Specific Annex Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Дополнения, специфичные для отдельных типов операционых систем

Этот раздел содержит дополнительные требования и рекомендации, которые применимы только для отдельных операционных систем. Материал в этом разделе не должен противоречить основному стандарту.

Filesystem Hierarchy Standard - 7.1 The FHS mailing list


Filesystem Hierarchy Standard - 7.1 The FHS mailing list Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Список рассылки FHS

Список рассылки FHS располагается по адресу <адрес пропущен>. Для того, чтобы подписаться на рассылку, пошлите сообщение по адресу <адрес пропущен>, текст которого имеет вид "ADD fhs-discuss".

Спасибо Network Operations at the University of California в Сан-Диего, позволившим нам использовать их великолепный сервер почтовых рассылок.

Как было отмечено во введении, пожалуйста не посылайте писем в список рассылки, не проведя предварительных переговоров с редактором FHS или одним из перечисленных ниже разработчиков.

Filesystem Hierarchy Standard - 7.2 Background of the FHS


Filesystem Hierarchy Standard - 7.2 Background of the FHS Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) История стандарта FHS

Процесс создания стандарта на структуру каталогов файловой системы начался в августе 1993 года с попытки упорядочить структуру файлов и каталогов операционной системы Linux. Стандарт FSSTND, ориентированный только на систему Linux, был выпущен 14 февраля 1994 года. Последующие редакции были выпущены 9 октября 1994 и 28 марта 1995 года.

В начале 1995 года с участием сообщества разработчиков системы BSD была поставлена цель создания более общей версии FSSTND, предназначенной не только для Linux, но и для других UNIX-подобных операционных систем. В результате объединенных усилий разработка стандарта сосредоточилась на вопросах, которые являются общими для всех UNIX-подобных систем. В качестве признания расширения сферы охвата действия стандарта его название было изменено на Filesystem Hierarchy Standard или, для краткости, FHS.

Добровольцы, которые активно участвовали в создании стандарта, перечислены в конце настоящего документа. Этот стандарт представляет собой общую точку зрения перечисленных и других участников разработки.

Filesystem Hierarchy Standard - 7.3 General Guidelines


Filesystem Hierarchy Standard - 7.3 General Guidelines Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Чем мы руководствовались

При разработке стандарта мы стремились достичь следующих целей: решить технические проблемы, и вместе с тем уменьшить трудности перехода на стандарт. сделать спецификацию в разумной степени стабильной. заслужить одобрение разработчиков, дистрибьюторов и других лиц, принимающих решения в группах разработчиков, и склонить их к участию в разработке стандарта. создать стандарт, который будет привлекатальным для разработчиков различных UNIX-подобных систем.

Filesystem Hierarchy Standard - 7.4 Scope


Filesystem Hierarchy Standard - 7.4 Scope Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Сфера действия стандарта

Этот документ задает спецификацию стандартной структуры каталогов файловой системы (или иерархию файловой системы), определяя требования к размещению каталогов и файлов, а также содержание некоторых системных файлов.

Стандарт создавался для использования системными интеграторами, разработчиками пакетов программного обеспечения и системными администраторами в процессе создания и поддержки FHS-совместимых файловых систем. Он должен служить в первую очередь как справочник, а не как учебник по построению структуры каталогов (not a tutorial on how to manage a conforming filesystem hierarchy).

Стандарт FHS вырос из предыдущей разработки - стандарта FSSTND на организацию файловой системы в операционной системе Linux. Он является расширением FSSTND, ориентированным в первую очередь на вопросы межсистемного взаимодействия не только между Linux-системами, но в более широкой области, включающей операционные системы типа 4.4BSD. Он учитывает все положительные качества, присущие BSD и другим системам в части поддержки различных архитектур и учета требований работы в гетерогенных сетях.

Хотя этот стандарт и является более всеохватывающим по сравнению с предыдущим вариантом в части стандартизации файловой системы, могут потребоваться его периодические обновления по мере изменения требований со стороны вновь появляющихся технологий. Возможно также, что будут найдены лучшие решения рассатриваемых в стандарте проблем, так что наши решения перестанут быть наилучшими. Поэтому периодически могут появляться как новые редакции стандарта, так и отдельные предложения по его изменению, предназначенные для предварительного обсуждения. Однако одной из наших целей является сохранение обратной совместимости последовательных выпусков стандарта.

Приветствуются любые комментарии, касающиеся содержания стандарта. Любые комментарии или предложения по его изменению могут направляться редактору FHS (Daniel Quinlan <адрес пропущен>) или в список рассылки FHS. Сообщения о типографских или грамматических ошибках должны направляться редактору FHS.

Прежде чем отправить письмо в список рассылки, необходимо связаться с редактором FHS, чтобы не обсуждать старые темы.

Иногда могут возникать вопросы о том, как следует интерпретировать отдельные положения настоящего документа. Если вам требуются какие-то пояснения, обращайтесь к редактору FHS. Поскольку стандарт представляет собой результат соглашения, к которому пришли все участники разработки, необходимо убедиться, что любая интерпретация его положений тоже представляет коллективное мнение. По этой причине может оказаться невозможным немедленно ответить на ваш запрос, если только содержание вопроса не было темой предшествующих дискуссий.

Filesystem Hierarchy Standard - 7.5 Acknowledgments


Filesystem Hierarchy Standard - 7.5 Acknowledgments Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Благодарности

Разработчики стандарта FHS хотели бы поблагодарить разработчиков, системных администраторов и пользователей, котоорые внесли свой вклад в разработку настоящего стандарта. Мы благодарны всем тем, кто помогал писать, составлять и отлаживать настоящий стандарт.

Группа разработки стандарта (The FHS Group) также благордарит тех разработчиков ОС Linux, которые поддержали FSSTND, предшественника настоящего стандарта. Если бы они не продемонстрировали, что FSSTND был полезен (was beneficial), стандарт FHS никогда бы не был создан.

Filesystem Hierarchy Standard - 7.6 Contributors


Filesystem Hierarchy Standard - 7.6 Contributors Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard) Участники разработки

Brandon S. Allbery <address omitted>
Keith Bostic <address omitted>
Drew Eckhardt <address omitted>
Rik Faith <address omitted>
Stephen Harris <address omitted>
Ian Jackson <address omitted>
John A. Martin <address omitted>
Ian McCloghrie <address omitted>
Chris Metcalf <address omitted>
Ian Murdock <address omitted>
David C. Niemi <address omitted>
Daniel Quinlan <address omitted>
Eric S. Raymond <address omitted>
Rusty Russell <address omitted>
Mike Sangrey <address omitted>
David H. Silber <address omitted>
Thomas Sippel-Dau <address omitted>
Theodore Ts'o <address omitted>
Stephen Tweedie <address omitted>
Fred N. van Kempen <address omitted>
Bernd Warken <address omitted>

Таблица 7.6.1



Filesystem Hierarchy Standard - 7 Appendix


Filesystem Hierarchy Standard - 7 Appendix

Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard)

Приложение