Файловая система Linux: иерархия и ключевые директории
TIP
Эта статья — часть серии Linux administration, посвящённой самостоятельному администрированию Linux, Self-Hosting и DevOps. Здесь мы разбираем структуру файловой системы.
📌 О чём эта статья?
Если вы только начинаете работать с Linux, файловая система может показаться запутанной. В отличие от Windows с её дисками C:\, D:\, Linux использует единую иерархическую структуру, где всё начинается с корня /.
В этой статье мы подробно разберём:
Что такое Filesystem Hierarchy Standard (FHS)
Назначение ключевых директорий: /bin, /etc, /var, /home и других
Где хранятся программы, конфиги, логи и пользовательские данные
Практические примеры и советы по работе с файловой системой
🧩 Что такое FHS?
Filesystem Hierarchy Standard (FHS) — это стандарт, определяющий структуру и содержимое директорий в Linux-системах. Он поддерживается Linux Foundation и используется большинством дистрибутивов: Debian, Ubuntu, Fedora, Arch и другими.
NOTE
FHS обеспечивает совместимость между дистрибутивами и упрощает разработку программ, скриптов и системных инструментов.
📚 Официальная спецификация: FHS 3.0 (2015)
🌲 Иерархия файловой системы: корень и ключевые директории
Вот как выглядит типичная структура корневой директории:
Начало всей файловой системы. Все остальные директории “подключены” к ней. Важно: не путать с домашней директорией root-пользователя (/root).
📁 /bin — Основные исполняемые файлы
Содержит базовые команды, необходимые для минимальной работы системы:
ls, cp, mv, rm
bash, cat, grep, chmod
INFO
В современных системах /bin часто является символической ссылкой на /usr/bin.
Это часть инициативы UsrMerge — унификации /usr и корневых директорий.
📚 Подробнее: systemd wiki — UsrMerge
📁 /boot — Загрузочные файлы
Содержит всё необходимое для загрузки системы:
Ядро Linux: vmlinuz-*
Загрузчик: grub/
Initramfs: initrd.img-*
WARNING
Не удаляйте файлы в /boot вручную! Используйте apt autoremove или dnf autoremove для очистки старых ядер.
📁 /dev — Файлы устройств
Содержит устройства, представленные как файлы:
/dev/sda — первый жёсткий диск
/dev/ttyUSB0 — последовательный порт
/dev/null — “чёрная дыра” (всё, что туда пишется, исчезает)
/dev/zero — бесконечный поток нулей
EXAMPLE
cat /dev/zero > /tmp/testfile # Создаст файл, пока не закончится место
📁 /etc — Конфигурационные файлы
Центр хранения настроек системы и приложений:
/etc/passwd — список пользователей
/etc/fstab — таблица точек монтирования
/etc/ssh/sshd_config — настройки SSH-сервера
/etc/nginx/nginx.conf — конфиг Nginx
TIP
Перед изменением файла в /etc всегда делайте резервную копию: