LINUX.ORG.RU
решено ФорумAdmin

vagrant:установить переменные среды в гостевой системе

 ,


0

1

На гостевой системе установоена последняя LTSная убунта, которая trusty. В целом все бы ничего, но приложение внутри ВМ опирается на значение некоторых переменных среды. В provision скрипте я пробовал их прописать, затем в .bashrc,экспортировать в среду кроном при событии перезагрузки. Однако как только захожу по ssh в VM, то ничего в окружении из моих переменных нет. Гуглил что при ssh заходе в систему многие инициализационные скрипты система не читает. Но таки возникает вопрос как вы решаете проблему настройки переменных окружения при использовании ssh и vagrant

★★★★★

Проблема, действительно, в том что при ssh логине многие инициализационные файлы, работающие при обычном логине,не читаются системой. Однако файл .profile в домашней директории пользователя — исключение. .bashrc по-умолчанию не читается при логине ssh

pylin ★★★★★
() автор топика
Ответ на: комментарий от pylin

Однако файл .profile в домашней директории пользователя — исключение. .bashrc по-умолчанию не читается при логине ssh

SSH тут ни при чём, man bash. ~/.bashrc нужно считывать из ~/.profile или ~/.bash_profile. У меня, например, в начале ~/.profile есть такое:

# shell rc files {{{
# if running bash
if [ -n "$BASH_VERSION" ]; then
    if [ -f "$HOME/.bashrc" ]; then
    . "$HOME/.bashrc"
    fi
fi

# zshrc
if [ -n "$ZSH_VERSION" ]; then
    if [ -f "$HOME/.zshrc" ]; then
        . "$HOME/.zshrc"
    fi
fi
# }}}

Gotf ★★★
()
Ответ на: комментарий от Gotf

SSH таки имеет отношение, так как там весьма сильные ограничения на файлы, читаемые при логине. Спасибо за совет и пояснение.

pylin ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.