Структура каталогов Linux

Очень коротко о структуре каталогов в Linux.

Первое, что бросается в глаза при сравнении структуры каталогов Unix-подобной ОС (FreeBSD, Mac OS X, Linux и т. п.) с MS Windows (или, кто помнит, MS DOS) — это одно единое дерево каталогов с единственным корнем. Никаких «букв дисков» (вроде C:\) в начале пути мы никогда не увидим.

Всё всегда начинается с корневого каталога, который обозначают просто наклонной чертой (прямой слеш — а не обратный, как в Windows) — /.

Что же находится в корневом каталоге?

/bin — тут находятся стандартные утилиты Linux (ls, less и т. п.). Этот каталог обычно включен в переменную $PATH, т. е. входит в число каталогов, где командный процессор будет искать команду, введенную в командной строке.

/boot — здесь размещается всё, что связано с начальной загрузкой системы: загрузчик (grub, lilo…), образ ядра и т. п.

/dev — каталог с очень необычным (для привыкших к Windows) содержимым. В Linux всё является файлом. В том числе, и все устройства: диски, виртуальные терминалы и т.д. И вот эти-то «файлы устройств» (devices) мы и можем найти в каталоге /dev. Среди них — «черная дыра» /dev/null, в которую можно отправить, например, ненужные результаты работы какой-либо консольной команды. (Есть и соответствующее сленговое выражение «отправить в /dev/null», означающее «выкинуть за ненадобностью»)

/etc — конфигурационные файлы

/home. У каждого пользователя Linux есть каталог с его файлами (включая персональные настройки приложений). Такой каталог называется коротким именем пользователя (логином) и располагается в /home. Так что /home можно считать примерно соответствующим папке «Documents and Settings» в Windows. Кстати, указать свой домашний каталог пользователь может сокращенно — тильдой. Например, чтобы перейти в папку Music внутри домашнего каталога, можно дать команду cd ~/Music.

/lib — общие библиотеки и модули ядра.

/media — сюда монтируются съемные носители: компакт-диски, флешки и т.п. У меня сейчас, к примеру, в кардридере вставлена флеш-карта, которая выглядит как каталог /media/SDHC8-01.

/mnt — в этот каталог администратор может временно смонтировать какую-либо файловую систему.

/opt — сюда устанавливаются необязательные (optional) программные пакеты. У меня там, например, Adobe Reader и Google Chrome.

/proc — еще один необычный каталог. Сюда монтируется виртуальная файловая система procfs, хранящая информацию о процессах. Файлы, находящиеся там вполне можно посмотреть 😉 Это обычный текст.

/root — «домашняя папка» суперпользователя root.

/sbin — системные программы. Аналогично каталогу /bin, но для запуска находящихся там программ нужны права суперпользователя. (И программы эти, естественно, нужны исключительно администратору для настройки системы)

/tmp — временные (temporary) файлы, создаваемые программами в процессе работы. Ничего, что должно сохраняться между запусками программ (тем более, между запусками ОС), там быть не должно.

/usr — прикладные программы, библиотеки, документация и многое другое, что не входит в минимальный набор утилит ОС.

Внутри каталога /usr, в свою очередь, находится несколько стандартных подкаталогов. Часть из них аналогична тем, что находятся в корневом каталоге: /usr/bin, /usr/sbin, /usr/etc, /usr/lib. Есть также каталог для стандартных include-файлов /usr/include, каталог для исходных текстов /usr/src, каталог с общими данными /usr/share.

Кроме того, здесь есть каталог /usr/local, структура подкаталогов внутри которого аналогична /usr. Этот каталог предназначен для «локально» установленных файлов. Они не будут затронуты при обновлении операционной системы.

Интересно, что стандартом предусмотрены отдельные от других программ каталоги для игр — /usr/games и /usr/local/games.

/var — «переменные» (variable) данные: кеши, спул печати, протоколы работы и вся остальная служебная информация, которая записывается в процессе использования компьютера.

Add a Comment