У элементов запуска Ubuntu нет правильных переменных среды под NX

У меня проблема с переменной среды, которую я не могу решить. Я использую 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

2 ответа

Я признаю, что ничего не знаю о NX. Я дам этому шанс, хотя.

Был ли конкретный пользователь NX создан в вашем / home каталоге? Может быть, есть.bashrc, который нужно изменить там.

Есть ли в / etc файлы конфигурации NX, которые могут позволить вам предоставить переменные окружения?

Вы пытались добавить свои переменные в файл, который автоматически применяется ко всем учетным записям, например / etc / bashrc или /etc/bash.bashrc или /etc/profile?

Я никогда не использовал NX, но из того, что я прочитал, он подключается с использованием стандартного SSH. Можно установить переменные окружения для сеанса SSH, поместив их в $HOME/.ssh/environment, Попробуйте добавить свой путь к этому файлу.

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