Библиотека сайта rus-linux.net
Стандарт на структуру каталогов файловой системы. (Filesystem Hierarchy Standard)
6.1 Linux
Настоящее дополнение к стандарту относится только к операционной системе Linux.
6.1.1 / : Корневой каталог
В Linux-системах, если ядро расположено в /
, мы рекомендуем
использовать для него названия vmlinux
или vmlinuz
,
которые используются в последних версиях исходных кодов ядра Linux.
6.1.2 /bin : Основные исполняемые файлы команд пользователя (доступные всем пользователям)
Linux-системы, в которых следующие файлы требуются, должны помещать их в
/bin
.
-
{ setserial }
6.1.3 /dev : Устройства и специальные файлы
Все устройства и специальные файлы в /dev
должны соответствовать
документу Linux Allocated Devices, который поставляется в составе исходных кодов ядра. Он поддерживается Питером Анвином (H. Peter Anvin)
<адрес пропущен>.
Символические ссылки в каталоге /dev
должны устанавливаться в Linux-системах не иначе как в соответствии с документом Linux Allocated Devices.
НАЧАЛО ПОЯСНЕНИЙ
Требование не создавать символических ссылок произвольным образом выдвигается потому, что локальные установки часто отличаются от ссылок, создаваемых программами установки от разработчиков. Кроме того, если установочный скрипт дистрибутива создает символические ссылки во время инсталляции, эти ссылки часто не обновляются при локальных изменениях в аппаратном обеспечении. Если же ответственно относиться к ним на локальном уровне, они могут использоваться.
КОНЕЦ ПОЯСНЕНИЙ
6.1.4 /etc : Специфичная для данного хоста конфигурационная информация
Если в Linux-системе следующие файлы требуются, они должны размещаться в
/etc
.
-
{ lilo.conf }
6.1.5 /proc : Виртуальные файловые системы для хранения информации о ядре и процессах
Файловая система proc
является фактически стандартным для Linux методом обработки информации о системе и процессах, в отличие от других систем, использующих /dev/kmem
и другие подобные методы. Мы настоятельно рекомендуем использовать proc
для хранения и получения информации о процессах, а также информации о ядре и памяти.
6.1.6 /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
. -
6.1.7 /usr/include : Файлы заголовков, включаемые в программы на C
Эти символические ссылки требуются, если компиляторы языков C или C++ установлены и только для систем, не основанных на glibc.
/usr/include/asm -> /usr/src/linux/include/asm-<arch>
/usr/include/linux -> /usr/src/linux/include/linux
6.1.8 /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
, так чтобы не было проблем, когда системные администраторы обновляют версию ядра в первый раз.
КОНЕЦ ПОЯСНЕНИЙ
6.1.9 /var/spool/cron : Задания для демонов cron и at
Этот каталог содержит переменные данные для программ-демонов cron
и
at
.
Previous: Дополнения, специфичные для отдельных типов операционных систем
Next: Приложение
Up: Оглавление
Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan