У меня есть отдельный домашний раздел, поэтому я хочу установить некоторое программное обеспечение из источника в другой иерархии - не в моей учетной записи, предпочтительно в /home .

Перефразируя, скажем, у меня есть домашний каталог в /home/myuser и я хочу, чтобы моя новая иерархия (например, /bin, /lib, /include, /share, /local, /src вложена в фиктивный каталог пользователя - скажем /home/myprograms чтобы все программное обеспечение, которое я устанавливаю из исходного кода или просто хочу установить вне /usr, может находиться в отдельном каталоге.

Я могу устанавливать программы в этом каталоге, но как сделать эти программы доступными для всех пользователей на моем ПК?

Если у кого-то есть другое предложение для поддержания двух иерархий, пожалуйста, также оставьте комментарий.

1 ответ1

2

Для сторонних программ принято устанавливать их в /usr/local что сделает их доступными для других пользователей (в большинстве дистрибутивов).

Конечно, вы можете использовать любой другой каталог, например /home/myuser , но вам придется обновить переменную среды PATH . Вы можете сделать это, создав /etc/profile.d/mypath.sh со следующим содержимым:

PATH="/home/myuser/bin:$PATH"

Другим вариантом будет установка их в /opt с использованием подкаталога для каждой программы, например: /opt/foo/{bin,lib,share} , /opt/bar/{bin,lib,share} и так далее. Преимущество заключается в возможности быстрого удаления или копирования установки программы, но недостатком является то, что все разделено на несколько мест, поэтому вам придется добавить несколько каталогов в PATH .

Для получения более подробной информации ознакомьтесь со стандартом иерархии файловой системы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .