Настройка и работа в Linux
adb5321d

Требования


Если одна или несколько таких директорий существует, требования к их содержимому те же самые, что и к обычному каталогу /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-совместимой системы.



Содержание раздела