Xenはprefixを変えるようにできていない

多くのスクリプトで/etc/xen等のパスがハードコードされているのでどうしようもない。
特にudevのコンテキスト(= hotplugが呼ぶスクリプト中)でxenstoreにアクセスするのが地味に困る。。
udevが起動したスクリプトがxenstoreにアクセスできない場合、単にタイムアウトし、次のようなエラーが出る。

Error: Device 0 (vif) could not be connected. Hotplug scripts not working.

これを解決するには、/etc/xen/scripts内のスクリプトが適切に使用中のxenのprefixをLD_LIBRARY_PATH等を含む必要が有る。要するに、使用するXenが/opt/xenに有るなら

export PYTHONPATH=/opt/xen/usr/lib64/python:$PYTHONPATH
PATH=/opt/xen/usr/bin:/opt/xen/usr/sbin:$PATH
export LD_LIBRARY_PATH=/opt/xen/usr/lib64:$LD_LIBRARY_PATH

のような内容のスクリプトを作ってsourceする。