VirtualBoxで「X Windowシステムの不明なバージョン」エラーが出たときの対処法
さて、今日はこんな話です。ある日、VirtualBox上でFedora 23をテストしていた私は、快適な仮想環境ライフを送るための最初の一歩として、Guest Additions(ゲストアディションズ)のインストールを試みました。ところが、ほんの数秒の緊張の瞬間を経て、VirtualBoxから「未知のバージョンのX Windowシステムが検出されたため、X Windowシステム用ドライバーをインストールしません」というメッセージが表示されたのです。
VirtualBoxのチケットトラッカーを手早く検索してみると、これは5か月前から報告されているVirtualBox 4.3向けのバグでした。私が使っていたのは5.0.6ですが、提示されている修正方法は「仮想化ソフトウェアを新しいバージョンへアップグレードする」というもので、現時点の私には実行できません。さて、どうすればいいのでしょうか?
自分の手で回避策をハックしてみよう
ここでの状況を整理しましょう。特定のバージョンのVirtualBoxがインストールされており、その上でFedoraを大きな問題なく動かしたい。しかし、付属のドライバーセットでは不十分で、かといってアップグレードできない、あるいはアップグレードが許可されていない。一見すると行き詰まりに思えますが、実はそうではありません。
Installing the Window System drivers
Warning: unknown version of the X Window System installed. Not installing X Window System drivers.[ OK ]
本質的に必要なのは、Fedoraに対応した適切なドライバーを含む、より新しいバージョンのGuest Additionsをインストールすることです。「異なるバージョンのVirtualBoxとドライバーを混在させるのは好ましくないのでは?」と思われるかもしれません。確かにその通りです。しかし、これが唯一の選択肢である場合や、抜本的な対策に移る前にまず試してみたい場合は、このチュートリアルを最後まで読む価値があります。実際、この回避策はまったく侵入的ではなく、ホスト側に何らソフトウェアを追加インストールする必要がありません。
やるべきことは、現在使用しているものよりも新しいGuest Additionsを入手することです。この記事を執筆した時点では、私の環境のVirtualBoxはバージョン5.0.6でしたが、公式サイトでは5.0.16が最新版として案内されていました。
新しいISOファイルをダウンロードし、ゲストOS内でマウントします。設定メニューからISOファイルを仮想CDドライブとしてゲストに接続してもいいですし、あるいはゲスト内でループバックデバイスとして直接マウントすることもできます。
mount -o loop <iso file> /mountpoint
あとのインストール手順は、通常のGuest Additionsガイドとまったく同じです。
Verifying archive integrity... All good.
Uncompressing VirtualBox 5.0.16 Guest Additions for Linux............
VirtualBox Guest Additions installer
Removing installed version 5.0.6 of VirtualBox Guest Additions...
Removing existing VirtualBox non-DKMS kernel modules[ OK ]
Copying additional installer modules ...
Installing additional modules ...
Removing existing VirtualBox non-DKMS kernel modules[ OK ]
Building the VirtualBox Guest Additions kernel modules
Building the main Guest Additions module[ OK ]
Building the shared folder support module[ OK ]
Building the OpenGL support module[ OK ]
Doing non-kernel setup of the Guest Additions[ OK ]
You should restart your guest to make sure the new modules are actually used
Installing the Window System drivers
Installing X.Org Server 1.18 modules[ OK ]
Setting up the Window System to use the Guest Additions[ OK ]
You may need to restart the the Window System (or just restart the guest system) to enable the Guest Additions.
Installing graphics libraries and desktop services components[ OK ].
前提条件として補足しておくと、このチュートリアルでは以下を想定しています。コマンドライン操作にある程度慣れていること、コンパイルに必要なツール(make、gcc、カーネルソース、カーネルヘッダー)がインストール済みであること、そしてゲストOSとしてLinuxを使用していることです。これらが揃っていれば準備万端です。
まとめ
このガイドで紹介したのは、「使用中のVirtualBoxに対してゲストOSが新しすぎる」という状況における、比較的安全で無難な回避策です。ソフトウェアをアップグレードできない場合は、お使いのVirtualBoxのバージョンよりも新しいISOイメージからGuest Additionsをインストールしてみてください。この方法は概ね良好に機能し、大きな副作用もありません。本番環境での採用はおすすめしませんが、そもそもVirtualBoxもFedoraも企業ITの世界の定番というわけではありませんしね。
いずれにせよ、この方法でうまくいかなければ、思い切ってフルアップグレードを試すことになります。幸い、この回避策自体は特別なハッキングを一切必要とせず、ゲストOSの再起動1回(面倒であればX Windowの再起動だけでもOK)で、すべてを1回の作業セッション内で完了できます。試してみる価値は十分にありますし、ここで得た知識は、VirtualBoxのリリースとLinuxディストリビューションのリリースサイクルの間でときどき発生する、さまざまな小さなバグや不具合への対処にも応用できるはずです。それでは、良い仮想化ライフを!
それでは、また。
-
VirtualBoxでディスクをクローンする方法【VBoxManage活用チュートリアル】
仮想化を業務でも趣味でも利用している方なら、VirtualBoxという強力かつ多用途な無料ソリューションを目にしたことがあるかもしれません。VirtualBoxは、デスクトップユーザーに対して、あらゆる形でOSを展開できる大きな柔軟性を提供してくれます。さらに、単なる趣味として仮想化を楽しんでいるだけでなく、仮想化を通じて新しいOSを学ぼうとする熱心なソフトウェア愛好家の方であれば、次のような場面に必ず直面することでしょう。それは「大量の仮想マシンを展開する必要がある」というシナリオです。一台ずつインストール作業を行う時間的な余裕はないはずです。実際、大規模に環境を展開する際に手動で一つずつマ
-
VirtualBox 3.0.0 徹底レビュー!DirectX対応とネットワーク機能強化がすごい
私のお気に入りのデスクトップ仮想化ソフトウェアといえば、VirtualBoxとVMware Serverです。どちらも愛用しており、それぞれに魅力があります。全体的にはよく似た製品ですが、片方にしかない独自の機能を持っており、互いをうまく補完し合う関係にあると言えます。 つい先日、VirtualBox 3.0.0が大きな話題とともにリリースされました。これは、旧バージョンやVMware Serverと比べてどこまで進化したのかを確かめる絶好の機会です。深呼吸して、私と一緒にツアーに出かけましょう。長めの前置きで少々お付き合いいただきますが、きっと価値のある内容のはずです。 VirtualBo