我正在使用Vagrant通過使用shell配置部署包含多個已安裝軟件包的虛擬機。其中一個軟件包需要更新正確使用的路徑,這是我無法做到的。使用shell配置更新Vagrant中的路徑
這些都是我Vagrantfile的內容:
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
#config.vm.network "forwarded_port", guest: 8888, host: 8888
config.ssh.forward_agent = true
config.vm.provision "shell", path: "provision.sh"
end
這些下面的事情我想:
創建一個單獨的.bashrc和.profile文件的文件用下面的命令(在附加文件結尾)並將它們複製到主目錄中:
export PATH="/usr/local/x86_64/bin:$PATH"
嘗試寫到.profile文件:
echo 'export PATH="/usr/local/x86_64/bin:$PATH"' >> .profile
剛剛嘗試開通期間出口路徑(即如在provision.sh一行代碼):
export PATH="/usr/local/x86_64/bin:$PATH"
後vagrant up
命令完成,則此命令不啓用路徑的以下vagrant ssh
的變化。
我有一個非常類似的問題。但在我的情況下,我不得不使用你的腳本作爲流浪用戶,而不是根。由於vagrant在提供期間默認爲root,因此我必須添加特權標誌:'config.vm.provision:shell,path:'android_update.sh',priviliged:false'。 PS:可以使用多個shell腳本提供程序。 – 2014-07-15 04:05:25