31.7. 間違えたカーネルイメージのエラー:PAE プラットフォーム上に非 PAE カーネル
非 PAE の para-virtualized ゲストをブートすると、以下のようなエラーメッセージが 表示されます。メッセージは 「Hypervisor 上でゲストカーネルを実行しようとしています。これは現在サポートされていません」と伝えています。Xen hypervisor は 現在、PAE と 64 bit の para-virtualized ゲストカーネルのみをサポートしています。
# xm create -c va-base Using config file "va-base". Error: (22, 'Invalid argument') [2006-12-14 14:55:46 xend.XendDomainInfo 3874] ERROR (XendDomainInfo:202) Domain construction failed Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/xen/xend/XendDomainInfo.py", line 195, in create vm.initDomain() File "/usr/lib/python2.4/site-packages/xen/xend/XendDomainInfo.py", line 1363, in initDomain raise VmError(str(exn)) VmError: (22, 'Invalid argument') [2006-12-14 14:55:46 xend.XendDomainInfo 3874] DEBUG (XendDomainInfo:1449) XendDomainInfo.destroy: domid=1 [2006-12-14 14:55:46 xend.XendDomainInfo 3874] DEBUG (XendDomainInfo:1457) XendDomainInfo.destroyDomain(1)32 bit 又は、非 PAE のカーネルを実行する必要がある場合は、使用するゲストを 完全仮想化の仮想マシンとして実行する必要があります。hypervisor の互換性ルールは以下のように なります:
- para-virtualized のゲストは、使用する hypervisor のアーキテクチャタイプに一致 しなければなりません。32 bit PAE のゲストを実行するには、32 bit PAE hypervisor が 必要になります。
- 64 bit para-virtualized のゲストを実行するには、Hypervisor も 64 bit の バージョンでなければなりません。
- 完全仮想化のゲストでは、32 bit ゲスト用に hypervisor は 32 bit か 64 bit の どちらかになります。32 bit 又は 64 bit hypervisor 上で、32 bit (PAE と 非-PAE) の ゲストを実行できます。
- 64 bit の完全仮想化のゲストを実行するには、使用する hypervisor も 64 bit で ある必要があります。