Изменение переменной PATH в Debian $PATH

Как изменить переменную $PATH в Debian? Я попытался изменить /etc/profile, но это повлияло только на обычных пользователей (и да, я добавил путь к BOTH пользовательским и корневым путям).

После этого я попытался отредактировать /root/.profile, а затем /root/.bashrc также...

Ни один из них не работал. Вы знаете, где может быть проблема?

Ответ 1

Это установлено в файле /etc/login.defs на debian 6.0.

Это строки, которые вы должны изменить:

# *REQUIRED*  The default PATH settings, for superuser and normal users.
#
# (they are minimal, add the rest in the shell startup files)
ENV_SUPATH      PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ENV_PATH        PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

EDIT:

Я забыл указать, где нашел решение: https://serverfault.com/questions/166383/how-set-path-for-all-users-in-debian

Ответ 2

Измените /etc/environment, чтобы включить такую ​​строку:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

Ответ 3

Отредактируйте /etc/.profile, чтобы включить set -vx вверху. Перезапустите из нового окна. Тогда вы можете увидеть, что именно. файлы обрабатываются AND, где PATH имеет значение reset.

Кроме того, убедитесь, что вы действительно находитесь в оболочке, которую вы думаете. После завершения всех сценариев запуска сделайте echo $SHELL и подтвердите value = ожидаемая оболочка, скорее всего bash.

Надеюсь, это поможет.

Ответ 4

Если вы используете графический диспетчер отображения/графический интерфейс пользователя (a.k.a не просто оболочка или терминал), изменение /etc/profile, ~/.bashrc или другого файла не изменит переменную PATH.

В этом случае вам нужно создать файл: ~/.xsessionrc file и добавить что-то вроде этого:

export  PATH="$PATH:/sbin"

(в зависимости от пути, который вы хотите добавить)

Для получения дополнительной информации: https://wiki.debian.org/EnvironmentVariables

ПРИМЕЧАНИЕ для Debian 10, сначала проверьте это решение, если получите command not found:

su - root вместо su root

https://unix.stackexchange.com/info/482569/debian-10-buster-update-grub-command-not-found