簡體   English   中英

`無業游民停止后出錯; 流浪了`

[英]Error after `vagrant halt; vagrant up`

我正在使用 Vagrant 1.7.4 和 VBox 5.0.0 在 Win7 上設置 Ubuntu 15.04 VM。

在第一次vagrant up我可以使用vagrant putty ssh 進入機器,一切都設置正確並且可以正常工作。 當我運行vagrant halt ,VM 正常關閉,沒有錯誤消息。

但是,當我嘗試使用vagrant up; vagrant putty重新啟動 VM vagrant up; vagrant putty vagrant up; vagrant putty ,機器處於奇怪的狀態。 例如,默認的同步文件夾/vagrant是空的,即使第二個vagrant up調用打印以下消息:

default: /vagrant => C:/Users/ArneUser/numecs/dev_env

此外,這個vagrant up調用會在 PowerShell 中打印以下消息:

The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!

/sbin/initctl emit --no-wait vagrant-mounted MOUNTPOINT=

Stdout from the command:

Stderr from the command:

stdin: is not a tty
bash: line 2: /sbin/initctl: No such file or directory

我正在運行一個非常基本的設置只是為了測試這個錯誤,所以我認為錯誤不在我的配置腳本中。 一些指向正確方向的指針將不勝感激。

打開VirtualBox GUI並手動關閉machine ,然后再次運行vagrant up命令。

這解決了我的問題:)

/vagrant 是空的

/sbin/initctl 發射 --no-wait vagrant-mounted MOUNTPOINT=

從這兩行我懷疑 MOONTPOINT 應該是 /vagrant 但由於 /vagrant 為空,SSH 現在正在工作。

由於 Virtualbox 5,我看到了類似的問題。嘗試將 Virtualbox 降級到 4.3.x,並確保您擁有最新的 Vagrant (1.7.4)。

https://github.com/mitchellh/vagrant/issues/5572

Initctl 是 Upstart init 守護進程的一部分。 據我所知,Ubuntu 15.04 是第一個放棄 Upstart 而支持 SystemD 的 Ubuntu 版本,因此 /sbin/initctl 預計不會存在於您的操作系統中。 我相信這需要固定在您使用的盒子中。

"/sbin/initctl emit ..." 的意義在於通知其他 Upstart 單元 vagrant 共享文件夾已經掛載並且可以進行讀/寫操作。 由於不再使用 upstart,因此可以安全地假設不需要此調用。 這是一個相當粗糙的 hack,但是您可以在 /sbin/initctl 中創建一個空腳本。 這應該允許 vagrant 啟動過程正常繼續並配置您的盒子。

就我而言,似乎 Marc Young 建議通過打開 Virtualbox GUI,虛擬機本身似乎已掛起。 我在虛擬盒子控制台上看到了這些錯誤信息: 在此處輸入圖片說明

因此似乎不是 Vagrant 相關的問題,而是虛擬機(Linux Kernel)本身似乎掛了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM