Работа с файлами и каталогами

Файловая система в Linux

Последнее обновление: 12.03.2024

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

В Linux все файлы и папки организованы в виде иерархической структуры, на вершине которой находится корневой каталог, который проецируется на путь "/".

Стандартная система каталогов Linux выглядит следующим образом:

Система каталогов в Linux
  • bin: пользовательские приложения, которые можно запустить через командную строку. Эти программы доступны всем пользователям. Прежде всего это необходимые утилиты и команды, такие как /bin/bash (оболочка), cp (используется для копирования файлов), cat, chmod, grep, gzip, mkdir и многие другие.

  • etc: конфигурационные файлы системы, например, passwd, hosts, networks и т.д.

  • boot: содержит все необходимое для загрузки системы. В частности, ядро - файл с именем vmlinuz, а также другие жизненно важные компоненты, применяемые для запуска системы.

  • sbin: системные приложения, необходимые прежде всего для администрирования системы, например, fdisk, ifconfig, reboot и т.д. Это критически важные двоичные файлы, которые должны быть всегда доступны на случай, если вам понадобится восстановить систему.

  • usr: пользовательские приложения и данные (аналог каталога Program Files в Windows). Основные подкаталоги:

    • /usr/bin: большинство пользовательских приложений

    • /usr/src: исходные файлы с открытым исходным кодом приложений

    • /usr/include: стандартные заголовочные файлы языка C

    • /usr/lib: файлы для разработки и устанавливаемые пакеты

    • /usr/local: локальные приложения

    • /usr/share: статические разделяемые данные

  • var: файлы данных, которые могут изменяться. Основные подкаталоги:

    • /var/cache: кэш приложений

    • /var/include: стандартные заголовочные файлы языка C

    • /var/lib: данные о состоянии системы

    • /var/lock: заблокированные данные для отслеживания используемых ресурсов

    • /var/log: файлы логов

    • /var/opt: данные установленных пакетов

    • /var/spool: выполняемые задачи

    • /var/tmp: временные файлы, удаляемые после новой загрузки системы

  • /dev: файлы устройств. В Linux все оборудование, с которым вы работаете, соответствует файлу в системе. Если надо обратиться к аппаратному обеспечению, то необходимо обратиться к соответствующему файлу. Для этого потребуются права root.

  • /home: папка для домашних каталогов пользователей

  • /lib: файлы общих библиотек, которые могут использоваться другими приложениями. В этом каталоге также можно найти некоторые другие важные модули, например модули драйверов, которые используются ядром Linux. Для 64-битных файлов библиотек существует каталог с именем /lib64.

  • /media: каталог по умолчанию для монтирования в системе съемных устройств, в частности, подключаемых по USB, как съемные жесткие диски, SSD, флешки и т.д. В этом каталоге автоматически создается подкаталог при обнаружении нового съемного устройства.

  • /mnt: на старых системах Linux представлял каталог по умолчанию для монтирования устройств. Сейчас эту роль в целом выполняет каталог /media. Тем не менее /mnt по-прежнему используется для монтирования, которое происходит не очень часто и создается вручную, например, для монтирования на сервер, к которому необходимо получить доступ только один раз. Каталог /mnt также подходит для целей тестирования.

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

  • /proc: файлы процессов, информация о ядре и компьютере

  • /root: домашний каталог для пользователя root или суперпользователя. Домашние каталоги обычных пользователей находятся в /home. Системный администратор – это не обычный пользователь; Поэтому в UNIX системный администратор считается "суперпользователем". Поскольку этот пользователь может иметь некоторые важные инструменты в своем домашнем каталоге, этот каталог не находится в "/home" вместе с инструментами других пользователей. Вместо этого пользователь root использует /root в качестве своего домашнего каталога.

  • /run: используется для конфигурации во время выполнения. В этом каталоге могут быть созданы отдельные подкаталоги для разных пользователей и процессов, и каждый из них может создавать файлы в этих подкаталогах. Файлы в /run обычно удаляются автоматически, когда они больше не нужны.

  • /srv: хранит файлы некоторых важных сервисов. Например, он используется для хранения всей файловой структуры вашего веб-сервера и FTP-сервера в SUSE Linux. Некоторые дистрибутивы, такие как Red Hat и его производные, не используют /srv, но хранят информацию такого типа в /var.

  • /sys: применяется для хранения информации о состоянии системы. Этот каталог похож на каталог "/proc", с той разницей, что информация в /sys хранится на жестком диске, поэтому она по-прежнему доступна после перезагрузки. Информация в /sys более непосредственно связана с оборудованием, тогда как "/proc" используется для хранения информации о текущем состоянии ядра.

  • /tmp: хранит временные файлы, автоматически удаляемые при перезагрузке.

Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850