Как вы уже определили, ваши переменные среды должны быть установлены в ~/.pam_environment
как рекомендовано на https://help.ubuntu.com/community/EnvironmentVariables. Проще сказать, чем сделать ;)
Возможно, вы столкнулись с тем же разрывом в конфигурации, который существовал для меня. Смотрите обходной путь для зашифрованного дома ниже.
Моя ~/.pam_environment
:
PATH DEFAULT=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:${HOME}/bin
IDEA_JDK DEFAULT=${HOME}/Applications/jdk
Почему безобразный статический путь? ${PATH}
не будет работать для меня. Я несколько раз пытался обойти свой логин, пытаясь обойти его, поэтому я придерживался уродливой статической копии значений по умолчанию :)
Обходной путь для зашифрованных домашних папок
В выпусках Ubuntu вплоть до Precise 12.04 Beta 2 включительно, если вы используете зашифрованный домашний каталог, вам нужно изменить /etc/pam.d/common-session
чтобы он загрузил ~/.pam_environment
. Это решение, очевидно, работает для более ранних выпусков, но я не проверял его.
Это похоже на проблему с зашифрованными домашними каталогами. я добавил
требуется сеанс pam_env.so
в конце /etc/pam.d/common-session и теперь ~ /.pam_environment читается. В другой системе без зашифрованных домашних каталогов (также 10.04) обходной путь не требуется. Возможно, в моем случае система пытается прочитать ~ /.pam_environment, прежде чем она будет расшифрована.