Существует только ограниченное количество мест, где значение может быть неверно установлено для root.Домашним каталогом для суперпользователя является /root
, поэтому сначала нужно посмотреть в /root/.bashrc
и /root/.bash_profile
.Вам также может понадобиться заглянуть в /etc/bashrc
.
Если ничего из этого не дает просветления, вы можете попробовать отладку там, где установлена среда, добавив set -x
(и, возможно, env
) в начало/etc/profile
, возможно, только если человек, управляющий им, имеет значение root
(чтобы не мешать другим пользователям), и отследите, что выполнено и установлено.Используйте команду env
, чтобы определить, установлено ли для JAVA_HOME значение /etc/profile
.
В руководстве по Bash (версия 4.0) сказано:
§6.2 Файлы запуска Bash
[...]
Когда Bash вызывается как интерактивная оболочка входа в систему или как неинтерактивная оболочка с параметром --login, она сначала читает и выполняет команды изфайл '/etc/profile
', если этот файл существует.После прочтения этого файла он ищет «~/.bash_profile
», «~/.bash_login
» и «~/.profile
» в указанном порядке, а также читает и выполняет команды из первой, которая существует и доступна для чтения.
Если вы не сделали что-то необычное, root'ом ~
будет /root
.