Требования
Если одна или несколько таких директорий существует, требования к их содержимому те же самые, что и к обычному каталогу /lib, за исключением того, что /lib<qual>/cpp не требуется.[примечание 13]
[12] Обычно это используется для поддержки 64-битного или 32-битного формата в системах, поддерживающих несколько форматов исполняемых файлов, и требующих библиотек с одним и тем же названием. В этом случае /lib32 и /lib64 могут быть библиотечными каталогами, а /lib - символической ссылкой на один из них.
[13] Наличие /lib<qual>/cpp все же допускается: тем самым допускаются случаи, когда /lib и /lib<qual> есть фактически одно и то же (один из них является символической ссылкой на другой).
Previous: /lib : Основные разделяемые библиотеки и модули ядра
Next: /mnt : Точка монтирования для временно монтируемых файловых систем
Up: Оглавление
Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan
"/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, но не должны модифицировать или удалять ПО, установленное местным системным администратором, без разрешения этого самого администратора.
Следующие каталоги или символические ссылки на каталоги должны присутствовать в /usr/share
"/usr/share" man misc |
"Архитектурно-независимые данные" Он-лайновые руководства Различные архитектурно-независимые данные |
Дерево 4.11.2.1
Следующие каталоги или символические ссылки на каталоги должны иметься в /.
"/" bin boot dev etc lib mnt opt sbin tmp usr var |
"Корневой каталог" Основные исполняемые команды Статические файлы для загрузчика Специальные файлы устройств Специфичные для данного хоста конфигурационный данные Основные разделяемые библиотеки и модули ядра Точка монтирования для временно подключаемых файловых систем Дополнительные пакеты программного обеспечения Основные системные утилиты Временные файлы Каталоговая структура второго уровня Переменные данные |
Дерево 3.2.1
Каждый каталог из перечисленных выше подробно рассматривается далее в отдельном разделе. Каждому из каталогов /usr и /var посвящен целый раздел в этом документе в силу сложности этих каталогов.
Previous: Назначение
Next: Рекомендации
Up: Оглавление
Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan
В каталоге /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.
В каталоге /etc не должно быть бинарных файлов.
Следующие каталоги или символические ссылки на каталоги должны быть расположены в /etc:
"/etc" opt |
"Конфигурационная информация для данного хоста" Конфигурация для /opt |
Дерево 3.7.2.1
Никаких ограничений на внутреннюю структуру каталога /etc/opt/<package> не накладывается.
Если конфигурационный файл должен располагаться в ином месте для того, чтобы пакет или система функционировали должным образом, этот файл может помещаться в каталог, отличный от /etc/opt/<package>.
По крайней мере один из файлов, соответствующих каждому из следующих шаблонов, должен найтись в данном каталоге (это могут быть либо реальные файлы, либо символические ссылки):
libc.so.* | Динамически подсоединяемые библиотеки C (optional) |
ld* | Компоновщик/загрузчик времени выполнения (The execution time linker/loader) (optional) |
Таблица 3.9.2.1
Если препроцессор языка Си установлен, /lib/cpp должен быть ссылкой на него, по историческим причинам.[примечание 11]
Внутренний формат для файлов, в которых хранятся идентификаторы процессов (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.
Previous: /var/opt : Переменные данные для /opt
Next: /var/spool : Очереди данных для приложений
Up: Оглавление
Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan
Следующие каталоги или символические ссылки на каталоги должны присутствовать в /usr.
"/usr" bin include lib local sbin share |
"Каталоговоая структура второго уровня" Большая часть пользовательских команд Файлы заголовков (header files), включаемые в программы на языке C Библиотеки Каталоговая структура Local (пустая непосредственно после инсталляции системы) Системные утилиты, не являющиеся жизненно-важными (Non-vital system binaries) Архитектурно-независимые данные |
Дерево 4.2.1
Previous: Назначение
Next: Рекомендации
Up: Оглавление
Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan
Следующие каталоги или символические ссылки на каталоги должны иметься в /usr/local
"/usr/local" bin games include lib man sbin share src |
"Каталог для локального ПО" Локальные исполняемые файлы Локально установленные игровые приложения Локальные заголовочные файлы для C Локальные библиотеки Локальные он-лайновые руководства Локальные системные исполняемые файлы Архитектурно-независимые каталоговая структура для локального ПО Локально установленные исходные коды |
Дерево 4.9.2.1
Никаких каталогов, кроме перечисленных выше, не должно быть в /usr/local после первой установки FHS-совместимой системы.