У меня проблема с переменной среды, которую я не могу решить. Я использую Ubuntu (Karmic, 9.10) и захожу через NX (NoMachine) на Mac.
Я добавил несколько переменных окружения в мой файл .bashrc
, например:
export JAVA_HOME=$HOME/dev/tools/Linux/jdk/jdk1.6.0_16/
Сидя за компьютером, эта переменная окружения доступна в командной строке, а также для приложений, которые я запускаю из главного меню. Однако при переходе через NX переменная окружения корректно отображается в командной строке, но НЕ при запуске через панель запуска.
В качестве примера я создал простой сценарий оболочки под названием testpath
в моей домашней папке:
#!/bin/sh
echo $PATH && sleep 5
quit
Я дал ему права на выполнение:
chmod +x testpath
А затем я создал пункт запуска в моем главном меню, который просто запускается:
./testpath
Когда я сижу за компьютером, запускается этот модуль запуска и показывает все, что я положил в $PATH
в моем файле .bashrc
(например, $JAVA_HOME
и т.д.). Но когда я перехожу через NX, он показывает совершенно другое значение для $PATH
, несмотря на то, что если я запускаю окно терминала (все еще в NX) и набираю export $PATH
, оно отображается правильно.
Я предполагаю, что это связано с тем, какие файлы загружаются оконной системой через NX, и что это какой-то другой файл. Но я понятия не имею, как это исправить.
Для записи у меня также есть файл .profile
со следующим:
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi