junior
Какова структура файловой системы Linux?
Файловая система Linux организована в виде единого дерева каталогов с корнем /. Стандарт FHS (Filesystem Hierarchy Standard) определяет назначение основных каталогов.
| Каталог | Назначение |
|---|---|
/ |
Корневой каталог — вершина иерархии файловой системы. Все остальные каталоги являются его потомками. |
/bin |
Основные исполняемые файлы, необходимые для загрузки и работы системы (ls, cp, mv, cat, bash). В Ubuntu 24.04 это симлинк на /usr/bin. |
/sbin |
Системные утилиты для администрирования (iptables, fdisk, mkfs). В Ubuntu 24.04 — симлинк на /usr/sbin. |
/boot |
Файлы загрузчика: ядро Linux (vmlinuz), initramfs, конфигурация GRUB. |
/dev |
Файлы устройств. В Linux всё является файлом, включая устройства: /dev/sda (диск), /dev/null (чёрная дыра), /dev/random (генератор случайных чисел). |
/etc |
Конфигурационные файлы системы и приложений: /etc/hosts, /etc/fstab, /etc/ssh/sshd_config. |
/home |
Домашние каталоги пользователей. Каждый пользователь имеет свой каталог /home/username. |
/lib |
Разделяемые библиотеки для программ из /bin и /sbin. В Ubuntu 24.04 — симлинк на /usr/lib. |
/media |
Точки монтирования для съёмных носителей (USB-флешки, CD/DVD). |
/mnt |
Точка монтирования для временно подключаемых файловых систем. |
/opt |
Дополнительное ПО, установленное вручную (не из пакетного менеджера). Например, IDE, коммерческое ПО. |
/proc |
Виртуальная файловая система: информация о процессах и ядре. /proc/cpuinfo, /proc/meminfo, /proc/PID/. |
/root |
Домашний каталог суперпользователя (root). |
/run |
Временные файлы времени выполнения (PID-файлы, сокеты). Очищается при перезагрузке. |
/srv |
Данные для сервисов (веб-сервер, FTP). |
/sys |
Виртуальная файловая система для взаимодействия с ядром и устройствами. |
/tmp |
Временные файлы. Очищается при перезагрузке. Любой пользователь может записывать сюда файлы. |
/usr |
Основная иерархия для пользовательских программ: /usr/bin, /usr/lib, /usr/share, /usr/local. |
/var |
Переменные данные: /var/log — логи, /var/lib — данные приложений, /var/cache — кеши. |
Что важно для Java-разработчика
/etc— конфигурации приложений и сервисов/var/log— логи приложений/opt— часто сюда устанавливают JDK, Tomcat и другое ПО/tmp— временные файлы (Javajava.io.tmpdirпо умолчанию указывает сюда)/proc— информация о процессе JVM (потребление памяти, файловые дескрипторы)
На собеседовании: достаточно знать 7-8 ключевых каталогов и их назначение. Частая ошибка — путать
/optи/usr/local. Покажите, что знаете, где искать логи (/var/log), конфиги (/etc) и куда ставят JDK (/optили/usr/lib/jvm).