私はvirt-managerを使って仮想マシンを作成し、virsh editを使ってxmlを編集することができました。しばらく前に、誰かが同じ質問をしたことを発見しました。
https://www.reddit.com/r/VFIO/comments/dh9iyo/convert_libvirt_xml_into_qemu_command_line_and/
ユーザーjkhsjdhjsが言った:
libvirt xmlをqemuコマンドラインに変換するには、libvirtを使用して仮想マシンを起動するだけです。 libvirtは複数のコマンドライン引数を使用してqemuプロセスを開始し、それを保存できます。 libvirtはqemuプロセスを開始するため、まったく同じことを行う必要があります。
わかりましたが、なに? qemuコマンドに含まれるすべてのオプションを表示できるように、libvirtを使用して仮想マシンを起動する方法を知りたいです。
私は以前試しました:
virsh dumpxml win10
virsh domxml-to-native qemu-argv win10.xml
error: internal error: invalid PCI passthrough type 'default'
答え1
質問はqemu
コマンドラインを生成する方法を尋ねるため、virsh
VM(ドメイン)の起動後に実行されるプロセスのみを表示できます。ただし、質問にもっと正確に答えるには、次のコマンドが正しいことがあります。
virsh domxml-to-native
domxml-to-native qemu-argv --domain [name_of_vm]
これは、仮想マシンが起動せず、これを実行するためのコマンドラインのみが生成されるためです。 〜のようにウェールズ馬マニュアルページには次のように記載されています。
domxml-to-native format { [--xml] xml | --domain domain-name-or-id-or-uuid }
ファイル変換XMLドメインXML形式に変換または既存の変換- ドメイン形式別に名前が付けられたデフォルトのゲスト構成形式。これXMLそして- ドメイン引数は相互に排他的です。次のタイプの場合滞在引数、参照
domxml-from-native
。
答え2
ゲストのQEMUログファイルを表示します。これらのログファイルはホストのフォルダにあります。/var/log/libvirt/qemu/DomainName
実行を見ることができます。/usr/bin/qemu-system-x86_64...ログのコマンドです。
答え3
1 つの方法は、コンピュータを VirtManager で実行している状態にして端末ウィンドウに移動し、ps コマンドを使用してすべてのプロセスを一覧表示することです。
ps -fA
または
ps -fA | cat
。 (cat
長い文字列がコンソールにラップされます)。それからあなたは見つけることができますゲームVirtManagerが実行したコマンドテキストを処理して抽出します。これは、単にqemuを呼び出してマシンを実行するためです。