Каталоги Linux

Структура каталогов Linux отличается от той, которую привык видеть пользователь Windows. В Linux на самом верхнем уровне файловой иерархии находятся не физические и логические диски, а один единственный корневой каталог, обозначаемый косой чертой – / (слэшем).

Каждый последующий вложенный каталог отделяется от родительского также слэшем. Путь заканчивается либо каталогом, либо файлом. Например, /boot/grab или /home/pl/test.txt. Второй путь указывает, что в корневом каталоге есть папка home, в ней находится каталог pl, в котором имеется файл test.txt.

Файловая структура (перечень системных директорий) Linux стандартизирована. Стандартом является FHS, который соблюдается большинством Unix-подобных операционных систем. FHS – аббревиатура от Filesystem Hierarchy Standard – стандарт иерархии файловой системы.

Обычно дистрибутивы Linux следуют стандарту FHS, однако могут иметь незначительные отличия друг от друга. В общей сложности структура каталогов разных дистрибутивов схожа. Ниже будет дано описание назначения большинства системных каталогов, расположенных на верхнем уровне вложенности, т. е. непосредственно в корневом.

Если в файловом менеджере вашего дистрибутива нет закладки на корневой каталог (она может называться, например, Файловая структура или Компьютер), нажмите Ctrl + L. Адресная строка превратиться в текстовое поле, в котором надо ввести косую черту /.

На скриншоте показана файловая структура верхнего уровня Ubuntu 22.04.

В /home находятся каталоги пользователей. Поскольку Linux многопользовательская операционная система, то количество вложенных сюда директорий соответствует количеству зарегистрированных в системе пользователей. Если в системе только один пользователь, то там будет только один подкаталог.

Например, в системе зарегистрированы пользователи pety и vasy. Тогда в /home будет два подкаталога: pety и vasy. В директории /home/pety будут все папки и файлы Пети, а в /home/vasy – все папки и файлы Васи. По умолчанию у Пети нет прав на посещение файловой структуры Васи. Как и наоборот.

Кроме обычных пользователей, в Linux есть системный администратор (root). Он обладает безграничными правами, поэтому под этим пользователем обычно не работают, а только выполняют команды, которые требуют наличия прав администратора. Однако для личных файлов root'а предусмотрена директория /root. Войти в нее может только сам администратор.

Если на компьютере есть логические и физические жесткие диски, которые не были задействованы под систему, а также подключаются флэшки, внешние диски, смартфоны, то в момент монтирования для каждого из них создается каталог, так называемая точка монтирования. Через этот каталог происходит доступ к файловой структуре устройства, а размещается он либо в /media, либо в /mnt.

В каталог /media монтируются сменные носители и автоматически подключаемые во время загрузки физические устройства. Каталог /mnt предназначен для временно монтируемых файловых систем. Например, вы сами с помощью команды подключаете тот или иной диск.

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

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

В каталоге /etc содержатся конфигурационные файлы системных программ.

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

В папке /bin содержатся различные системные утилиты-программы, многие из которых выполняются через командную оболочку Bash. Некоторые запускаются при старте системы. Программы в /bin доступны всем пользователям.

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

Директория /lib содержит библиотеки, совместно используемые программами из /bin и /sbin. Также здесь находятся драйверы устройств (модули, подключаемые к ядру Linux).

Структура /usr во многом повторяет структуру корневого каталога. Сюда устанавливаются пользовательские (user) программы дистрибутива. Так в /usr/bin содержится большинство программ, в /usr/include – заголовочные файлы, в /usr/lib – библиотеки для программ, размещенных в usr.

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

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

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

Каталоги /sys, /proc, /run можно назвать системными. Для понимания их назначения требуются знания принципов работы операционной системы.

Курс с ответами к заданиям и дополнительными уроками в PDF


Введение в Linux и Bash. Курс




Все разделы сайта