2017-10-19 114 views
0

當Vagrant完成配置Ubuntu時,我有一個腳本,它安裝所有依賴項和來自不同存儲庫的兩個項目。但我的git克隆失敗,此消息:從配置腳本git克隆失敗

Cloning into 'frontend'... 
Host key verification failed. 
fatal: Could not read from remote repository. 

Please make sure you have the correct access rights 
and the repository exists. 

但是,當我做我的git clone在SSH它完全...我在我的配置文件與克隆之前desactivated的StrictHostKeyChecking

echo -e "Host *" >> /home/vagrant/.ssh/config 
echo -e "\tStrictHostKeyChecking no" >> /home/vagrant/.ssh/config 

爲什麼git克隆在腳本中失敗,而不是在SSH中?我如何解決我的問題?

編輯:爲問,我的無業遊民文件:

# -*- mode: ruby -*- 
# vi: set ft=ruby : 

Vagrant.configure("2") do |config| 
    config.vm.box = "bento/ubuntu-17.04" 

    config.vm.network "private_network", ip: "192.168.50.5" 
    config.vm.synced_folder "./../projects", "/home/vagrant/projects" 

    config.vm.provider "virtualbox" do |v| 
    v.name = "devOS" 
    end 

    config.vm.provision "shell", path: "./configure" 
end 
+0

還有就是你運行置備腳本根高的機會,您能不能告訴你Vagrantfile? –

+0

當然是! – Wizix

回答

0

所以你的配置腳本以root身份運行,但你有文件更新您的無業遊民的用戶,當您連這將很好地工作。

你想要的是運行腳本的無業遊民用戶和您需要的privileged option

privileged(布爾) - 指定是否執行shell腳本 以特權用戶或沒有(須藤)。默認情況下,這是「真正的」

編輯您的Vagrantfile並更改

config.vm.provision "shell", path: "./configure", privileged: false 
+0

它的工作原理,謝謝! – Wizix