Почему я не могу войти, после того, как установлено в переменную среды пути

Я использую 12:04 LST, и я пытаюсь установить оракула jdk7 вручную.

Затем я обновляю /etc/environment установить PATH переменная.

Это - исходное содержание файла:

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

И я обновляю его как это:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
JAVA_HOME="/usr/lib/jvm/jdk1.7"
PATH="$PATH:$JAVA_HOME/bin"

Затем я заставляю его работать с помощью:

source /etc/environment

Затем я ввожу java и javac, и это работало.

Однако после того, как я перезагружаю свой компьютер, я был сохранен в экране входа в систему.

Затем я использую ctrl+alt+f2 пойти терминал.

И обновление /etc/envrionment как это:

/usr/bin/sudo /usr/bin/nano /etc/emvrionment к следующему:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
JAVA_HOME="/usr/lib/jvm/jdk1.7"

Затем я могу войти в систему снова.

Теперь у меня есть два вопроса:

  1. Почему я не могу войти в систему, если я добавляю строку PATH="$PATH:$JAVA_HOME/bin" в /etc/envirionment?

  2. Переменные, начинаются /etc/environment доступно всему пользователю?

1
задан 7 June 2013 в 00:42

2 ответа

/etc/environment не выполняется как скрипт, но читается как файл конфигурации, поэтому расширение оболочки недоступно, поэтому переменные не могут быть прочитаны.

Если вы не хотите использовать переменные, прибегните к использованию переменных сеанса в ~/.pam_environment.

Ссылка

0
ответ дан 7 June 2013 в 00:42

Хорошо. Я проверил это - это должно как-то зависеть от PAM, если написать в / etc / environment это: PATH = "/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: /bin:/usr/games:/usr/lib/jvm/jdk1.7/bin ", а затем отправьте его, он будет работать нормально, и вы сможете войти

0
ответ дан 7 June 2013 в 00:42

Другие вопросы по тегам:

Похожие вопросы: