Шпаргалка по файловой системе Linux
В Linux почти все начинается от корня /. Дальше система раскладывает файлы по каталогам с понятной логикой: где бинарники, где конфиги, где логи, где временные файлы. Если один раз это понять, навигация по серверу становится сильно проще.
pwd
ls /
Что где лежит
/etc - это конфиги системы и сервисов.
/var - это всё, что меняется в работе: логи, кэши, очереди, базы, runtime-данные.
/home - это домашние директории обычных пользователей, а /root это отдельный home для root.
/tmp - это временные файлы, которые не стоит считать постоянным хранилищем.
/usr - это большая часть пользовательских утилит, библиотек и общих данных.
/opt - обычно используют для стороннего софта.
/dev, /proc, /sys - это уже интерфейс к устройствам и состоянию системы, а не “обычные папки с файлами”.
/etc -> конфиги
/var -> логи и изменяемые данные
/home -> файлы пользователей
/tmp -> временное
/usr -> программы и библиотеки
Полезный ориентир
Самая частая ошибка новичков такая: искать все подряд в /home или складывать рабочие данные куда попало. На практике удобно помнить простое правило: если меняешь настройки, почти всегда идешь в /etc; если ищешь логи, почти всегда идешь в /var/log; если сервис что-то держит на диске, часто это тоже /var. Это уже сильно ускоряет диагностику.
cd /etc
cd /var/log
ls /home
Микролайфхак
Структуру каталогов полезно знать не только для навигации, но и для диагностики. Например, когда на сервере внезапно кончилось место и нет красиво настроенного мониторинга, самый быстрый способ понять проблему это посмотреть, какая верхнеуровневая директория выросла больше всего.
du -sh /* 2>/dev/null | sort -h
Так ты за минуту понимаешь, искать ли проблему в логах, пользовательских файлах, временных данных или стороннем софте.
Вывод
Файловая система Linux не хаотичная. У нее есть структура, и чем раньше привыкаешь к /etc, /var, /home, /tmp и /usr, тем легче жить на любом сервере.
| #utils