嘗試安裝用於無頭運行 Virtualbox VM 的服務時出現問題

嘗試安裝用於無頭運行 Virtualbox VM 的服務時出現問題

我的目標是當我啟動和停止我的主機(Ubuntu 10.04)時,讓 Ubuntu 優雅地啟動和停止無頭虛擬機器 VM。

我正在使用一個腳本由...提供誇迪爾·卡里穆拉的頁面

這是腳本中的 LSB 註解頭(我從「Required-Start」中刪除了 vboxnet 以減少依賴性):

### BEGIN INIT INFO
# Provides:          vboxsvc
# Required-Start:    $local_fs $remote_fs vboxdrv 
# Required-Stop:     $local_fs $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      S 0 1 6
# Short-Description: VirtualBox Service
# Description:       VirtualBox Service to startup and shutdown Virtual Machines
### END INIT INFO

正如 Quadir 所解釋的,我在 /etc/init.d/ 中找到了「vboxsvc」並執行了:

$sudo update-rc.d vboxsvc

這創建了運行級別的連結。例如在運行等級 2 中:

$ls -l /etc/rc2.d/
...
lrwxrwxrwx 1 root root  17 2010-11-03 20:02 S20vboxdrv -> ../init.d/vboxdrv
lrwxrwxrwx 1 root root  25 2010-11-03 20:03 S20vboxweb-service -> ../init.d/vboxweb-service
lrwxrwxrwx 1 root root  17 2010-11-11 21:43 S21vboxsvc -> ../init.d/vboxsvc
...

如果我手動啟動|停止服務:

$sudo /etc/init.d/vboxsvx start

它按預期工作。

如果我執行“service --status-all”,該服務不會出現在清單中,但當我使用 sysv-rc-conf --list 時,該服務就會出現。

當我啟動電腦時它不會自動啟動。另一方面,當我重新啟動或關閉時,該服務會自動停止。由於某種原因,當系統啟動時,連結 /etc/rc2.d/S21vboxnet 未執行或發生其他情況。

我知道 Upstart 是 Ubuntu 中現在做事的方式,但 SysV init 仍然受支持,對吧?

編輯:我想我已經接近解決問題了。我認為解決方案與對我的家庭文件系統進行加密有關。當 init 進程執行相應的啟動腳本並嘗試執行“sudo -H -u myuser VBoxManage myVirtualMachine -type vrdp > /dev/null”時,它無法訪問 myVirtualMachine 的資料(位於加密檔案系統中)因為我還沒有以myuser身分登錄,因此我的主檔案系統尚未安裝。

答案1

我認為整個問題是由我的主分割區被加密引起的。

我最終遵循了這個問題刪除加密。

我的建議是,除非您知道自己在做什麼,否則不要在安裝 Ubuntu 時加密您的主分割區。如果您這樣做,請注意,除非您已經登錄,否則您的主目錄下的所有內容都會被其他使用者(包括 root)鎖定。

答案2

讓一個新的系統使用者來運行 VirtualBox 不是比取消加密你的主資料夾更好嗎?

這樣您仍然可以獲得保護,並且虛擬機器可以毫無問題地啟動。

相關內容