Практика файловой системы

Практика файловой системы

Какую папку мне следует использовать?

Практическое руководство по размещению скриптов, приложений, служебных данных, журналов, временных файлов и общих ресурсов в Linux.

Аудитория
Пользователи, организующие реальные системы
Время чтения
10 мин

Выбирайте по назначению

Выбор каталога Linux становится проще, если вы отделите личные файлы от системных файлов, а конфигурацию — от данных. Цель — не совершенство; это предсказуемость для вас, инструментов, резервного копирования и будущих специалистов по обслуживанию.

Выбирайте по назначению
NeedUseReason
Персональные скрипты для одного пользователя~/bin или ~/.local/binПринадлежит пользователю и легко добавляется в PATH.
Общесистемный локальный скрипт/usr/local/binЗарезервировано для программ, установленных локальным администратором.
Пакет приложений для поставщиков/opt/app-nameСохраняет файлы сторонних приложений вместе
Постоянные данные службы/var/lib/app-nameСтандартное место для состояния демона
Журналы обслуживанияжурналctl или /var/log/имя-приложенияПодходит для существующих инструментов ведения журналов.
Содержание сайта/srv/site-name or /var/wwwРасположение общего служебного контента
Временные временные данные/tmpНедолговечен и часто автоматически очищается.
Более длинные временные данные/var/tmpВременно, но более постоянно при перезагрузке во многих системах.
Конфигурация системы/etc/app-nameКонфигурация всей машины

Практические правила

  • Если он нужен только одному пользователю, храните его в домашнем каталоге этого пользователя.
  • Если он принадлежит менеджеру пакетов, не редактируйте его вручную, если это не указано в документации.
  • Если демон записывает его с течением времени, ожидайте его в /var.
  • Если это конфигурация для всей машины, ожидайте ее в /etc.
  • Если это съемное или временное монтирование, используйте /media или /mnt в зависимости от контекста.