2014年10月19日 星期日

解決「因『核心模組』錯誤,致 VBox 虛擬機不能啟動」問題

若依照前文的步驟安裝 VirtualBox,啟動『虛擬機』時不應該出現這樣的錯誤訊息
通常也會伴隨著這個提示訊息。
這是因為 VirtualBox 在安裝時,會將一個『核心模組』安放在靠近 Linux 核心的地方。若
  • 在 VirtualBox 安裝或更新時,並未建立適合該 Linux 核心版本的模組。
  • 在 Linux 的核心更新至新版,這個『核心模組』因為某些原因未再編譯一次。
這兩種更新中,若有發生 VirtualBox 的『核心模組』未適當地重新編譯,就會因『核心模組』與 Linux 核心的版本不合而不能順利啟動。當然,『虛擬機』也就不能正常啟動了。
  解決問題的方法,就在提示訊息中。但有時會因太快或不小心把它關閉,有些讀者或因此而不知如何解決。將解決的步驟詳細記載如下:

1. 安裝『核心模組自動編譯』套件

要 Linux 自動編譯『核心模組』,除了需要 DKMS (Dynamic Kernel Module Support) 外,還要一些其它套件,如:kernel-devel、gcc 等。安裝步驟如下:開啟『終端機』並切換成 root 身份,接著再下這個命令
[root@Core-i7 ~]# yum install dkms kernel-devel gcc
:後兩個套件通常在安裝 DKMS 時,也會因關聯性而同時安裝。

二、編譯 VirtualBox 的『核心模組』

即使安裝好『核心模組自動編譯』套件,也不會立即編譯『核心模組』。所以,剛才的錯誤要用手動方式修正,同樣也在『終端機』中,在 root 身份下,下這個命令
[root@Core-i7 ~]# /etc/init.d/vboxdrv setup
開始『核心模組』的編譯動作。

已測試版本:

  • Fedora: 14, 17, 19, 20

參考資料:

沒有留言:

張貼留言

感謝你耐心看完本文,歡迎留下任何指正、建議,筆者會儘快回應。(English is also welcome.)