Если вы работаете с Windows, структура файловой системы Linux может показаться особенно чуждой. Диск C: \ и буквы диска исчезли, их заменили каталоги / и загадочно звучащие каталоги, большинство из которых имеют трехбуквенные имена.
Стандарт иерархии файловой системы (FHS) определяет структуру файловых систем в Linux и других UNIX-подобных операционных системах. Однако файловые системы Linux также содержат некоторые каталоги, которые еще не определены стандартом.
/ - Корневой каталог
Все в вашей системе Linux находится в каталоге /, известном как корневой каталог. Вы можете думать о каталоге / как о каталоге C: \ в Windows, но это не совсем так, поскольку в Linux нет букв дисков. В то время как другой раздел будет расположен в D: \ в Windows, этот другой раздел появится в другой папке в / в Linux.
/ bin - Основные пользовательские двоичные файлы
Каталог / bin содержит основные пользовательские двоичные файлы (программы), которые должны присутствовать при монтировании системы в однопользовательском режиме. Такие приложения, как Firefox, хранятся в / usr / bin, а важные системные программы и утилиты, такие как оболочка bash, находятся в / bin. Каталог / usr может храниться в другом разделе - размещение этих файлов в каталоге / bin гарантирует, что в системе будут эти важные утилиты, даже если другие файловые системы не смонтированы. Каталог / sbin аналогичен - он содержит важные двоичные файлы системного администрирования.
/ boot - статические загрузочные файлы
Каталог / boot содержит файлы, необходимые для загрузки системы - например, здесь хранятся файлы загрузчика GRUB и ваши ядра Linux. Однако файлы конфигурации загрузчика здесь не находятся - они находятся в / etc вместе с другими файлами конфигурации.
/ cdrom - Историческая точка монтирования для CD-ROM
Каталог / cdrom не является частью стандарта FHS, но вы все равно найдете его в Ubuntu и других операционных системах. Это временное место для CD-ROM, вставленных в систему. Однако стандартное расположение временных носителей находится в каталоге / media.
/ dev - Файлы устройства
Linux представляет устройства как файлы, а каталог / dev содержит ряд специальных файлов, представляющих устройства. Это не настоящие файлы в том виде, в каком мы их знаем, но они выглядят как файлы - например, / dev / sda представляет собой первый диск SATA в системе. Если вы хотите его разбить, вы можете запустить редактор разделов и указать ему отредактировать / dev / sda.
Этот каталог также содержит псевдоустройства, которые представляют собой виртуальные устройства, которые фактически не соответствуют оборудованию. Например, / dev / random производит случайные числа. / dev / null - это специальное устройство, которое не производит вывода и автоматически отбрасывает весь ввод - когда вы перенаправляете вывод команды на / dev / null, вы отбрасываете его.
/ etc - Файлы конфигурации
Каталог / etc содержит файлы конфигурации, которые обычно можно редактировать вручную в текстовом редакторе. Обратите внимание, что каталог / etc / содержит общесистемные файлы конфигурации - пользовательские файлы конфигурации находятся в домашнем каталоге каждого пользователя.
/ home - Домашние папки
Каталог / home содержит домашнюю папку для каждого пользователя. Например, если ваше имя пользователя - bob, у вас есть домашняя папка, расположенная в / home / bob. Эта домашняя папка содержит файлы данных пользователя и пользовательские файлы конфигурации. Каждый пользователь имеет доступ только для записи в свою домашнюю папку и должен получить повышенные права (стать пользователем root) для изменения других файлов в системе.
/ lib - Основные общие библиотеки
Каталог / lib содержит библиотеки, необходимые для основных двоичных файлов в папке / bin и / sbin. Библиотеки, необходимые для двоичных файлов в папке / usr / bin, находятся в / usr / lib.
/ lost + found - восстановленные файлы
В каждой файловой системе Linux есть каталог «потерян + найден». В случае сбоя файловой системы проверка файловой системы будет выполнена при следующей загрузке. Все найденные поврежденные файлы будут помещены в каталог lost + found, поэтому вы можете попытаться восстановить как можно больше данных.
/ media - Съемный носитель
Каталог / media содержит подкаталоги, в которых монтируются съемные носители, вставленные в компьютер. Например, когда вы вставляете компакт-диск в свою систему Linux, внутри каталога / media автоматически создается каталог. Вы можете получить доступ к содержимому компакт-диска внутри этого каталога.
/ mnt - временные точки монтирования
Исторически сложилось так, что каталог / mnt - это то место, где системные администраторы монтируют временные файловые системы во время их использования. Например, если вы монтируете раздел Windows для выполнения некоторых операций восстановления файлов, вы можете смонтировать его в / mnt / windows. Однако вы можете смонтировать другие файловые системы в любом месте системы.
/ opt - Дополнительные пакеты
Каталог / opt содержит подкаталоги для дополнительных пакетов программного обеспечения. Он обычно используется проприетарным программным обеспечением, которое не подчиняется стандартной иерархии файловой системы - например, проприетарная программа может выгружать свои файлы в / opt / application при ее установке.
/ proc - файлы ядра и процессов
Каталог / proc похож на каталог / dev, потому что он не содержит стандартных файлов. Он содержит специальные файлы, которые представляют информацию о системе и процессе.
/ root - корневой домашний каталог
Каталог / root - это домашний каталог пользователя root. Вместо того, чтобы находиться в / home / root, он находится в / root. Он отличается от /, который является корневым каталогом системы.
/ run - Файлы состояния приложения
Каталог / run является довольно новым и предоставляет приложениям стандартное место для хранения необходимых им временных файлов, таких как сокеты и идентификаторы процессов. Эти файлы нельзя хранить в / tmp, потому что файлы в / tmp могут быть удалены.
/ sbin - Двоичные файлы системного администрирования
Каталог / sbin похож на каталог / bin. Он содержит важные двоичные файлы, которые обычно предназначены для запуска пользователем root для системного администрирования.
/ selinux - виртуальная файловая система SELinux
Если ваш дистрибутив Linux использует SELinux для обеспечения безопасности (например, Fedora и Red Hat), каталог / selinux содержит специальные файлы, используемые SELinux. Это похоже на / proc. Ubuntu не использует SELinux, поэтому наличие этой папки в Ubuntu кажется ошибкой.
/ srv - Сервисные данные
Каталог / srv содержит «данные об услугах, предоставляемых системой». Если бы вы использовали HTTP-сервер Apache для обслуживания веб-сайта, вы, вероятно, сохранили бы файлы своего веб-сайта в каталоге внутри каталога / srv.
/ tmp - Временные файлы
Приложения хранят временные файлы в каталоге / tmp. Эти файлы обычно удаляются при перезапуске вашей системы и могут быть удалены в любое время с помощью таких утилит, как tmpwatch.
/ usr - Пользовательские двоичные файлы и данные только для чтения
Каталог / usr содержит приложения и файлы, используемые пользователями, в отличие от приложений и файлов, используемых системой. Например, второстепенные приложения располагаются внутри каталога / usr / bin вместо каталога / bin, а второстепенные двоичные файлы системного администрирования находятся в каталоге / usr / sbin вместо каталога / sbin. Библиотеки для каждого из них находятся в каталоге / usr / lib. Каталог / usr также содержит другие каталоги - например, файлы, не зависящие от архитектуры, такие как графика, находятся в / usr / share.
Каталог / usr / local - это место, куда по умолчанию устанавливаются локально скомпилированные приложения - это не позволяет им испортить остальную часть системы.
/ var - файлы переменных данных
Каталог / var является записываемым аналогом каталога / usr, который при нормальной работе должен быть доступен только для чтения. Файлы журнала и все остальное, что обычно записывается в / usr при нормальной работе, записывается в каталог / var. Например, вы найдете файлы журналов в / var / log.
Для получения более подробной технической информации об иерархии файловой системы Linux обратитесь к документации Filesystem Hierarchy Standard.