Каталоги 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