Иерархия каталогов в Unix-подобных системах


В этой статье хотелось бы рассказать немного о том, как устроены Unix-подобные системы в целом и GNU/Linux в частности, рассмотрев их иерархию каталогов.

Корневой каталог в Linux обозначают символом «/»; (так называемый «слэш»). Корень имеет несколько подкаталогов и, возможно, пару файлов. Поддерживайте порядок в этой области; не позволяйте заблудившимся файлам осесть здесь. Но не становитесь жертвой заболевания, которому подвержены многие администраторы – усердное удаление файлов только ради того, чтобы держать систему «в порядке». Если вы не знаете, что делает какой-либо файл, то не удаляйте его.

Имена каталогов в корневом разделе имеют особое значение, которое распространяется на многие другие подкаталоги в системе Linux. Например, в корне существует каталог /bin, но есть также много каталогов bin по всей системе, включая «/usr/bin» и «usr/local/bin». Все эти каталоги bin содержат исполняемые файлы.

Если вы хотите знать досконально составляющие множества каталогов системы, узнайте о Стандарте иерархии файловой системы (File System Hierarchy Standard). Для большей части, имена каталогов отражают структуру корня и каталога /usr.

Основные корневые подкаталоги Linux

Вот наиболее важные подкаталоги корневого каталога:

bin — содержит двоичные программы (более известные как исполняемые файлы), которые являют собой программы, готовые к запуску. Большинство основных команд Unix , таких как «ls» и «cp» хранятся в /bin. Однако некоторые файлы в /bin находятся не в двоичном формате, потому что в современных системах задачи двоичного кода выполняют сценарии оболочки.

dev — содержит файлы устройств.

etc — сердце каталога системных настроек. Пользовательский пароль, загрузка, устройства, работа в сети и другие файлы установки находятся здесь. Многие элементы в /etc характерны для определенного аппаратного обеспечения в компьютере — например, каталог /etc/X11 содержит настройки графической карты;

home — содержит собственные каталоги для обычных пользователей системы. Большинство установок Unix соответствует этому стандарту;

lib — аббревиатура для библиотек (library). В Linux этот каталог содержит файлы библиотек, содержащих коды, которые могут использовать исполняемые файлы. Существует два типа библиотек: статическая и общего пользования. Каталог /lib должен содержать только библиотеки общего доступа, но другие /lib каталоги, такие как /usr/lib содержат обе разновидности, равно как и другие вспомогательные файлы;

proc — предоставляет статистику системы через интерфейс «файл-и-каталог», так что вы можете просмотреть стандартные инструменты Unix. Большая часть структуры подкаталогов /proc уникальна, но многие другие варианты Unix имеют схожую структуру;

sbin — местонахождение исполняемых файлов системы. Программы в каталогах /sbin относятся к управлению системой, так что постоянные пользователи зачастую не используют компоненты /sbin в путях своих команд. Многие утилиты недоступны для обычных пользователей;

tmp — место хранения небольших по размеру временных файлов, за которые вы особо не волнуетесь. Любой пользователь может читать и записывать файлы в /tmp, но он может не иметь разрешения на доступ к файлам другого пользователя, находящимся здесь. Некоторые программы используют этот каталог как рабочее пространство. Если у вас есть что-то очень важное, не помещайте это в /tmp. Большинство версий очищают /tmp при загрузке компьютера, а остальные все равно периодически удаляют старые файлы. Тем не менее, не заполняйте /tmp, потому что его пространство обычно используется совместно с чем-то более серьезным (например, каталогом /);

usr — произносится как «юзер» но этот каталог не содержит пользовательских файлов (пользовательских файлов не было в /usr в системах Unix, появившихся задолго до появления Linux). Вместо того /usr — это большая иерархия каталогов, которая выглядит как корень. Основная часть системы Linux хранится в /usr. Многие из имен каталогов в /usr такие же как в корне и содержат такие же типы файлов; вот два образца:/usr/bin и /usr/lib. Главная причина того, что корень не содержит всю систему, это необходимость в низких требованиях пространства. Каталог /usr настолько важен, что далее мы рассмотрим его дополнительно.

var — подкаталог переменных, где программы записывают информацию о рабочем цикле. Регистрация в системе, слежение за действиями пользователя, кэш и другие файлы, которые создают и обслуживают системные программы, все они находятся в /var. Существует также каталог /var/tmp похожий на /tmp, но система чистит его при загрузке.

Прочие корневые подкаталоги Linux

Существует также еще несколько интересных подкаталогов в корне:

boot — содержит загрузочные файлы ядра. Эти файлы относятся только к первому уровню загрузочного процесса Linux; вы здесь не найдете информации о том, как Linux запускает свои службы;

cdrom — место, где большинство версий Linux содержат соединение с приводом CD-ROM; содержимое диска находится в этом каталоге. Корень может содержать похожие каталоги для остальных съемных устройств;

opt — может содержать дополнительное независимое программное обеспечение. Многие системы не используют /opt.

Каталог /usr

Каталог /usr может на первый взгляд показаться относительно свободным, но быстрый просмотр /usr/bin и /usr/lib показывает, что тут есть много всего. В дополнение к подкаталогам, о которых вы только что прочитали, /usr содержит следующее:

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

info — содержит информационные страницы GNU.

local — место, куда администраторы могут устанавливать свое собственное программное обеспечение. Его структура должна быть похожей на «/» и «/usr».

man — содержит страницы руководства. Неформатированные страницы хранятся здесь в каталогах man* (соответственно пронумерованной категории), а читаемые форматированные страницы хранятся в cat*.

share — содержит файлы, которые должны работать на других машинах Unix без потери функциональности. По крайней мере, по идее должно быть так; настоящие каталоги share становятся редкостью, так как на современных дисках не возникает проблем с оперативным пространством. Поддержка каталога share становится нерентабельной. В любом случае, man, info и несколько других подкаталогов всегда можно найти здесь.

X11R6 — содержит сердце оконной системы программного обеспечения Linux под названием XFree86. Однако, собственная конфигурация файлов для вашего компьютера обычно находится в /etc/X11.

dict — подкаталог, содержащий словари; /usr/dict/words – единственный такой файл для словарей.

Надеюсь, эта статья оказалось полезной для вас, и, если вам интересно, как устроены Unix-системы, то теперь вы знаете чуть больше.


Понравилась запись? Поделитесь :)
Социальные комментарии Cackle
Читайте также
Оптимальный robots.txt для WordPress
WordPress, один из самых популярных движков, на базе которого создаются миллионы блогов, по умолчанию лишен такого важного элемента как файл robots.txt. Стало быть, необходимо его создать
ASTRO File Manager — файловый менеджер для Android
Устройства на Android, в особенности планшеты, можно по праву считать компьютерами
Kid3 — редактор ID3-тегов аудиофайлов для KDE
Обычно аудиофайлы приходят к пользователю с уже заполненными ID3-тегами, в которых прописано название альбома, исполнителя, трека и т.д
Как использовать Dropbox эффективно
Было время, когда для передачи файла друзьям нужно было пользоваться флешками или файлообменниками. Также не стоит забывать про электронную почту с ее вложениями
Как выбирать кулеры для компьютера
Большое значение для нормальной работы всей системы компьютера имеет устройство охлаждения, которое способствует функционированию различных элементов
KRename — пакетное переименование файлов в KDE
С необходимостью переименовать все файлы в каталоге, пожалуй, сталкивались все. Вручную выделять и переименовывать каждый файл по отдельности — самое нерациональное решение
Команды эмулятора терминала Android
Чтобы выполнять подавляющее большинство команд в терминале Android, нужно обладать правами суперпользователя
Как создать загрузочную флешку с дистрибутивом Linux
Когда-то для установки дистрибутива Linux требовался LiveCD или DVD с системой