私はGentooインストールを実行しており、最近systemdに移動しました。 Xenで起動するたびにxlコマンドを実行できず、次のエラーが発生します。
xc:エラー:特権コマンドインターフェイスのハンドルを取得できません(2 =対応するファイルまたはディレクトリなし):内部エラー
libxl: エラー: libxl.c:92: libxl_ctx_alloc: libxc のハンドルを開けませんでした: そのファイルまたはディレクトリがありません
xl コンテキストを初期化できません。
問題を調査したところ、上記の3つのサービス(xenstored、xenconsoled、xendomains)が実行されておらず、systemdで有効にできないことがわかりました。確認しました/usr/lib64/systemd/システムforファイルとサービスファイルの名前にxenも含まれていますが、見つかりません。だから何とかこの3つのサービスをインストールする必要があると思いますが、私が現れたときになぜインストールされなかったのかわかりません。xen(およびxen-tools)またはsystemd。ソースからビルドする必要がありますか?どんな方向にも大変感謝します!
答え1
悪いニュース
数日前にこの質問を確認しましたが、回答を投稿するのを忘れていました。私はそれを使用しないので、私のxen
出力xen-tools
にemerge
は追加のパッケージが表示されます。
ecyoung@bedroom-gentoo ~ $ sudo emerge -av xen xen-tools
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild N ] dev-libs/yajl-2.0.4-r3::gentoo USE="-static-libs" ABI_X86="32 (64) (-x32)" 81 KiB
[ebuild N ] dev-python/markdown-2.6.1::gentoo USE="-doc -pygments {-test}" PYTHON_TARGETS="python2_7 python3_3 python3_4 (-pypy) (-pypy3)" 292 KiB
[ebuild N ] dev-python/pypam-0.5.0-r3::gentoo PYTHON_TARGETS="python2_7 python3_3" 103 KiB
[ebuild N ] sys-firmware/ipxe-1.0.0_p20130925::gentoo USE="qemu usb -iso -undi -vmware" 2,188 KiB
[ebuild N ] sys-devel/dev86-0.16.19::gentoo 697 KiB
[ebuild N ] net-misc/bridge-utils-1.5::gentoo USE="(-selinux)" 33 KiB
[ebuild N ] app-emulation/xen-tools-4.5.0-r6::gentoo USE="pam python -api -custom-cflags -debug -doc -flask -hvm (-ocaml) -ovmf -pygrub -qemu -screen -static-libs -system-qemu -system-seabios" PYTHON_TARGETS="python2_7" 18,604 KiB
[ebuild N ] app-emulation/xen-4.5.0-r8::gentoo USE="-custom-cflags -debug -efi -flask -xsm" 0 KiB
Total: 8 packages (8 new), Size of downloads: 21,996 KiB
Would you like to merge these packages? [Yes/No] n
Quitting.
ecyoung@bedroom-gentoo ~ $
上記の出力からわかるように、systemd
USEフラグはまたはのapp-emulation/xen
USEリストには表示されませんapp-emulation/xen-tools
。systemd
USE フラグをサポートするすべてのパッケージには、そのフラグがリストされます。実際には、スクリプトをapp-portage/gentoolkit
含むequery
パッケージでそれを確認できます。
ecyoung@bedroom-gentoo ~ $ sudo equery hasuse systemd
* Searching for USE flag systemd ...
[IP-] [ ] app-admin/syslog-ng-3.6.2:0
[IP-] [ ] dev-libs/efl-1.12.2:0
[IP-] [ ] kde-base/kdm-4.11.19:4/4.11
[IP-] [ ] media-gfx/sane-backends-1.0.24-r5:0
[IP-] [ ] media-sound/pulseaudio-5.0-r7:0
[IP-] [ ] net-print/cups-2.0.2-r1:0
[IP-] [ ] net-wireless/bluez-5.25:0/3
[IP-] [ ] sci-geosciences/gpsd-3.9-r1:0
[IP-] [ ] sys-apps/accountsservice-0.6.40:0
[IP-] [ ] sys-apps/busybox-1.23.1-r1:0
[IP-] [ ] sys-apps/dbus-1.8.16:0
[IP-] [ ] sys-apps/util-linux-2.25.2-r2:0
[IP-] [ ] sys-auth/pambase-20150213:0
[IP-] [ ] sys-auth/polkit-0.112-r2:0
[IP-] [ ] sys-fs/lvm2-2.02.109:0
[IP-] [ ] sys-fs/multipath-tools-0.5.0-r1:0
[IP-] [ ] sys-fs/udisks-2.1.4:2
[IP-] [ ] sys-process/procps-3.3.9-r2:0
[IP-] [ ] virtual/libgudev-215-r3:0/0
[IP-] [ ] virtual/libudev-215-r1:0/1
[IP-] [ ] virtual/udev-215:0
[IP-] [ ] x11-base/xorg-server-1.16.4:0/1.16.1
[I-O] [ ] x11-wm/enlightenment-0.19.4:0.17/0.19
ecyoung@bedroom-gentoo ~ $
systemdプロファイルを有効にすると、リストはより包括的になります。より完全なリストについては、下記のトラッカーエラーをご覧ください。
可能な修正
フラグが上記にリストされていないので、約3つのオプションを考えることができます。
- あなた自身の.serviceファイルを作成してください。。次のような他のリンクもたくさんあります。これ、ちょうどGoogleシステムサービスの作成
eselect profile
initを使用して(プロファイルを選択せずに)OpenRC / SysVに戻しますsystemd
。この設定はGentooのXen Wikiエントリ.service files
#1に書いた内容を次に貢献してください。バグ 482420 - app-emulation/xen-tools: systemd 単位スクリプトファイルのサポートを追加、これを防ぎます。バグ 448882 - (install-systemd-unit) [Tracker] パッケージが systemd デバイスを提供していません。。このリストには、システム単位を必要とするすべてのパッケージが含まれています。Xマークされた部分のサポートが追加されました。まだ仕事が必要ない人。
答え2
systemdがすでにインストールされている間にxenとxen-toolsを再インストールして問題を解決しました。
しかし、私は私がインストールしたQEMUバイナリを指すようにxen-qemu-dom0-disk-backend.serviceを変更する必要がありました(別のQEMUパッケージを使用しているため)。