2014-02-13 6 views
3

У меня есть файл export.sh, который имеет это содержание:установить путь в бродячей машине

export JAVA_HOME="/opt/hadoop/jdk1.7.0_51" 
export PATH=$JAVA_HOME/bin:$PATH 

У меня есть еще один скрипт (setup.sh), в котором я Sourcing export.sh:

source /vagrant/export.sh 

setup.sh называется при предоставлении:

master.vm.provision :shell, path: "scripts/setup.sh" 

Но при загрузке машины, и я стараюсь (например):

which java 

это показывает пустым ...

Как я могу включить вновь добавляемый экспорт пути в Vagrant?

ответ

2

Добавьте следующую строку в файл setup.sh:

echo "source /vagrant/scripts/export.sh" >> /home/vagrant/.bashrc 

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

Предполагается, что ваш setup.sh находится в каталоге /vagrant/scripts на вашей виртуальной машине.

+0

Позвольте мне попробовать это один раз. – user2230605

+0

Не повезло vagrant @ exact32: ~ $ echo $ PATH /bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/vagrant_ruby/bin vagrant @ exact32: ~ $ cat .bashrc | источник grep # sources /etc/bash.bashrc). источник /vagrant/scripts/export.sh бродяга @ precise32: ~ $ кошка /vagrant/scripts/export.sh экспорт JAVA_HOME =/опт/Hadoop/jdk1.7.0_51 экспорт PATH = $ JAVA_HOME/бен: $ PATH vagrant @ exact32: ~ $ – user2230605

+0

[Этот Vagrantfile] (https://raw.github.com/Turistforeningen/hytteadmin/master/Vagrantfile) - это то, как я экспортирую свои виртуальные машины. –

Смежные вопросы