Структура каталогов Linux
Структура каталогов Linux имеет много разных директорий (каталогов, папок) и файлов, обычному пользователю в системных делать нечего, но для общего понимания вот структура директорий(папок) Linux и для чего предназначены:
- / - корневая директория Linux, все файлы и каталоги Linux содержатся внутри этого каталога независимо от их физического местоположения. Только пользователь root имеет право читать и изменять файлы в этом каталоге. (У пользователя root домашний каталог /root, но не сам / ).
- /bin - (binaries) содержит исполняемые программы, которые являются частью операционной системы Linux.
- /boot - содержит ядро Linux и другие файлы, необходимые для менеджеров загрузки LILO или GRUB. С неё идёт старт загрузки операционной системы.
- /dev - (devices) содержит все устройства, точнее ссылки на них в виде специальных файлов.
- /dev/null - специальный каталог - "чёрная дыра", уничтожает все данные попадающие в него.
- /etc - (etcetera) конфигурационные файлы: всех установленных программ в системе (пользовательские программы хранят настройки в директории ~/.config/), скрипты запуска и завершения системных демонов, автозагрузки программ итп.
- /home - домашний каталог пользователей, в нём хранятся каталоги пользователей, настройки и прочие файлы.
- /lib, /lib32, /lib64 - (library) - Системные библиотеки хранят библиотеки файлов .so (аналог .dll в Windows). 32 и 64 это битность системы под которую собрана библиотека функций (по сути разница в большем диапазоне чисел).
- /lost+found - директория для потерянных файлов. Туда скидываются файлы, на которые нет ссылок ни в одном каталоге, хотя их иноды не были помечены как свободные. Такое может случиться при системном сбое, например питание выключили. В журналируемых файловых системах ext4 итп. fsck просто просматривает журнал, видит, что операция на завершилась и откатывает её. Не припомню чтоб находил там файлы хоть раз.
- /media - сюда монтируются все подключаемые внешние накопители: жёсткие диски, ssd диски, USB флешки, оптические и другие носители информации.
- /mnt - (mount) - монтирование. Для монтирования временных файловых систем.
- /opt - (optional applications) - дополнительные программы.
- /proc - (proccess) - информация о процессах. Специальный каталог - подсистема, динамически создаваемая ядром. Хранящий информацию о различных аспектах системы Linux, из файлов которой можно узнать много информации о системе.
- /root - домашний каталог суперпользователя.
- /run - процессы, содержит PID файлы процессов, файлы размещены в TMPFS (временное файловое хранилище), после перезагрузки файлы не сохраняются, система создаёт их вновь.
- /sbin - (system binaries) системные исполняемые файлы. Здесь находятся разные утилиты/программы для обслуживания системы.
- /snap - предназначен для Snap пакетов - программ со всеми зависимостями внутри.
- /srv - (server) - сервер. В этом каталоге содержатся файлы серверов и сервисов.
- /sys - (system) - информация о системе непосредственно от ядра, хранит информацию об устройствах.
- /tmp - каталог для временных файлов, которые будут удалены каждый раз при загрузке системы.
- /usr - (user applications) - Программы пользователя. Здесь находятся исходники программ, сами программы, различные ресурсы, картинки, документация итп.
- /usr/bin - исполняемые файлы для Linux команд.
- /usr/include - содержит файлы заголовков для Cи языков программирования.
- /usr/lib - хранит библиотеки для Cи языков программирования.
- /usr/local - локальные файлы.
- /usr/sbin - административные команды.
- /usr/share - содержит файлы, которые являются общими, изображения, документы, настройки итд.
- /usr/src - хранит исходный код ядра Linux и некоторых программ.
- /var - (variable) - Переменные файлы, содержит различные файлы системы: журналы, кэши, очереди печати итп.
- /var/cache - кэш приложений.
- /var/lib - хранит информацию о текущем состоянии приложений, сохраненную пакетным менеджером.
- /var/lock - здесь находятся файлы блокировок. Они означают, что определенный ресурс, файл или устройство занято и не может быть использован другим процессом.
- /var/log - хранит логи программ.
- /var/mail - сюда почтовый сервер складывает все полученные или отправленные электронные письма, могут находиться логи и конфигурации.
- /var/run - содержит PID процессов, которые могут быть использованы, для взаимодействия между программами, сохраняется между перезагрузками системы в отличие от директории /run.
- /var/tmp - содержит временные файлы, сохраняемые между перезагрузками системы.
Это далеко не всё. Более подробную информацию о иерархии файловой системы можно почитать перейдя в консоль и набрав man hier (Q для выхода)