2016-08-23 32 views
0

我想SSH到命令行特定的流浪漢框:流浪 - 不能SSH到特定機器的命令行

vagrant ssh winbox password 

「WINBOX」是出現什麼框「被稱爲流浪箱列表「。然而,在該命令的進入我得到:

The machine with the name 'winbox' was not found configured for 
this Vagrant environment. 

如果我只是做「流浪者的ssh」這一切工作正常,所以我敢肯定,我發現了盒子的名字拼錯了。在盒子的流浪文件中出現相同的盒子名稱:

Vagrant.configure("2") do |config| 
config.vm.box = "winbox" 
config.ssh.username = "vagrant" 
config.ssh.password = ****** 
config.vm.network :forwarded_port, guest: 4444, host: 4440 
config.vm.network :forwarded_port, guest: 5555, host: 5555 
end 

是否有任何方法檢查當前正在運行的vagrant盒的名稱?

因爲我基本上是使用Java在JUNIT測試中執行命令行代碼,所以我在一行中全部登錄到框中,這一點很重要,並且不可能先去流浪ssh,然後用它輸入密碼。

回答

0

當您啓動新VM時,您只需要盒子名稱信息。

因此,無論是在運行vagrant init winbox還是更改Vagrantfile中的參數config.vm.box時。

已初始化VM(vagrant up),您可以對箱忘記之後,你不需要它了(它仍然需要存在於你的Vagrantfile但你不引用它了)

如果您在Vagrantfile中運行單個虛擬機,則只需運行vagrant ssh即可進入虛擬機。

,你是什麼困惑的vagrant ssh <VMName>是,當你在這種情況下,單一Vagrantfile會旋轉的多個虛擬機運行vagrant multi-machine所以,你需要指明的VM(不是框)的名稱ssh到正確的VM

+0

嗨,正如我在我的文章中所說,重要的是我用一行登錄到框中,因爲我用於與命令行進行交互的工具並未真正提供密碼輸入。那麼有什麼方法可以在你運行'vagrant ssh'的同一行輸入你的密碼? –

+0

你在你的Vagrantfile(參數'config.ssh.password')中有密碼,所以你不需要在我的命令行 –

+0

中輸入它,vagrant每次都要求我輸入密碼。 –