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

Назначение


Этот стандарт необходим для того, чтобы:

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

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

    Настоящий стандарт используется для того, чтобы

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

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

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



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

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



    Previous: /lib<qual> : Основные разделяемые библиотеки альтернативных форматов (optional)

    Next: /opt : Дополнительные пакеты программного обеспечения

    Up: Оглавление

    Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan




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

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




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

    [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 должна пересылаться соответствующему пользователю.

    Previous: /opt : Дополнительные пакеты программного обеспечения

    Next: /sbin : Системные утилиты

    Up: Оглавление

    Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan




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




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

    Программы не должны предполагать, что какой-либо файл в каталоге /tmp

    сохранится при следующем запуске программы.




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

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

    Previous: /usr/local : Каталог для локального ПО

    Next: /usr/share : Архитектурно-независимые данные

    Up: Оглавление

    Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan




    Каталог /bin содержит команды, которые могут использоваться как системным администратором, так и рядовыми пользователями, причем только те команды, которые необходимы, когда никакая другая файловая система еще не смонтирована (например, в одно-пользовательском режиме). В этом каталоге могут также содержаться команды, которые используются не напрямую пользователем, а через скрипты.[примечание 1]




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




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




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




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




    /etc/X11 - это место размещения всех конфигурационных данных для X11, специфичных для данного хоста. Эта директория необходима для того, чтобы обеспечить локальное управление системой X Window в том случае, когда файловая система /usr монтируется только на чтение.




    Здесь устанавливаются исходные конфигурационные файлы, определяющие параметры верхнего уровня 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 (если только нет общепринятого альтернативного названия) и не использовать подкаталог. Любой подкаталог для оконного менеджера должен называться так же, как называется исполняемый файл оконного менеджера.

    Previous: /dev : Файлы устройств

    Next: /home : Домашние каталоги пользователей (optional)

    Up: Оглавление

    Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan




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

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

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

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

    Previous: /etc : Специфичная для данного хоста конфигурационная информация

    Next: /lib : Основные разделяемые библиотеки и модули ядра

    Up: Оглавление

    Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan




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




    Каталог /usr - это второй по важности раздел файловой системы. /usr содержит разделяемые данные, предназначенные только для чтения. Это означает, что /usr может быть доступен с различных FHS-совместимых хостов и права записи в него не должно быть. Любая информация, которая является специфичной для конкретного хоста или может изменяться со временем, должна записываться в другое место.

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

    Previous: /tmp : Временные файлы

    Next: Требования

    Up: Оглавление

    Translated by troff2html v1.5 on 29 March 2002 by Daniel Quinlan




    Эта директория содержит списки слов (словари), используемые в системе; обычно в ней находится только файл words для английского языка, который используется утилитой look(1) и различными программами проверки правописания. Файл words может быть ориентирован либо на американский, либо на британский вариант языка (may use either American or British spelling).




    Настоящий раздел детализирует организацию страниц интерактивного руководства man в системе, включая описание каталогов /usr/share/man и /var/cache/man.

    Исходной директорией (<mandir>) для интерактивного руководства man в системе является каталог /usr/share/man. Этот каталог содержит информацию о командах и других данных, размещаемых в файловых системах / и /usr.[примечание 26]

    Страницы интерактивного руководства хранятся в каталогах <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 предназначена для всех файлов, которые предназначены только для чтения и не зависят от архитектуры. [примечание 25]

    Эта каталоговая структура предназначена для того, чтобы хранить файлы, используемые всеми архитектурными платформами данной ОС. Так, например, компьютеры на платформах 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.



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