Реферат: Иерархия каталогов и файловых систем в Linux

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

Каталог /var/log содержит разнообразные файлы протоколов: lastlog (запись о последнем входе в систему каждого пользователя); messages (системные сообщения от syslogd); wtmp (записи о всех входах и выходах пользователей в систему).

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

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

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

Каталог /var/spool содержит данные, которые ожидают какой-то последующей обработки: подкаталоги lpd (спулинг для принтера), mqueue (очередь исходящей почты), news (спулинг новостей), uucp (спулинг для UUCP) и т.п.

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

Иерархия файловых систем

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

По ряду причин размер корневой файловой системы желательно сделать достаточно малым.

Иногда приходится монтировать корневую файловую систему с носителя малого объема.

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

Маленькая корневая файловая система менее подвержена разрушению в случае сбоев.

Из стандарта можно сделать вывод о том, что в корневой файловой системе обязательно должны целиком располагаться каталоги /bin, /dev, /etc, /lib, /sbin и, возможно, /root.

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

Остальные подкаталоги корневого каталога (home, mnt, opt, tmp, usr, var) могут размещаться в других файловых системах (на других разделах или дисках). Более того, в стандарте явно постулируется, что в каталогах /usr, /opt и /var размещаются такие файлы, которые могут располагаться в других разделах диска или в других файловых системах. Разработчики стандарта советуют в том случае, когда /var не может быть размещен в отдельном разделе диска, переместить каталог /var из корневого раздела в раздел с каталогом /usr. Однако /var нельзя делать ссылкой на /usr потому что это затрудняет разделение /usr и /var и может привести к конфликту имен, лучше уж сделать /var ссылкой на /usr/var.

Отметим, что в статье речь идет только о требованиях и рекомендациях стандарта FHS, разработанного с ориентацией на операционные системы Linux и BSD. Даже конкретные дистрибутивы Linux не во всем следуют этому стандарту. Так, в Red Hat Linux версий 7.3 и 8.0 каталог /etc/opt хотя и создан, но пуст, а конфигурационные каталоги пакетов размещаются непосредственно в /etc. Можно указать и другие отклонения от стандарта. Но все же в основном структура каталогов выдерживается в соответствии с FHS, так что знакомство с этим стандартом, безусловно, полезно всем пользователям Linux, а тем более разработчикам.

К-во Просмотров: 440
Бесплатно скачать Реферат: Иерархия каталогов и файловых систем в Linux