/usr – это не User? Истинное назначение каталога в Linux

Любой, кто впервые сталкивается с Linux, может ошибочно подумать: "Ага, /usr – это папка пользователя (User)!". Но при попытке сохранить свои файлы туда, вы, скорее всего, получите отказ из-за отсутствия прав доступа.

Сразу к делу: в современном Linux /usr – это не "домашний каталог пользователя", а "хранилище общих системных ресурсов".

Концептуальное изображение файловой системы Linux и каталога usr

1. /usr: заблуждение в названии и истинный смысл

В ранние дни Unix действительно существовали времена, когда в /usr находились домашние каталоги пользователей. Однако по мере роста систем их роли разделились, и сегодня /usr уместнее интерпретировать как сокращение от Unix System Resources. Несмотря на то, что название происходит от "user", функционально оно больше не несет этого значения.

  • Назначение: Хранилище данных и программ, необходимых для работы системы в режиме "только чтение" (Read-only).

  • Ключевая роль: Большая часть исполняемых файлов, библиотек и общих данных, добавляемых после установки ОС, находится здесь.


2. Взгляд внутрь /usr (краткий обзор)

Структура /usr напоминает миниатюрную Linux систему, целиком расположенную внутри.

Каталог Основное содержимое Примечание
/usr/bin Исполняемые файлы для обычных пользователей python, curl, git и т.д.
/usr/sbin Исполняемые файлы для системных администраторов Настройка сети, управление демонами и т.д.
/usr/lib Библиотеки, необходимые для выполнения программ Файлы .so, аналогичные .dll в Windows
/usr/share Общие данные, независимые от архитектуры Руководства (man), иконки, шрифты и т.д.
/usr/local Программы, установленные пользователем вручную Имеет приоритет при установке, например, из исходного кода

💡 Примечание: В чем разница между /bin и /usr/bin?

В прошлом в /bin помещались только минимально необходимые для загрузки инструменты. Однако современные дистрибутивы (Ubuntu, Fedora и др.) склонны объединять их, создавая символическую ссылку /bin на /usr/bin для упрощения управления.
Аналогичное отношение существует между /sbin и /usr/sbin.


3. Сравнение четырех часто путаемых каталогов

Мы четко разграничиваем роли четырех каталогов, которые чаще всего вызывают путаницу.

  1. /home (Личное пространство): Здесь хранятся личные документы пользователя, конфигурационные файлы (например, ~/.bashrc). Если вы переустанавливаете ОС, достаточно сохранить этот каталог, чтобы ваши данные остались целы.

  2. /usr (Системные ресурсы): Это репозиторий общих программ, которыми управляют менеджеры пакетов (apt, dnf и др.).

  3. /opt (Внешние приложения): Пространство для сторонних приложений, которые устанавливаются "целиком" и не следуют системе управления пакетами, таких как Google Chrome или Discord.

  4. /var (Изменяющиеся данные): Здесь накапливаются данные, содержимое которых постоянно меняется в процессе работы системы, например, файлы журналов (логов), файлы баз данных.


4. Практическое руководство: Куда сохранять свои файлы?

Местоположение файлов зависит от ситуации. Соблюдая эти правила, вы сможете заслужить репутацию человека, "понимающего Linux".

  • Простые скрипты для личного использования:

    ~/bin (создайте папку bin в домашнем каталоге) или ~/.local/bin

  • Программы, созданные вами и предназначенные для использования всей системой:

    /usr/local/bin (безопасное общее пространство, не конфликтующее с менеджером пакетов)

  • Крупное коммерческое программное обеспечение, загруженное извне:

    /opt/название_приложения

  • Места, которые никогда не следует трогать:

    /usr/bin (управляется системным менеджером пакетов, поэтому прямое добавление или удаление файлов может привести к повреждению пакетов.)


Краткое изложение в 4 пунктах

  1. /usr – это НЕ папка с пользовательскими данными (User).

  2. Это хранилище программ и ресурсов, используемых системой совместно.

  3. Личные файлы храните в /home, а общедоступные приложения, установленные вручную, – в /usr/local или /opt. (Я, например, храню AppImages в /opt).

  4. Для личных скриптов удобно создать каталог ~/.local/bin и управлять ими оттуда — это помогает поддерживать порядок.

Надеемся, что теперь ваши вопросы о каталоге /usr прояснились. Как пользователь, любящий Linux, я искренне надеюсь, что эта статья поможет многим глубже понять Linux и полностью погрузиться в очарование этой операционной системы.