На этот вопрос уже есть ответ здесь:
Мне нужно добавить путь к исполняемому приложению в переменную среды PATH. Поскольку мне нужно добавить путь во время установки .deb пакета, я должен использовать postinst скрипт в пакете debian. После прочтения официальной документации Ubuntu и вопроса Askubuntu я решил использовать /etc/environment
файл для добавления пути к моему приложению из-за доступа пользователей всей системы. Вот мой bash скрипт:
#! /bin/bash
cd ~
echo 'PATH="$PATH:/path/to/my/bin"' >> /etc/environment
и вот содержимое /etc/environment
после выполнения bash скрипта postinst:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
PATH="$PATH:/path/to/my/bin"
Теперь когда я выхожу из системы и пытаюсь войти, я застреваю в цикле входа!
Обновление 1:
Я протестировал подход для .profile в домашнем каталоге, и он работает отлично! Но мне нужно добавить путь для всех пользователей, поэтому я должен использовать /etc/environment
файл.
Избегайте modifing системных файлов. Вместо этого необходимо поместить исполняемый сценарий в /etc/profile.d
(сценарии в здесь выполнялись для каждого пользователя) измениться $PATH
значение.
/etc/profile.d/10-<package name>.sh
<час> #!/bin/sh
export PATH=$PATH:/path/to/executable