これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの 64 つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド qemu-system-mipsXNUMXel です。
プログラム:
NAME
qemu-doc-QEMUEmulatorユーザードキュメント
SYNOPSIS
使用法:qemu-system-i386 [オプション] [ディスクイメージ]
DESCRIPTION
QEMU PC Systemエミュレーターは、以下の周辺機器をシミュレートします。
-i440FXホストPCIブリッジおよびPIIX3PCI toISAブリッジ
-Cirrus CLGD 5446 PCIVGAカードまたはBochsVESA拡張機能を備えたダミーVGAカード(ハードウェア
レベル、すべての非標準モードを含む)。
-PS / 2マウスとキーボード
-ハードディスクとCD-ROMをサポートする2つのPCIIDEインターフェイス
- フロッピーディスク
-PCIおよびISAネットワークアダプタ
-シリアルポート
-Creative SoundBlaster16サウンドカード
-ENSONIQ AudioPCIES1370サウンドカード
-Intel 82801AAAC97オーディオ互換サウンドカード
-IntelHDオーディオコントローラーとHDAコーデック
-Adlib(OPL2)-YamahaYM3812互換チップ
-Gravis UltrasoundGF1サウンドカード
-CS4231A互換のサウンドカード
-PCI UHCIUSBコントローラーと仮想USBハブ。
SMPは最大255個のCPUでサポートされています。
QEMUは、SeabiosプロジェクトのPCBIOSとPlex86 / Bochs LGPL VGABIOSを使用します。
QEMUは、佐藤達之によるYM3812エミュレーションを使用しています。
QEMUはGUSエミュレーション(GUSEMU32http://www.deinmeister.de/gusemu/>)Tibor "TS"による
シュッツ。
デフォルトでは、GUSは共有することに注意してください IRQ(7)パラレルポートを使用しているため、QEMUに次のように指示する必要があります
動作するGUSを持つためのパラレルポートがありません。
qemu-system-i386 dos.img -soundhw gus -parallelnone
あるいは:
qemu-system-i386 dos.img -device gus、irq = 5
または他の未請求のIRQ。
CS4231Aは、WindowsサウンドシステムおよびGUSMAX製品で使用されるチップです。
OPTIONS
ディスクイメージ はIDEハードディスク0の生のハードディスクイメージです。一部のターゲットはディスクを必要としません
画像。
標準オプション:
-h ヘルプを表示して終了します
-バージョン
バージョン情報を表示して終了します
-機械 [タイプ=]名[、prop =値[、...]]
エミュレートされたマシンを選択する 名。 「-machinehelp」を使用して、使用可能なマシンを一覧表示します。
サポートされているマシンプロパティは次のとおりです。
accel =アクセル1[:アクセル2[:...]]
これは、アクセラレータを有効にするために使用されます。 ターゲットアーキテクチャに応じて、kvm、
xen、またはtcgを使用できます。 デフォルトでは、tcgが使用されます。 複数ある場合
アクセラレータが指定されています。前のアクセラレータが失敗した場合、次のアクセラレータが使用されます
初期化。
kernel_irqchip = on | off
利用可能な場合、選択したアクセラレータのカーネル内irqchipサポートを有効にします。
gfx_passthru = on | off
利用可能な場合、選択したマシンのIGDGFXパススルーサポートを有効にします。
vmport = on | off | auto
vmmouseなどのVMWareIOポートのエミュレーションを有効にします。autoは、
加速度に基づく値。 accel = xenの場合、デフォルトはオフです。それ以外の場合、デフォルトはオフです。
に。
kvm_shadow_mem = size
KVMシャドウMMUのサイズを定義します。
dump-guest-core = on | off
コアダンプにゲストメモリを含めます。 デフォルトはオンです。
mem-merge = on | off
メモリマージサポートを有効または無効にします。 この機能は、
ホスト、VMインスタンス間で同一のメモリページを重複排除します(
デフォルト)。
iommu = on | off
エミュレートされたIntelIOMMU(VT-d)サポートを有効または無効にします。 デフォルトはオフです。
aes-key-wrap = on | off
s390-ccwホストでのAESキーラッピングサポートを有効または無効にします。 この機能
AESの実行を許可するためにAESラッピングキーを作成するかどうかを制御します
暗号化機能。 デフォルトはオンです。
dea-key-wrap = on | off
s390-ccwホストでのDEAキーラッピングサポートを有効または無効にします。 この機能
DEAの実行を許可するためにDEAラッピングキーを作成するかどうかを制御します
暗号化機能。 デフォルトはオンです。
-CPU
CPUモデルを選択します(リストおよび追加機能の選択については「-cpuhelp」)
-smp [cpus =]n[、cores =色] [、threads =スレッド] [、sockets =ソケット] [、maxcpus =最大CPU]
でSMPシステムをシミュレートする n CPU。 PCターゲットでは、最大255個のCPUがサポートされます。 オン
Sparc32ターゲット、Linuxは使用可能なCPUの数を4に制限します。PCターゲットの場合、
数 色 ソケットあたりの数 スレッド コアあたりの総数と
ソケット 指定できます。 欠落している値が計算されます。 XNUMXつの値にある場合
与えられた、CPUの総数 n 省略できます。 最大CPU 最大値を指定します
ホットプラグ可能なCPUの数。
-ぬま node [、mem =サイズ] [、cpus =cpu [-cpu]] [、nodeid = ]
-ぬま node [、memdev =id] [、cpus =cpu [-cpu]] [、nodeid = ]
マルチノードNUMAシステムをシミュレートします。 もしも memの, メムデブ と CPUの 省略され、リソースは
均等に分割します。 また、-に注意してください沼 オプションは指定されたもののいずれも割り当てません
資力。 つまり、既存のリソースをNUMAノードに割り当てるだけです。 この意味は
まだ使用する必要があります -m, -smp RAMとVCPUをそれぞれ割り当てるオプション、および
おそらく -物体 のメモリバックエンドを指定するには メムデブ サブオプション。
memの と メムデブ 相互に排他的です。 さらに、XNUMXつのノードが使用する場合 メムデブ、 すべての
彼らはそれを使わなければなりません。
-追加-fd fd =fd、set =セッションに[、opaque =不透明な]
ファイル記述子をfdセットに追加します。 有効なオプションは次のとおりです。
fd =fd
このオプションは、重複がfdセットに追加されるファイル記述子を定義します。
ファイル記述子をstdin、stdout、またはstderrにすることはできません。
セット=セッションに
このオプションは、ファイル記述子を追加するfdセットのIDを定義します。
不透明=不透明な
このオプションは、記述に使用できる自由形式の文字列を定義します fd.
fdセットから事前に開いたファイル記述子を使用してイメージを開くことができます。
qemu-システム-i386
-add-fd fd = 3、set = 2、opaque = "rdwr:/ path / to / file"
-add-fd fd = 4、set = 2、opaque = "rdonly:/ path / to / file"
-ドライブファイル= / dev / fdset / 2、index = 0、media = disk
-セットする グループヘッド.id.argは=値
パラメータを設定します argは アイテム用 id タイプの グループヘッド "
-グローバル ドライバー.小道具=値
-グローバル ドライバー=ドライバー、property =財産、値=値
のデフォルト値を設定します ドライバーのプロパティ 小道具 〜へ 値例えば:
qemu-system-i386 -global ide-drive.physical_block_size = 4096 -drive file = file、if = ide、index = 0、media = disk
特に、これを使用して、作成されたデバイスのドライバープロパティを設定できます。
機械モデルによって自動的に。 作成されていないデバイスを作成するには
自動的にプロパティを設定するには、-を使用しますデバイス.
-グローバル ドライバー.小道具=値 -globalの省略形です
ドライバー=ドライバー、property =小道具、値=値。 長い構文は、次の場合でも機能します ドライバー
ドットが含まれています。
-ブート
[注文=ドライブ] [、once =ドライブ] [、menu = on | off] [、splash =sp_name] [、splash-time =sp_time] [、reboot-timeout =rb_timeout] [、strict = on | off]
起動順序を指定する ドライブ ドライブ文字の文字列として。 有効なドライブ文字は
ターゲットアーキテクチャ。 x86 PCは、a、b(フロッピー1および2)、c(最初のハードディスク)、
d(最初のCD-ROM)、np(ネットワークアダプタ1-4からのEtherboot)、ハードディスクブートは
ディフォルト。 最初の起動時にのみ特定の起動順序を適用するには、を介してそれを指定します
かつて.
インタラクティブなブートメニュー/プロンプトは、 menu = on ファームウェア/ BIOSに関する限り
それらをサポートします。 デフォルトは非対話型ブートです。
スプラッシュ画像をBIOSに渡して、ユーザーがロゴとして表示できるようにすることができます。
オプションスプラッシュ=sp_name が与えられ、menu = on、ファームウェア/ BIOSがそれらをサポートしている場合。 現在
Seabios forX86システムはそれをサポートしています。 制限:スプラッシュファイルはjpegファイルである可能性があります
または24BPP形式(トゥルーカラー)のBMPファイル。 解決策は、によってサポートされている必要があります
SVGAモードなので、320x240、640x480、800x640をお勧めします。
BIOSにタイムアウトが渡される可能性があり、ゲストは一時停止します rb_timeout 起動時のミリ秒
失敗した後、再起動します。 もしも rb_timeout は「-1」で、ゲストは再起動せず、qemuは「-1」をに渡します
デフォルトでBIOS。 現在、Seabios forX86システムはそれをサポートしています。
を介して厳密な起動を行う strict = on ファームウェア/ BIOSがサポートしている限り。 これは効果のみ
bootindexオプションによってブート優先度が変更されたとき。 デフォルトは非厳密ブートです。
#最初にネットワークから起動し、次にハードディスクから起動してみてください
qemu-system-i386 -boot order = nc
#最初にCD-ROMから起動し、再起動後にデフォルトの順序に戻します
qemu-system-i386 -boot once = d
#スプラッシュ画像で5秒間起動します。
qemu-system-i386 -boot menu = on、splash = /root/boot.bmp,splash-time=5000
注:レガシー形式 '-boot ドライブ'は引き続きサポートされていますが、使用はお勧めしません
将来のバージョンから削除される可能性があるためです。
-m [サイズ=]メグ[、slots = n、maxmem = size]
ゲスト起動RAMサイズをに設定します メグ メガバイト。 デフォルトは128MiBです。 オプションで、
「M」または「G」の接尾辞は、メガバイトまたはギガバイト単位の値を示すために使用できます。
それぞれ。 オプションのペア スロット, 最大メモリ ホットプラグ可能な量を設定するために使用できます
メモリスロットとメモリの最大量。 ご了承ください 最大メモリ に揃える必要があります
ページサイズ。
たとえば、次のコマンドラインはゲスト起動RAMサイズを1GBに設定します。
追加のメモリをホットプラグするための3つのスロットを作成し、ゲストが使用できる最大メモリを設定します
4GBに達する:
qemu-system-x86_64 -m 1G,slots=3,maxmem=4G
If スロット と 最大メモリ 指定されていない場合、メモリホットプラグは有効にならず、ゲスト
起動RAMは決して増加しません。
-mem パス path
で一時的に作成されたファイルからゲストRAMを割り当てます path.
-mem-prealloc
-mem-pathを使用する場合は、メモリを事前に割り当てます。
-k 言語
キーボードレイアウトを使用する 言語 (たとえば、フランス語の場合は「fr」)。 このオプションは必要なだけです
生のPCキーコードを取得するのが簡単ではない場合(たとえば、Mac、一部のX11サーバーまたは
VNCディスプレイ付き)。 通常、PC / LinuxまたはPC / Windowsで使用する必要はありません。
ホスト
使用可能なレイアウトは次のとおりです。
ar de-ches fo fr-ca hu ja mk no pt-br sv
da en-gb et fr fr-ch は lt nl pl ru th
de en-us fi fr-be hr it lv nl-be pt sl tr
デフォルトは「en-us」です。
-オーディオヘルプ
オーディオサブシステムのヘルプが表示されます:ドライバーのリスト、調整可能なパラメーター。
-soundhw カード1[,カード2、...] or -soundhw を
オーディオと選択したサウンドハードウェアを有効にします。 'help'を使用して、利用可能なすべてのサウンドを印刷します
ハードウェア
qemu-system-i386 -soundhw sb16、adlib disk.img
qemu-system-i386 -soundhw es1370 ディスク.img
qemu-system-i386 -soundhw ac97 ディスク.img
qemu-system-i386 -soundhw hda disc.img
qemu-system-i386 -soundhw すべての disk.img
qemu-system-i386-soundhwヘルプ
Linuxのi810_audioOSSカーネル(AC97用)モジュールは手動で必要になる場合があることに注意してください
クロッキングを指定します。
modprobe i810_audio clocking = 48000
-バルーン なし
バルーンデバイスを無効にします。
-バルーン virtio [、addr =addr]
オプションでPCIアドレスを使用してvirtioバルーンデバイスを有効にします(デフォルト) addr.
- デバイス ドライバー[,小道具[=値] [、...]]
デバイスを追加 ドライバー. 小道具=値 ドライバのプロパティを設定します。 有効なプロパティは、
運転者。 可能なドライバとプロパティに関するヘルプを取得するには、「-devicehelp」を使用して
"-端末 ドライバー、ヘルプ」.
-名前 名
設定します 名 ゲストの。 この名前は、SDLウィンドウのキャプションに表示されます。
この 名 VNCサーバーにも使用されます。 また、オプションで上部を表示するように設定します
Linuxでのプロセス名。 個々のスレッドの命名は、Linuxで有効にすることもできます。
デバッグを支援します。
-uuid ウイド
システムUUIDを設定します。
ブロックデバイスオプション:
-fda file
-fdb file
file フロッピーディスク0/1イメージとして。
-hda file
-hdb file
-hdc file
·HDD file
file ハードディスク0、1、2、または3イメージとして。
-のCD-ROM file
file CD-ROMイメージとして(使用できません) -hdc と -のCD-ROM 同時に)。 あなたはできる
を使用してホストCD-ROMを使用する / dev / cdrom ファイル名として。
-ドライブ オプション[,オプション[,オプション[、...]]]]
新しいドライブを定義します。 有効なオプションは次のとおりです。
file =file
このオプションは、このドライブで使用するディスクイメージを定義します。 ファイル名の場合
カンマが含まれている場合は、XNUMX倍にする必要があります(たとえば、fileを使用するには "file = my ,, file"
"my、file")。
iSCSIデバイスなどの特別なファイルは、プロトコル固有のURLを使用して指定できます。
詳細については、「デバイスURL構文」のセクションを参照してください。
if =インタフェース
このオプションは、ドライブが接続されているインターフェイスのタイプを定義します。 利用可能
タイプは、ide、scsi、sd、mtd、floppy、pflash、virtioです。
バス=バス、ユニット=単位
これらのオプションは、バス番号とを定義することにより、ドライブが接続されている場所を定義します。
ユニットID。
index =index
このオプションは、リスト内のインデックスを使用して、ドライブが接続されている場所を定義します。
特定のインターフェイスタイプで使用可能なコネクタ。
メディア=メディア
このオプションは、メディアのタイプ(ディスクまたはCD-ROM)を定義します。
cyls =c、heads =h、秒=s[、trans =t]
これらのオプションの定義は、 -hdachs.
スナップショット=スナップショット
スナップショット は「オン」または「オフ」であり、特定のドライブのスナップショットモードを制御します(を参照)。
-スナップショット).
cache =キャッシュ
キャッシュ 「none」、「writeback」、「unsafe」、「directsync」、または「writethrough」であり、
ホストキャッシュを使用してブロックデータにアクセスする方法を制御します。
aio =AIO
AIO 「スレッド」または「ネイティブ」であり、pthreadベースのディスクI / Oと
ネイティブLinuxAIO。
破棄=捨てます
捨てます 「無視」(または「オフ」)または「マップ解除」(または「オン」)のいずれかであり、
捨てます (としても知られている トリム or マップを解除)リクエストは無視されるか、に渡されます
ファイルシステム。 一部のマシンタイプは、破棄要求をサポートしていない場合があります。
format =形式でアーカイブしたプロジェクトを保存します.
どのディスクを指定するか 形式でアーカイブしたプロジェクトを保存します. フォーマットを検出するのではなく、使用されます。 することができます
信頼できないフォーマットヘッダーの解釈を避けるために、format = rawを指定するために使用されます。
シリアル=シリアル
このオプションは、デバイスに割り当てるシリアル番号を指定します。
addr =addr
コントローラのPCIアドレスを指定します(if = virtioのみ)。
werror =アクション、rerror =アクション
どれを指定する アクション 書き込みおよび読み取りエラーを引き受けます。 有効なアクションは次のとおりです:「無視」
(エラーを無視して続行してみてください)、「停止」(QEMUを一時停止)、「レポート」(レポート
ゲストへのエラー)、 "enospc"(ホストディスクがいっぱいの場合にのみQEMUを一時停止します。レポートします。
それ以外の場合はゲストへのエラー)。 デフォルト設定は werror = enospc と
rerror = report.
読み取り専用
ドライブを開く file 読み取り専用として。 ゲストの書き込み試行は失敗します。
copy-on-read =コピーオンリード
コピーオンリード は「オン」または「オフ」であり、読み取りバッキングファイルをコピーするかどうかを有効にします
画像ファイルへのセクター。
ゼロを検出=ゼロを検出
ゼロを検出 「オフ」、「オン」、または「マップ解除」であり、の自動変換を有効にします
OSによるドライバー固有の最適化されたゼロ書き込みコマンドへのプレーンゼロ書き込み。 君は
次の場合は「マップ解除」を選択することもできます 捨てます ゼロ書き込みを可能にするために「マップ解除」に設定されます
UNMAP操作に変換されます。
デフォルトでは、 cache = writeback モードが使用されます。 データの書き込みが完了したと報告します
データがホストページのキャッシュに存在するとすぐに。 これはあなたの
ゲストOSは、必要に応じてディスクキャッシュを正しくフラッシュするようにします。 ゲストOSがそうする場合
揮発性ディスクの書き込みキャッシュを正しく処理せず、ホストがクラッシュしたり、電源が切れたりします。
その場合、ゲストはデータの破損を経験する可能性があります。
そのようなゲストのために、あなたは使用を検討する必要があります cache = writethrough。 これは
ホストページキャッシュはデータの読み取りと書き込みに使用されますが、書き込み通知は
QEMUがディスクへの各書き込みを確実にフラッシュした後にのみゲストに送信されます。 NS
これはパフォーマンスに大きな影響を与えることに注意してください。
ホストページのキャッシュは、次の方法で完全に回避できます。 cache = none。 これはしようとします
ゲストのメモリに直接ディスクIO。 QEMUはまだの内部コピーを実行する可能性があります
データ。 これはライトバックモードと見なされ、ゲストOSが処理する必要があることに注意してください
ホストクラッシュ時のデータ破損を回避するために、ディスクはキャッシュを正しく書き込みます。
ゲストに書き込み通知を送信するだけで、ホストページのキャッシュを回避できます
を使用してデータがディスクにフラッシュされたとき cache = directsync.
ホスト障害に対するデータの整合性を気にしない場合は、 cache = unsafe。 この
オプションは、ディスクにデータを書き込む必要はないが、代わりに書き込むことができることをQEMUに通知します
物事をキャッシュに保管します。 ホストの電源が切れたり、ディスクが故障したりするなど、問題が発生した場合
ストレージが誤って切断されるなど、画像はおそらく次のようになります
使用できなくなりました。 使用する場合 -スナップショット オプションでは、安全でないキャッシュが常に使用されます。
コピーオンリードは、同じバッキングファイルセクターに繰り返しアクセスすることを回避し、便利です
バッキングファイルが低速ネットワーク上にある場合。 デフォルトでは、copy-on-readはオフになっています。
の代わりに -のCD-ROM あなたが使用することができます:
qemu-system-i386 -drive file = file、index = 2、media = cdrom
の代わりに -hda, -hdb, -hdc, ·HDD、次を使用できます。
qemu-system-i386 -drive file = file、index = 0、media = disk
qemu-system-i386 -drive file = file、index = 1、media = disk
qemu-system-i386 -drive file = file、index = 2、media = disk
qemu-system-i386 -drive file = file、index = 3、media = disk
fdセットから事前に開いたファイル記述子を使用してイメージを開くことができます。
qemu-システム-i386
-add-fd fd = 3、set = 2、opaque = "rdwr:/ path / to / file"
-add-fd fd = 4、set = 2、opaque = "rdonly:/ path / to / file"
-ドライブファイル= / dev / fdset / 2、index = 0、media = disk
CDROMをide0のスレーブに接続できます。
qemu-system-i386 -drive file = file、if = ide、index = 1、media = cdrom
「file =」引数を指定しない場合は、空のドライブを定義します。
qemu-system-i386 -drive if = ide、index = 1、media = cdrom
バス#6でユニットID0のSCSIディスクを接続できます。
qemu-system-i386 -drive file = file、if = scsi、bus = 0、unit = 6
の代わりに -fda, -fdb、次を使用できます。
qemu-system-i386 -drive file = file、index = 0、if = floppy
qemu-system-i386 -drive file = file、index = 1、if = floppy
デフォルトでは、 インタフェース 「ide」であり、 index 自動的にインクリメントされます:
qemu-system-i386 -drive file = a -drive file = b "
次のように解釈されます:
qemu-system-i386 -hda a -hdb b
-mtdblock file
file オンボードフラッシュメモリイメージとして。
-SD file
file SecureDigitalカードイメージとして。
-pフラッシュ file
file パラレルフラッシュイメージとして。
-スナップショット
ディスクイメージファイルの代わりに一時ファイルに書き込みます。 この場合、rawディスクイメージ
使用したものは書き戻されません。 ただし、を押すと、強制的に書き戻すことができます。 Ca s.
-hdachs c,h,s、[、t]
ハードディスク0の物理ジオメトリを強制します(1 <= c <= 16383、1 <= h <= 16、1 <= s <= 63)および
オプションでBIOS変換モードを強制します(t= none、lbaまたはauto)。 通常、QEMUは
それらすべてのパラメータを推測します。 このオプションは、古いMS-DOSディスクイメージに役立ちます。
-fsdev
fsドライバー、id =id、パス=path、[security_model =セキュリティモデル] [、writeout =書き出す] [、readonly] [、socket =ソケット| sock_fd =靴下_fd]
新しいファイルシステムデバイスを定義します。 有効なオプションは次のとおりです。
fsドライバー
このオプションは、使用するfsドライバーバックエンドを指定します。 現在「ローカル」、「ハンドル」
および「プロキシ」ファイルシステムドライバがサポートされています。
id =id
このデバイスの識別子を指定します
パス=path
ファイルシステムデバイスのエクスポートパスを指定します。 このパスの下のファイルは
ゲストの9pクライアントが利用できるようにします。
security_model =セキュリティモデル
このエクスポートパスに使用されるセキュリティモデルを指定します。 サポートされているセキュリティ
モデルは、「パススルー」、「マップされたxattr」、「マップされたファイル」、および「なし」です。 の
「パススルー」セキュリティモデル、ファイルはそれらと同じクレデンシャルを使用して保存されます
ゲストで作成されます。 これには、QEMUをルートとして実行する必要があります。 「マップされたxattr」で
セキュリティモデル、uid、gid、モードビット、リンクなどのファイル属性の一部
ターゲットはファイル属性として保存されます。 「マップトファイル」の場合、これらの属性は次のとおりです。
非表示の.virtfs_metadataディレクトリに保存されます。 これによってエクスポートされたディレクトリ
セキュリティモデルは他のUNIXツールと相互作用できません。 「なし」のセキュリティモデルは
パススルーと同じですが、サーバーがファイルの設定に失敗した場合に失敗を報告しない点が異なります。
所有権などの属性。 セキュリティモデルは、ローカルfsdriverにのみ必須です。
他のfsdriver(ハンドル、プロキシなど)は、セキュリティモデルをパラメータとして取りません。
書き込み=書き出す
これはオプションの引数です。 サポートされている値は「immediate」のみです。 これの意味は
そのホストページキャッシュは、データの読み取りと書き込みに使用されますが、通知の書き込みには使用されます
データがによって書かれたものとして報告された場合にのみ、ゲストに送信されます
ストレージサブシステム。
読み取り専用
ゲストの読み取り専用マウントとして9p共有をエクスポートできるようにします。 デフォルトでは、読み取り/書き込み
アクセスが許可されます。
ソケット=ソケット
プロキシファイルシステムドライバーが、渡されたソケットファイルを使用して通信できるようにします
virtfs-プロキシ-ヘルパー
sock_fd =靴下_fd
プロキシファイルシステムドライバーが、渡されたソケット記述子を使用して通信できるようにします
virtfs-proxy-helperを使用します。 通常、libvirtのようなヘルパーはsocketpairを作成し、
fdsのXNUMXつをsock_fdとして渡します
-fsdevオプションは、-deviceドライバー「virtio-9p-pci」と一緒に使用されます。
- デバイス virtio-9p-pci、fsdev =id、mount_tag =マウントタグ
virtio-9p-pciドライバーのオプションは次のとおりです。
fsdev =id
-fsdevオプションとともに指定されたID値を指定します
mount_tag =マウントタグ
ゲストがこのエクスポートポイントをマウントするために使用するタグ名を指定します
-virtfs
fsドライバー[、path =path]、mount_tag =マウントタグ[、security_model =セキュリティモデル] [、writeout =書き出す] [、readonly] [、socket =ソケット| sock_fd =靴下_fd]
仮想ファイルシステムのパススルーオプションの一般的な形式は次のとおりです。
fsドライバー
このオプションは、使用するfsドライバーバックエンドを指定します。 現在「ローカル」、「ハンドル」
および「プロキシ」ファイルシステムドライバがサポートされています。
id =id
このデバイスの識別子を指定します
パス=path
ファイルシステムデバイスのエクスポートパスを指定します。 このパスの下のファイルは
ゲストの9pクライアントが利用できるようにします。
security_model =セキュリティモデル
このエクスポートパスに使用されるセキュリティモデルを指定します。 サポートされているセキュリティ
モデルは、「パススルー」、「マップされたxattr」、「マップされたファイル」、および「なし」です。 の
「パススルー」セキュリティモデル、ファイルはそれらと同じクレデンシャルを使用して保存されます
ゲストで作成されます。 これには、QEMUをルートとして実行する必要があります。 「マップされたxattr」で
セキュリティモデル、uid、gid、モードビット、リンクなどのファイル属性の一部
ターゲットはファイル属性として保存されます。 「マップトファイル」の場合、これらの属性は次のとおりです。
非表示の.virtfs_metadataディレクトリに保存されます。 これによってエクスポートされたディレクトリ
セキュリティモデルは他のUNIXツールと相互作用できません。 「なし」のセキュリティモデルは
パススルーと同じですが、サーバーがファイルの設定に失敗した場合に失敗を報告しない点が異なります。
所有権などの属性。 セキュリティモデルは、ローカルfsdriverにのみ必須です。
他のfsdriver(ハンドル、プロキシなど)は、セキュリティモデルをパラメータとして取りません。
書き込み=書き出す
これはオプションの引数です。 サポートされている値は「immediate」のみです。 これの意味は
そのホストページキャッシュは、データの読み取りと書き込みに使用されますが、通知の書き込みには使用されます
データがによって書かれたものとして報告された場合にのみ、ゲストに送信されます
ストレージサブシステム。
読み取り専用
ゲストの読み取り専用マウントとして9p共有をエクスポートできるようにします。 デフォルトでは、読み取り/書き込み
アクセスが許可されます。
ソケット=ソケット
プロキシファイルシステムドライバーが、渡されたソケットファイルを使用して通信できるようにします
virtfs-proxy-helper。 通常、libvirtのようなヘルパーはsocketpairを作成して渡します
sock_fdとしてのfdsのXNUMXつ
靴下_fd
プロキシファイルシステムドライバが渡された「sock_fd」をソケット記述子として使用できるようにします
virtfs-proxy-helperとのインターフェース用
-virtfs_synth
合成ファイルシステムイメージを作成する
USBオプション:
-USB
USBドライバーを有効にします(まもなくデフォルトになります)
-USB デバイス 開発者名
USBデバイスを追加します 開発者名.
マウス
仮想マウス。 これにより、アクティブ化されたときにPS / 2マウスエミュレーションが上書きされます。
タブレット
絶対座標を使用するポインティングデバイス(タッチスクリーンなど)。 これの意味は
QEMUは、マウスをつかむことなく、マウスの位置を報告できます。 また
アクティブ化されると、PS / 2マウスエミュレーションをオーバーライドします。
ディスク:[フォーマット=形式でアーカイブしたプロジェクトを保存します.]:file
ファイルに基づく大容量記憶装置。 オプション 形式でアーカイブしたプロジェクトを保存します. 引数が使用されます
フォーマットを検出するのではなく。 回避するために「format = raw」を指定するために使用できます
信頼できないフォーマットヘッダーの解釈。
ホスト:バス.addr
によって識別されるホストデバイスを通過します バス.addr (Linuxのみ)。
ホスト:ベンダーID:製品番号
によって識別されるホストデバイスを通過します ベンダーID:製品番号 (Linuxのみ)。
シリアル:[vendorid =ベンダーID] [、productid =製品番号]:devの
ホスト文字デバイスへのシリアルコンバータ devの、利用可能なものについては「-serial」を参照してください
デバイス。
点字
点字デバイス。 これはBrlAPIを使用して、点字出力を実際の点字または
偽のデバイス。
ネット:オプション
CDCイーサネットおよびRNDISプロトコルをサポートするネットワークアダプタ。
表示オプション:
-表示 type
使用するディスプレイの種類を選択します。 このオプションは、古いスタイルの代わりになります
-sdl / -curses / ...オプション。 の有効な値 type
SDL SDLを介してビデオ出力を表示します(通常は別のグラフィックウィンドウに表示されます。SDLを参照してください)。
他の可能性のための文書)。
呪い
呪いを介してビデオ出力を表示します。 テキストをサポートするグラフィックデバイスモデルの場合
モードの場合、QEMUはcurses / ncursesインターフェースを使用してこの出力を表示できます。 何もありません
グラフィックデバイスがグラフィックモードの場合、またはグラフィックデバイスがグラフィックデバイスの場合に表示されます
テキストモードはサポートしていません。 通常、VGAデバイスモデルのみがテキストをサポートします
モード。
なし
ビデオ出力を表示しません。 ゲストには、エミュレートされたグラフィックカードが引き続き表示されます。
ただし、その出力はQEMUユーザーには表示されません。 このオプションはとは異なります
-nographicオプションは、ビデオ出力で行われることにのみ影響します。
-nographicは、シリアルポートデータとパラレルポートデータの宛先も変更します。
gtk GTKウィンドウにビデオ出力を表示します。 このインターフェイスは、ドロップダウンメニューと
実行時にVMを構成および制御するための他のUI要素。
VNC ディスプレイ上のVNCサーバーを起動します
-ノグラフィック
通常、QEMUはSDLを使用してVGA出力を表示します。 このオプションを使用すると、完全に
QEMUが単純なコマンドラインアプリケーションになるように、グラフィカル出力を無効にします。 NS
エミュレートされたシリアルポートはコンソールにリダイレクトされ、モニターと多重化されます(ただし
明示的に他の場所にリダイレクトされます)。 したがって、QEMUを使用してLinuxをデバッグできます。
シリアルコンソールを備えたカーネル。 使用する Ca h コンソールと
モニター。
-呪い
通常、QEMUはSDLを使用してVGA出力を表示します。 このオプションを使用すると、QEMUは表示できます
curses / ncursesインターフェイスを使用したテキストモードの場合のVGA出力。 何もありません
グラフィカルモードで表示されます。
-フレームなし
SDLウィンドウに装飾を使用せず、使用可能な画面全体を使用してそれらを開始します
スペース。 これにより、専用デスクトップワークスペースでのQEMUの使用がより便利になります。
-alt-グラブ
Ctrl-Alt-Shiftを使用して、(Ctrl-Altの代わりに)マウスをつかみます。 これも影響することに注意してください
特別なキー(フルスクリーン、モニターモード切り替えなど)。
-ctrl-グラブ
(Ctrl-Altの代わりに)Right-Ctrlを使用してマウスをつかみます。 これは
特別なキー(フルスクリーン、モニターモード切り替えなど)。
-やめない
SDLウィンドウを閉じる機能を無効にします。
-sdl
SDLを有効にします。
-スパイス オプション[,オプション[、...]]
spiceリモートデスクトッププロトコルを有効にします。 有効なオプションは次のとおりです
ポート=
spiceがプレーンテキストチャネルをリッスンしているTCPポートを設定します。
addr =
spiceがリッスンしているIPアドレスを設定します。 デフォルトは任意のアドレスです。
ipv4
ipv6
UNIX
指定されたIPバージョンを強制的に使用します。
パスワード=
認証に必要なパスワードを設定します。
あんしん
クライアントがSASLを使用してスパイスで認証することを要求します。 正確な選択
使用される認証方法の割合は、システム/ユーザーのSASLから制御されます
'qemu'サービスの構成ファイル。 これは通常、
/etc/sasl2/qemu.conf。 QEMUを非特権ユーザーとして実行している場合、環境
変数SASL_CONF_PATHを使用して、別の場所で
サービス構成。 一部のSASL認証メソッドはデータ暗号化も提供できます(例:
GSSAPI)、SASLは常に「tls」および「x509」と組み合わせることが推奨されます
SSLおよびサーバー証明書の使用を有効にするための設定。 これにより、データが保証されます
認証クレデンシャルの侵害を防ぐ暗号化。
発券を無効にする
クライアントが認証なしで接続できるようにします。
コピーペーストを無効にする
クライアントとゲスト間のコピー貼り付けを無効にします。
エージェントファイルのxferを無効にする
クライアントとゲスト間のspice-vdagentベースのfile-xferを無効にします。
tls-port =
spiceが暗号化されたチャネルをリッスンしているTCPポートを設定します。
x509-dir =
x509ファイルディレクトリを設定します。 -vnc $ display、x509 = $ dirと同じファイル名が必要です
x509-key-file =
x509-key-password =
x509-cert-file =
x509-cacert-file =
x509-dh-key-file =
x509ファイル名は個別に構成することもできます。
tls-ciphers =
使用する暗号を指定します。
tls-channel = [main | display | cursor | input | record | playback]
平文チャネル= [メイン|表示|カーソル|入力|記録|再生]
特定のチャネルをTLS暗号化の有無にかかわらず使用するように強制します。 オプションはできます
複数のチャネルを構成するには、複数回指定します。 特別な名前
「default」を使用して、デフォルトモードを設定できます。 そうでないチャネルの場合
明示的にXNUMXつのモードに強制されると、スパイスクライアントはtls / plaintextを選択できます
彼が好きなように。
image-compression = [auto_glz | auto_lz | quic | glz | lz | off]
画像圧縮を構成します(ロスレス)。 デフォルトはauto_glzです。
jpeg-wan-compression = [auto | never | always]
zlib-glz-wan-compression = [auto | never | always]
WAN画像圧縮を構成します(低速リンクの場合は不可逆)。 デフォルトは自動です。
ストリーミングビデオ= [オフ|すべて|フィルター]
ビデオストリーム検出を構成します。 デフォルトはフィルターです。
agent-mouse = [on | off]
vdagentを介したマウスイベントの受け渡しを有効/無効にします。 デフォルトはオンです。
再生圧縮= [オン|オフ]
オーディオストリーム圧縮を有効/無効にします(celt 0.5.1を使用)。 デフォルトはオンです。
シームレス移行= [オン|オフ]
spiceのシームレスな移行を有効/無効にします。 デフォルトはオフです。
-ポートレート
グラフィック出力を左に90度回転します(PXA LCDのみ)。
-回転 度
グラフィック出力を左に少し回転させます(PXA LCDのみ)。
-VGA type
エミュレートするVGAカードのタイプを選択します。 の有効な値 type
巻雲
Cirrus LogicGD5446ビデオカード。 Windows95以降のすべてのWindowsバージョン
このグラフィックカードを認識して使用する必要があります。 最適なパフォーマンスを得るには、16ビットを使用します
ゲストOSとホストOSの色深度。 (これがデフォルトです)
STD BochsVBE拡張機能を備えた標準VGAカード。 ゲストOSがVESAをサポートしている場合
2.0 VBE拡張機能(Windows XPなど)および高解像度モードを使用する場合
(> = 1280x1024x16)次に、このオプションを使用する必要があります。
ヴイエムウェア
VMWareSVGA-II互換アダプター。 十分に最近のものがある場合に使用してください
XFree86 / XOrgサーバーまたはこのカード用のドライバーを備えたWindowsゲスト。
qxl QXL準仮想グラフィックカード。 VGA互換です(VESA 2.0 VBEを含む)
サポート)。 ただし、qxlゲストドライバーがインストールされている場合に最適に動作します。 推奨される選択
スパイスプロトコルを使用する場合。
TCX (sun4mのみ)SunTCXフレームバッファー。 これはsun4mのデフォルトのフレームバッファです
マシンであり、8ビットと24ビットの両方の色深度を固定解像度で提供します。
1024x768。
cg3 (sun4mのみ)Suncgthreeフレームバッファー。 これはsun8m用のシンプルな4ビットフレームバッファです
1024x768(OpenBIOS)と1152x900(OBP)の両方の解像度で利用可能なマシン
古いバージョンのSolarisを実行したい人を対象としています。
バーティオ
VirtioVGAカード。
なし
VGAカードを無効にします。
-全画面表示
全画面で開始します。
-g 幅x高さ[x深さ]
初期のグラフィック解像度と深度を設定します(PPC、SPARCのみ)。
-vnc ディスプレイ[,オプション[,オプション[、...]]]]
通常、QEMUはSDLを使用してVGA出力を表示します。 このオプションを使用すると、
QEMUはVNCディスプレイでリッスンします ディスプレイ VNCセッションを介してVGAディスプレイをリダイレクトします。
このオプション(オプション)を使用する場合、USBタブレットデバイスを有効にすると非常に便利です。
-USB デバイス タブレット)。 VNCディスプレイを使用する場合は、 -k 設定するパラメータ
en-usを使用していない場合のキーボードレイアウト。 の有効な構文 ディスプレイ is
host:d
TCP接続はからのみ許可されます host 展示中 d。 慣例により、
TCPポートは5900+ですd。 オプションで、 host 省略できます。その場合、サーバーは
任意のホストからの接続を受け入れます。
UNIX:path
UNIXドメインソケットを介した接続が許可されます。 path の場所です
接続をリッスンするUNIXソケット。
なし
VNCは初期化されていますが、開始されていません。 モニターの「変更」コマンドを使用して、
後でVNCサーバーを起動します。
以下 ディスプレイ 値はXNUMXつ以上ある可能性があります オプション コンマで区切られたフラグ。
有効なオプションは次のとおりです
逆
「リバース」接続を介してリスニングVNCクライアントに接続します。 クライアントは
によって指定された ディスプレイ。 逆ネットワーク接続の場合(host:d、「リバース」)、
d 引数はTCPポート番号であり、表示番号ではありません。
ウェブソケット
VNCWebsocket接続専用の追加のTCPリスニングポートを開きます。 に
定義Websocketポートは5700+ですディスプレイ。 場合 host 指定された接続です
このホストからのみ許可されます。 別の方法として、Websocketポートは
「websocket」を使用して指定する=ポート。 TLSクレデンシャルが提供されていない場合、
WebSocket接続は暗号化されていないモードで実行されます。 TLSクレデンシャルが提供されている場合、
WebSocket接続には、暗号化されたクライアント接続が必要です。
password
クライアント接続にパスワードベースの認証を使用する必要があります。
パスワードは、の「set_password」コマンドを使用して個別に設定する必要があります。
pcsys_monitor。 パスワードを変更するための構文は次のとおりです。 "set_password
" どこ「vnc」または「spice」のいずれかです。
変更したい場合パスワードの有効期限、使用する必要があります
"expire_password 「有効期限がXNUMXつになる可能性がある場合
次のオプションのうち:now、never、+ seconds、またはUNIXの有効期限(例:
+60でパスワードを60秒で期限切れにするか、1335196800でパスワードを期限切れにします
「MonApr23 12:00:00 EDT 2012」(この日時のUNIX時間)。
有効期限に「now」または「never」というキーワードを使用して、許可することもできます。
すぐに期限切れになるか、期限切れにならないパスワード。
tls-creds =ID
VNCサーバーを保護するために使用する一連のTLSクレデンシャルのIDを提供します。 彼ら
通常のVNCサーバーソケットとWebSocketソケットの両方に適用されます(
有効)。 TLSクレデンシャルを設定すると、VNCサーバーソケットで
VeNCrypt認証メカニズム。 クレデンシャルは以前に作成されている必要があります
-物体 TLS-クレド 引数。
この TLS-クレド パラメータは廃止されます TLS, x509, x509検証 オプション、およびとして
そのため、新しいタイプと古いタイプの両方のオプションを同時に設定することは許可されていません。
TLS VNCサーバーと通信するときにクライアントがTLSを使用することを要求します。 これは使用します
匿名のTLSクレデンシャルは、man-in-the-middle攻撃の影響を受けやすいためです。 です
このオプションを次のいずれかと組み合わせることをお勧めします x509 or x509検証
オプション。
このオプションは非推奨になり、 TLS-クレド 引数。
x509 =/ path / to / authentication / dir
次の場合に有効 TLS が指定されています。 ネゴシエーションにx509クレデンシャルを使用する必要があります
TLSセッション。 サーバーはx509証明書をクライアントに送信します。 です
の認証を提供するためにVNCサーバーにパスワードを設定することをお勧めします
これが使用される場合のクライアント。 このオプションに続くパスは、
x509証明書はからロードされます。 を参照してください vnc_セキュリティ 詳細はセクション
証明書の生成について。
このオプションは非推奨になり、 TLS-クレド 引数。
x509verify =/ path / to / authentication / dir
次の場合に有効 TLS が指定されています。 ネゴシエーションにx509クレデンシャルを使用する必要があります
TLSセッション。 サーバーはx509証明書をクライアントに送信し、
クライアントに独自のx509証明書を送信するように要求します。 サーバーは検証します
CA証明書に対するクライアントの証明書、および次の場合にクライアントを拒否する
検証は失敗します。 認証局が信頼されている場合、これで十分です
認証メカニズム。 それでもVNCサーバーにパスワードを設定することをお勧めします
XNUMX番目の認証層として。 このオプションに続くパスは、場所を指定します
x509証明書はからロードされます。 を参照してください vnc_セキュリティ のセクション
証明書の生成の詳細。
このオプションは非推奨になり、 TLS-クレド 引数。
あんしん
クライアントがSASLを使用してVNCサーバーで認証することを要求します。 正確な
使用する認証方法の選択は、システム/ユーザーのSASLから制御されます
'qemu'サービスの構成ファイル。 これは通常、
/etc/sasl2/qemu.conf。 QEMUを非特権ユーザーとして実行している場合、環境
変数SASL_CONF_PATHを使用して、別の場所で
サービス構成。 一部のSASL認証メソッドはデータ暗号化も提供できます(例:
GSSAPI)、SASLは常に「tls」および「x509」と組み合わせることが推奨されます
SSLおよびサーバー証明書の使用を有効にするための設定。 これにより、データが保証されます
認証クレデンシャルの侵害を防ぐ暗号化。 を参照してください
vnc_セキュリティ SASL認証の使用の詳細については、セクションを参照してください。
acl x509クライアント証明書とSASLをチェックするためのアクセス制御リストをオンにします
パーティ。 x509証明書の場合、ACLチェックは証明書に対して行われます。
識別名。 これは次のようになります
「C = GB、O = ACME、L =ボストン、CN =ボブ」。 SASLパーティの場合、ACLチェックは
ユーザー名。SASLプラグインによっては、レルムコンポーネントが含まれる場合があります。
「ボブ」または「[メール保護]"。 acl フラグが設定され、初期アクセスリスト
「拒否」ポリシーで空になります。 したがって、誰もVNCを使用できなくなります
ACLがロードされるまでサーバー。 これは、「acl」を使用して実現できます
監視コマンド。
非可逆の
非可逆圧縮方式(グラデーション、JPEGなど)を有効にします。 このオプションが設定されている場合、VNC
クライアントは、エンコーディング設定によっては、損失の多いフレームバッファの更新を受け取る場合があります。
このオプションを有効にすると、品質を犠牲にして多くの帯域幅を節約できます。
非適応型
アダプティブエンコーディングを無効にします。 アダプティブエンコーディングはデフォルトで有効になっています。 NS
アダプティブエンコーディングは、頻繁に更新される画面領域を検出し、送信しようとします
非可逆エンコーディング(JPEGなど)を使用したこれらの領域での更新。 これは本当にすることができます
ビデオを再生するときに帯域幅を節約するのに役立ちます。 アダプティブエンコーディングの無効化
Tightなどのエンコーディングの元の静的な動作を復元します。
share = [allow-exclusive | force-shared | ignore]
ディスプレイ共有ポリシーを設定します。 「allow-exclusive」を使用すると、クライアントは排他を要求できます
アクセス。 rfb仕様で示唆されているように、これは他を削除することで実装されます
接続。 複数のクライアントを並列に接続するには、すべてのクライアントが質問する必要があります
共有セッションの場合(vncviewer:-sharedスイッチ)。 これがデフォルトです。
'force-shared'は、排他的なクライアントアクセスを無効にします。 共有デスクトップに便利
誰かが指定を忘れてほしくないセッション-shareddisconnect
他の皆。 'ignore'は共有フラグを完全に無視し、すべての人に許可します
無条件に接続します。 rfb仕様に準拠していませんが、従来のQEMUです
行動。
i386ターゲットのみ:
-win2k-ハック
ディスクがいっぱいになるバグを回避するために、Windows2000をインストールするときに使用します。 Windows2000の後
インストールすると、このオプションは不要になります(このオプションはIDE転送の速度を低下させます)。
-no-fd-bootchk
BIOSでフロッピーディスクのブート署名チェックを無効にします。 から起動する必要がある場合があります
古いフロッピーディスク。
-acpiなし
ACPI(Advanced Configuration and Power Interface)サポートを無効にします。 あなたの場合にそれを使用してください
ゲストOSがACPIの問題について文句を言います(PCターゲットマシンのみ)。
-no-hpet
HPETサポートを無効にします。
-容認できる [sig =STR] [、rev =n] [、oem_id =STR] [、oem_table_id =STR] [、oem_rev =n]
[、asl_compiler_id =STR] [、asl_compiler_rev =n] [、data =file1[:file2] ...]
指定されたファイルから、指定されたヘッダーフィールドとコンテキストを持つACPIテーブルを追加します。 にとって
file =、すべてのACPIヘッダーを含む、指定されたファイルからACPIテーブル全体を取得します
(他のオプションによって上書きされる可能性があります)。 data =の場合、テーブルのデータ部分のみが
使用される場合、すべてのヘッダー情報はコマンドラインで指定されます。
-smbios file =バイナリ
バイナリファイルからSMBIOSエントリをロードします。
-smbios type = 0 [、vendor =STR] [、version =STR] [、date =STR] [、release =%d。%d] [、uefi = on | off]
SMBIOSタイプ0フィールドを指定します
-smbios
type = 1 [、manufacturer =STR] [、product =STR] [、version =STR] [、serial =STR] [、uuid =ウイド] [、sku =STR] [、family =STR]
SMBIOSタイプ1フィールドを指定します
-smbios
type = 2 [、manufacturer =STR] [、product =STR] [、version =STR] [、serial =STR] [、asset =STR] [、location =STR] [、family =STR]
SMBIOSタイプ2フィールドを指定します
-smbios type = 3 [、manufacturer =STR] [、version =STR] [、serial =STR] [、asset =STR] [、sku =STR]
SMBIOSタイプ3フィールドを指定します
-smbios
type = 4 [、sock_pfx =STR] [、manufacturer =STR] [、version =STR] [、serial =STR] [、asset =STR] [、part =STR]
SMBIOSタイプ4フィールドを指定します
-smbios
type = 17 [、loc_pfx =STR] [、bank =STR] [、manufacturer =STR] [、serial =STR] [、asset =STR] [、part =STR] [、speed =%d]
SMBIOSタイプ17フィールドを指定します
ネットワークオプション:
-ネット nic [、vlan =n] [、macaddr =MAC] [、model =type] [、name =名] [、addr =addr] [、vectors =v]
新しいネットワークインターフェイスカードを作成し、VLANに接続します n (n = 0がデフォルトです)。
NICは、PCターゲットではデフォルトでe1000です。 オプションで、MACアドレスは次のようになります。
に変わった MAC、に設定されたデバイスアドレス addr (PCIカードのみ)、および 名 することができます
モニターコマンドで使用するために割り当てられます。 オプションで、PCIカードの場合、
数 v カードに必要なMSI-Xベクトルの数。 このオプションは現在のみ
virtioカードに影響します。 設定 v = 0は、MSI-Xを無効にします。 いいえの場合 -ネット オプションが指定されている場合、
単一のNICが作成されます。 QEMUは、ネットワークカードのいくつかの異なるモデルをエミュレートできます。
の有効な値 type 「virtio」、「i82551」、「i82557b」、「i82559er」、「ne2k_pci」、
「ne2k_isa」、「pcnet」、「rtl8139」、「e1000」、「smc91c111」、「lance」、「mcf_fec」。 すべてではない
デバイスはすべてのターゲットでサポートされています。 のリストについては、「-net nic、model = help」を使用してください
ターゲットに使用可能なデバイス。
-netdev user、id =id[,オプション] [、オプション] [、...]
-ネット ユーザー[、オプション] [、オプション] [、...]
実行に管理者権限を必要としないユーザーモードのネットワークスタックを使用します。
有効なオプションは次のとおりです。
vlan =n
ユーザーモードスタックをVLANに接続します n (n = 0がデフォルトです)。
id =id
名前=名
モニターコマンドで使用するシンボル名を割り当てます。
net =addr[/mask]
ゲストに表示されるIPネットワークアドレスを設定します。 オプションで、ネットマスクを指定します。
abcdの形式で、または有効な最上位ビットの数として。 デフォルトは10.0.2.0/24です。
host =addr
ホストのゲストに表示されるアドレスを指定します。 デフォルトはゲストの2番目のIPです
ネットワーク、iexxx2。
制限=オン|オフ
このオプションを有効にすると、ゲストは隔離されます。つまり、ゲストは隔離されなくなります。
ホストに連絡すると、ゲストIPパケットはホストを介してにルーティングされません。
外。 このオプションは、明示的に設定された転送ルールには影響しません。
ホスト名=名
組み込みDHCPサーバーによって報告されるクライアントホスト名を指定します。
dhcpstart =addr
組み込みDHCPサーバーが割り当てることができる16個のIPの最初のものを指定します。 デフォルトは
ゲストネットワークの15番目から31番目のIP、つまりxxx15からxxx31。
dns =addr
仮想ネームサーバーのゲストに表示されるアドレスを指定します。 アドレスは次のようにする必要があります
ホストアドレスとは異なります。 デフォルトは、ゲストネットワークの3番目のIPです。
xxx3。
dnssearch =ドメイン
組み込みのDHCPサーバーによって送信されるドメイン検索リストのエントリを提供します。
このオプションを複数指定すると、複数のドメインサフィックスを送信できます。
回。 サポートされている場合、これによりゲストは自動的に追加を試みます
ドメイン名を解決できない場合に備えて、指定されたドメインサフィックス。
例:
qemu -net user、dnssearch = mgmt.example.org、dnssearch = example.org [...]
tftp =DIR
ユーザーモードのネットワークスタックを使用する場合は、組み込みのTFTPサーバーをアクティブにします。 ファイル
in DIR TFTPサーバーのルートとして公開されます。 ゲストのTFTPクライアント
バイナリモードで設定する必要があります(Unix TFTPクライアントのコマンド「bin」を使用します)。
bootfile =file
ユーザーモードのネットワークスタックを使用する場合は、ブロードキャストします file BOOTPファイル名として。 の
と組み合わせて tftp、これはローカルからゲストをネットワークブートするために使用できます
ディレクトリにあります。
例(pxelinuxを使用):
qemu-system-i386 -hda linux.img -boot n -net user、tftp = / path / to / tftp / files、bootfile = / pxelinux.0
smb =DIR[、smbserver =addr]
ユーザーモードのネットワークスタックを使用する場合は、組み込みのSMBサーバーをアクティブにして次のようにします。
Windows OSは、次のホストファイルにアクセスできます。 DIR 透過的に。 のIPアドレス
SMBサーバーは次のように設定できます addr。 デフォルトでは、ゲストネットワークの4番目のIPは
使用、iexxx4。
ゲストWindowsOSでは、次の行があります。
10.0.2.4 smb サーバー
ファイルに追加する必要があります C:\ WINDOWS \ LMHOSTS (Windows 9x / Meの場合)または
C:\ WINNT \ SYSTEM32 \ DRIVERS \ ETC \ LMHOSTS (Windows NT / 2000)。
その後 DIR でアクセスできます \ smbserver \ qemu.
SAMBAサーバーをホストOSにインストールする必要があることに注意してください。 QEMUがテストされました
Red Hat 9、Fedora Core 3、OpenSUSE11.xのsmbdバージョンで正常に動作します。
hostfwd = [tcp | udp]:[ホストアドレス]:ホストポート-[ゲストアドレス]:ゲストポート
着信TCPまたはUDP接続をホストポートにリダイレクトします ホストポート ゲストIPへ
住所 ゲストアドレス ゲストポート ゲストポート。 場合 ゲストアドレス 指定されていない、その
値はxxx15(組み込みDHCPサーバーによって指定されたデフォルトの最初のアドレス)です。 に
指定する ホストアドレス、ルールは特定のホストインターフェイスにバインドできます。 いいえの場合
接続タイプが設定され、TCPが使用されます。 このオプションは複数回指定できます。
たとえば、ホストX11接続を画面1からゲスト画面0にリダイレクトするには、次を使用します。
以下
#ホスト上
qemu-system-i386 -net user、hostfwd = tcp:127.0.0.1:6001-:6000 [...]
#このホストxtermはゲストX11サーバーで開く必要があります
xterm -display:1
telnet接続をホストポート5555からゲストのtelnetポートにリダイレクトするには、
以下を使用します。
#ホスト上
qemu-system-i386 -net user、hostfwd = tcp :: 5555-:23 [...]
telnet localhost 5555
次に、ホスト「telnet localhost 5555」で使用すると、ゲストに接続します
telnetサーバー。
guestfwd = [tcp]: :ポート-devの
guestfwd = [tcp]: :ポート-cmd:command
ゲストTCP接続をIPアドレスに転送する ポート上 ポート から
キャラクターデバイス devの またはによって実行されるプログラムに cmd:command スポーンされます
接続ごとに。 このオプションは複数回指定できます。
chardevを直接使用して、QEMU全体で使用することができます。
次の例のように、ライフタイム:
#起動時に10.10.1.1:4321を開き、10.0.2.100:1234をいつでも接続します
#ゲストがアクセスします
qemu -net user、guestfwd = tcp:10.0.2.100:1234-tcp:10.10.1.1:4321 [...]
または、ゲストによって確立されたすべてのTCP接続でコマンドを実行できます。
そのQEMUは、その仮想サーバーのinetdプロセスと同様に動作します。
#10.10.1.1:4321へのすべてのTCP接続で「netcat10.0.2.100」を呼び出す
#そしてTCPストリームをそのstdin / stdoutに接続します
qemu -net'user、guestfwd = tcp:10.0.2.100:1234-cmd:netcat 10.10.1.1 4321 '
注:レガシースタンドアロンオプション-tftp、-bootp、-smb、および-redirは引き続き処理されます
-netユーザーに適用されます。 それらを新しい構成構文と混合すると、
未定義の結果。 新しいアプリケーションでの使用はお勧めしません。
将来のバージョンから削除されました。
-netdev タップ、id =id[、fd =h] [、ifname =名] [、script =file] [、downscript =dファイル] [、helper =ヘルパー]
-ネット
tap [、vlan =n] [、name =名] [、fd =h] [、ifname =名] [、script =file] [、downscript =dファイル] [、helper =ヘルパー]
ホストTAPネットワークインターフェイスを接続します 名 VLANへ n.
ネットワークスクリプトを使用する file それとネットワークスクリプトを構成します dファイル 〜へ
構成を解除します。 もしも 名 が提供されていない場合、OSが自動的に提供します。 NS
デフォルトのネットワーク構成スクリプトは / etc / qemu-ifup およびデフォルトネットワークの構成解除
スクリプトは / etc / qemu-ifdown。 使用 script = no or downscript = no スクリプトを無効にするには
実行。
QEMUを非特権ユーザーとして実行している場合は、ネットワークヘルパーを使用してください ヘルパー 構成する
TAPインターフェース。 デフォルトのネットワークヘルパー実行可能ファイルは
/ path / to / qemu-bridge-helper.
fd=h すでに開いているホストTAPインターフェイスのハンドルを指定するために使用できます。
例:
#デフォルトのネットワークスクリプトでQEMUインスタンスを起動する
qemu-system-i386 linux.img -net nic -net タップ
#それぞれが接続されたXNUMXつのNICを使用してQEMUインスタンスを起動します
#TAPデバイスへ
qemu-system-i386 linux.img \
-net nic、vlan = 0 -net tap、vlan = 0、ifname = tap0 \
-net nic、vlan = 1 -net tap、vlan = 1、ifname = tap1
#デフォルトのネットワークヘルパーを使用してQEMUインスタンスを起動します
#TAPデバイスをブリッジbr0に接続します
qemu-system-i386 linux.img \
-net nic -net tap、 "helper = / path / to / qemu-bridge-helper"
-netdev ブリッジ、id =id[、br =ブリッジ] [、helper =ヘルパー]
-ネット ブリッジ[、vlan =n] [、name =名] [、br =ブリッジ] [、helper =ヘルパー]
ホストTAPネットワークインターフェイスをホストブリッジデバイスに接続します。
ネットワークヘルパーを使用する ヘルパー TAPインターフェイスを構成し、に接続するには
橋。 デフォルトのネットワークヘルパー実行可能ファイルは / path / to / qemu-bridge-helper と
デフォルトのブリッジデバイスは br0.
例:
#デフォルトのネットワークヘルパーを使用してQEMUインスタンスを起動します
#TAPデバイスをブリッジbr0に接続します
qemu-system-i386 linux.img -net bridge -net nic、model = virtio
#デフォルトのネットワークヘルパーを使用してQEMUインスタンスを起動します
#TAPデバイスをブリッジqemubr0に接続します
qemu-system-i386 linux.img -net bridge、br = qemubr0 -net nic、model = virtio
-netdev ソケット、id =id[、fd =h] [、listen = [host]:ポート] [、connect =host:ポート]
-ネット ソケット[、vlan =n] [、name =名] [、fd =h] [、listen = [host]:ポート] [、connect =host:ポート]
VLANを接続します n TCPソケットを使用して別のQEMU仮想マシンのリモートVLANに接続する
接続。 場合 聞く が指定されている場合、QEMUはで着信接続を待機します ポート (host
オプションです)。 接続する を使用して別のQEMUインスタンスに接続するために使用されます 聞く
オプションを選択します。 fd=h すでに開いているTCPソケットを指定します。
例:
#最初のQEMUインスタンスを起動する
qemu-system-i386 linux.img \
-net nic,macaddr=52:54:00:12:34:56 \
-ネットソケット、リッスン=:1234
#このインスタンスのVLAN0をVLAN0に接続します
最初のインスタンスの数
qemu-system-i386 linux.img \
-net nic,macaddr=52:54:00:12:34:57 \
-ネットソケット、接続= 127.0.0.1:1234
-netdev ソケット、id =id[、fd =h] [、mcast =maddr:ポート[、localaddr =addr]]
-ネット ソケット[、vlan =n] [、name =名] [、fd =h] [、mcast =maddr:ポート[、localaddr =addr]]
VLANを作成する n UDPマルチキャストを使用して別のQEMU仮想マシンと共有
ソケット、同じマルチキャストアドレスを持つすべてのQEMUのバスを効果的に作成します maddr と
ポート。 ノート:
1.複数のQEMUを異なるホストで実行し、同じバスを共有することができます(
これらのホストの正しいマルチキャスト設定)。
2. mcastのサポートはユーザーモードLinuxと互換性があります(引数 エストN= mcast)、 見る
<http://user-mode-linux.sf.net>.
3。 使用 fd = h すでに開いているUDPマルチキャストソケットを指定します。
例:
#XNUMXつのQEMUインスタンスを起動します
qemu-system-i386 linux.img \
-net nic,macaddr=52:54:00:12:34:56 \
-ネットソケット、mcast = 230.0.0.1:1234
#同じ「バス」で別のQEMUインスタンスを起動する
qemu-system-i386 linux.img \
-net nic,macaddr=52:54:00:12:34:57 \
-ネットソケット、mcast = 230.0.0.1:1234
#同じ「バス」でさらに別のQEMUインスタンスを起動する
qemu-system-i386 linux.img \
-net nic,macaddr=52:54:00:12:34:58 \
-ネットソケット、mcast = 230.0.0.1:1234
例(ユーザーモードLinux互換):
#QEMUインスタンスを起動します(mcastアドレスが選択されていることに注意してください)
#はUMLのデフォルトです)
qemu-system-i386 linux.img \
-net nic,macaddr=52:54:00:12:34:56 \
-ネットソケット、mcast = 239.192.168.1:1102
#UMLを起動する
/ path / to / linux ubd0 = / path / to / root_fs eth0 = mcast
例(ホストの1.2.3.4からパケットを送信する):
qemu-system-i386 linux.img \
-net nic,macaddr=52:54:00:12:34:56 \
-net socket、mcast = 239.192.168.1:1102、localaddr = 1.2.3.4
-netdev
l2tpv3、id =id、src =心臓、dst =dstaddr[、srcport =srcポート] [、dstport =dstポート]、txsession =txセッション[、rxsession =rxセッション] [、ipv6] [、udp] [、cookie64] [、counter] [、pincounter] [、txcookie =txcookie] [、rxcookie =rxcookie] [、offset =オフセット]
-ネット
l2tpv3 [、vlan =n] [、name =名]、src =心臓、dst =dstaddr[、srcport =srcポート] [、dstport =dstポート]、txsession =txセッション[、rxsession =rxセッション] [、ipv6] [、udp] [、cookie64] [、counter] [、pincounter] [、txcookie =txcookie] [、rxcookie =rxcookie] [、offset =オフセット]
VLANを接続します n L2TPv3疑似配線に。 L2TPv3(RFC3391)は、
2つのシステム間でイーサネット(およびその他のレイヤーXNUMX)データフレームを転送します。 存在します
ルーター、ファイアウォール、およびLinuxカーネル(バージョン3.3以降)。
このトランスポートにより、VMは別のVM、ルーター、またはファイアウォールと直接通信できます。
SRC =心臓
送信元アドレス(必須)
dst =dstaddr
宛先アドレス(必須)
UDP udpカプセル化を選択します(デフォルトはipです)。
srcport =srcポート
ソースUDPポート。
dstport =dstポート
宛先udpポート。
ipv6
v6を強制します。それ以外の場合、デフォルトはv4です。
rxcookie =rxcookie
txcookie =txcookie
クッキーは、l2tpv3仕様のセキュリティの弱い形式です。 それらの機能は
主に設定ミスを防ぐためです。 デフォルトでは、32ビットです。
cookie64
Cookieのサイズをデフォルトの64ビットではなく32ビットに設定します
カウンター=オフ
のようにカウンターなしで「カットダウン」L2TPv3を強制します
ドラフト-mkonstan-l2tpext-keyed-ipv6-tunnel-00
pincounter = on
ピアでの壊れたカウンター処理を回避します。 これは、
パケットの並べ替え。
オフセット=オフセット
ヘッダーとデータの間にオフセットを追加します
たとえば、ホスト4.3.2.1で実行されているVMをL2TPv3経由でブリッジbr-lanに接続するには
リモートLinuxホスト1.2.3.4:
#カプセル化としてrawIPを使用してLinuxホストにトンネルを設定する
#1.2.3.4
ip l2tp トンネルを追加 リモート 4.3.2.1 ローカル 1.2.3.4 トンネル ID 1 ピアトンネル ID 1 \
カプセル化 udp udp_sport 16384 udp_dport 16384
ip l2tp add session トンネル ID 1 name vmtunnel0 session_id \
0xFFFFFFFF ピアセッション ID 0xFFFFFFFF
ifconfig vmtunnel0 mtu 1500
ifconfig vmtunnel0 アップ
brctl addif br-lan vmtunnel0
#4.3.2.1
#QEMUインスタンスを起動します-ネットワークに再注文があるか、非常に損失が大きい場合は、pincounterを追加します
qemu-system-i386 linux.img -net nic -net l2tpv3、src = 4.2.3.1、dst = 1.2.3.4、udp、srcport = 16384、dstport = 16384、rxsession = 0xffffffff、txsession = 0xffffffff、counter
-netdev vde、id =id[、sock =ソケットパス] [、port =n] [、group =グループ名] [、mode =オクタルモード]
-ネット vde [、vlan =n] [、name =名] [、sock =ソケットパス]
[、port =n] [、group =グループ名] [、mode =オクタルモード]
VLANを接続します n PORTへ n ホスト上で実行され、着信をリッスンしているvdeスイッチの
上の接続 ソケットパス。 GROUPを使用する グループ名 およびモード オクタルモード デフォルトを変更するには
通信ポートの所有権と権限。 このオプションは、次の場合にのみ使用できます。
QEMUは、vdeサポートを有効にしてコンパイルされています。
例:
#vdeスイッチを起動
vde_switch -F -sock / tmp / myswitch
#QEMUインスタンスを起動する
qemu-system-i386 linux.img -net nic -net vde、sock = / tmp / myswitch
-netdev hubport、id =id、hubid =ハブイド
QEMU「vlan」にハブポートを作成します ハブイド.
ハブポートnetdevを使用すると、単一のnetdevではなくNICをQEMU「vlan」に接続できます。
パラメータ付きの「-net」および「-device」 VLAN 必要なハブを自動的に作成します。
-netdev vhost-user、chardev =id[、vhostforce = on | off] [、queues = n]
chardevに裏打ちされたvhost-usernetdevを確立します id。 chardevはUNIXである必要があります
ドメインソケットでバックアップされたもの。 vhost-userは、特別に定義されたプロトコルを使用して渡します
ソケットのもう一方の端にあるアプリケーションへのvhostioctl置換メッセージ。 オン
MSIX以外のゲストの場合、この機能は強制できます vhostforce。 'queues =を使用しますn' 指定します
マルチキューvhost-user用に作成されるキューの数。
例:
qemu -m 512 -object memory-backend-file、id = mem、size = 512M、mem-path = / hugetlbfs、share = on \
-numa node、memdev = mem \
-chardev socket、path = / path / to / socket \
-netdev type = vhost-user、id = net0、chardev = chr0 \
-デバイスvirtio-net-pci、netdev = net0
-ネット dump [、vlan =n] [、file =file] [、len =LEN]
VLANでネットワークトラフィックをダンプする n ファイルへ file (qemu-vlan0.pcap デフォルト)。 せいぜい LEN
パケットあたりのバイト数(デフォルトでは64k)が格納されます。 ファイル形式はlibpcapであるため、次のようになります。
tcpdumpやWiresharkなどのツールを使用して分析します。 注:で作成されたデバイスの場合
'-netdev'、代わりに '-object filter-dump、...'を使用します。
-ネット なし
ネットワークデバイスを構成しないことを示します。 オーバーライドするために使用されます
デフォルト設定(-ネット NIC -ネット user)ない場合にアクティブ化されます -ネット オプションは
キャラクターデバイスオプション:
文字デバイスオプションの一般的な形式は次のとおりです。
-chardev バックエンド 、id =id [、mux = on | off] [,オプション]
バックエンドは次のいずれかです。 ヌル, ソケット, UDP, msマウス, vc, リングバフ, file, パイプ, コンソール,
シリアル, PTY, 標準入出力, 点字, TTY, パラレル, パーポート, スパイスVMC. スパイスポートを選択します。
特定のバックエンドが適用可能なオプションを決定します。
すべてのデバイスにはIDが必要です。IDは最大127文字の任意の文字列にすることができます。 です
他のコマンドラインディレクティブでこのデバイスを一意に識別するために使用されます。
文字デバイスは、複数のフロントエンドによって多重化モードで使用できます。 キー
のシーケンス コントロール-a と c 接続されたフロントエンド間で入力フォーカスを回転させます。
指定 mux = on このモードを有効にします。
各バックエンドのオプションを以下に説明します。
-chardev ヌル 、id =id
ボイドデバイス。 このデバイスはデータを送信せず、受信したデータをすべてドロップします。
nullバックエンドはオプションを取りません。
-chardev ソケット 、id =id [TCP オプション or UNIX オプション] [、サーバ] [、nowait] [、telnet]
[、reconnect =秒]
TCPまたはUNIXソケットのいずれかである双方向ストリームソケットを作成します。 UNIX
ソケットは次の場合に作成されます path が指定されています。 TCPオプションが
UNIXソケットに指定されています。
ソケットがリスニングソケットであることを指定します。
待てない QEMUがクライアントがに接続するのを待つことをブロックしてはならないことを指定します
リスニングソケット。
telnet ソケット上のトラフィックがtelnetエスケープシーケンスを解釈する必要があることを指定します。
再接続します リモートエンドがサーバー以外のソケットで再接続するためのタイムアウトを設定します
消えます。 qemuはこれを何秒も遅らせてから、再接続を試みます。 零
再接続を無効にします。これがデフォルトです。
TCPおよびunixソケットオプションを以下に示します。
TCP オプション: ポート=ポート [、host =host] [、to =〜へ] [、ipv4] [、ipv6] [、遅延なし]
host リスニングソケットの場合、バインドするローカルアドレスを指定します。 のために
接続するリモートホストのソケット種を接続します。 host のオプションです
リスニングソケット。 指定しない場合、デフォルトで0.0.0.0になります。
ポート リスニングソケットの場合、バインドするローカルポートを指定します。 接続用
socketは、接続するリモートホストのポートを指定します。 ポート として与えることができます
ポート番号またはサービス名のいずれか。 ポート 必要とされている。
〜へ リスニングソケットにのみ関連します。 指定されている場合、および ポート することはできません
バインドされている場合、QEMUは以下を含む後続のポートへのバインドを試みます 〜へ まで
それは成功します。 〜へ ポート番号として指定する必要があります。
ipv4 と ipv6 IPv4またはIPv6のいずれかを使用する必要があることを指定します。 どちらでもない場合
指定されたソケットはどちらのプロトコルも使用できます。
遅延なし Nagleアルゴリズムを無効にします。
UNIX オプション: パス=path
path UNIXソケットのローカルパスを指定します。 path 必要とされている。
-chardev UDP 、id =id [、host =host] 、port =ポート [、localaddr =ローカルアドレス] [、localport =ローカルポート]
[、ipv4] [、ipv6]
ゲストからリモートホストにUDPを介してすべてのトラフィックを送信します。
host 接続するリモートホストを指定します。 指定しない場合、デフォルトで
「localhost」。
ポート 接続するリモートホストのポートを指定します。 ポート 必要とされている。
ローカルアドレス バインドするローカルアドレスを指定します。 指定しない場合、デフォルトで
0.0.0.0.
ローカルポート バインドするローカルポートを指定します。 指定されていない場合、利用可能なローカル
ポートが使用されます。
ipv4 と ipv6 IPv4またはIPv6のいずれかを使用する必要があることを指定します。 どちらも指定されていない場合
デバイスはどちらのプロトコルも使用できます。
-chardev msマウス 、id =id
QEMUのエミュレートされたmsmouseイベントをゲストに転送します。 msマウス 何も取らない
オプション。
-chardev vc 、id =id [[、width =幅] [、height =高さ]] [[、cols =コルズ] [、rows =行]]
QEMUテキストコンソールに接続します。 vc オプションで特定のサイズを指定できます。
幅 と 高さ コンソールの幅と高さをそれぞれピクセル単位で指定します。
コルズ と 行 指定されたテキストコンソールに合うようにコンソールのサイズを指定します
寸法
-chardev リングバフ 、id =id [、size =サイズ]
固定サイズのリングバッファを作成する サイズ. サイズ XNUMXの累乗である必要があり、デフォルト
「64K」に)。
-chardev file 、id =id 、パス=path
ゲストから受信したすべてのトラフィックをファイルに記録します。
path 開くファイルのパスを指定します。 このファイルが作成される場合は作成されます
まだ存在しておらず、存在する場合は上書きされます。 path 必要とされている。
-chardev パイプ 、id =id 、パス=path
ゲストへの双方向接続を作成します。 動作はわずかに異なります
Windowsホストおよびその他のホスト:
Windowsでは、単一の二重パイプが次の場所に作成されます。 \。パイプ\path.
他のホストでは、2つのパイプが作成されます。 path.IN と path。アウト。 に書き込まれるデータ
path.IN ゲストが受け取ります。 ゲストが書き込んだデータは、
path。アウト。 QEMUはこれらのFIFOを作成せず、存在する必要があります。
path 上記のようにパイプパスの一部を形成します。 path 必要とされている。
-chardev コンソール 、id =id
ゲストからQEMUの標準出力にトラフィックを送信します。 コンソール 何も取らない
オプション。
コンソール Windowsホストでのみ使用できます。
-chardev シリアル 、id =id 、path = path
ゲストからホスト上のシリアルデバイスにトラフィックを送信します。
Unixホストでは、シリアルは実際にはシリアル回線だけでなく、すべてのttyデバイスを受け入れます。
path 開くシリアルデバイスの名前を指定します。
-chardev PTY 、id =id
ホスト上に新しい疑似端末を作成し、それに接続します。 PTY 何も取らない
オプション。
PTY Windowsホストでは使用できません。
-chardev 標準入出力 、id =id [、signal = on | off]
QEMUプロセスの標準入力と標準出力に接続します。
信号 QEMUの終了を含め、端末で信号を有効にするかどうかを制御します
キーシーケンスで Control-C。 このオプションはデフォルトで有効になっています。 signal = off 〜へ
無効にします。
標準入出力 Windowsホストでは使用できません。
-chardev 点字 、id =id
ローカルのBrlAPIサーバーに接続します。 点字 オプションはありません。
-chardev TTY 、id =id 、パス=path
TTY Linux、Sun、FreeBSD、NetBSD、OpenBSD、DragonFlyBSDホストでのみ利用可能です。
のエイリアスです シリアル.
path ttyへのパスを指定します。 path 必要とされている。
-chardev パラレル 、id =id 、パス=path
-chardev パーポート 、id =id 、パス=path
パラレル Linux、FreeBSD、DragonFlyBSDホストでのみ利用可能です。
ローカルパラレルポートに接続します。
path パラレルポートデバイスへのパスを指定します。 path 必要とされている。
-chardev スパイスVMC 、id =id 、debug =debug, 名前=名
スパイスVMC スパイスサポートが組み込まれている場合にのみ使用できます。
debug spicevmcのデバッグレベル
名 接続するスパイスチャネルの名前
vdiportなどのspice仮想マシンチャネルに接続します。
-chardev スパイスポート 、id =id 、debug =debug, 名前=名
スパイスポート スパイスサポートが組み込まれている場合にのみ使用できます。
debug spicevmcのデバッグレベル
名 接続するスパイスポートの名前
Spiceポートに接続し、Spiceクライアントがによって識別されるトラフィックを処理できるようにします。
名前(できればfqdn)。
デバイスURL構文:
エミュレートされたストレージデバイスに通常のファイルイメージを使用することに加えて、QEMUは
iSCSIデバイスなどのネットワークリソースを使用します。 これらは特別なURLを使用して指定されます
構文。
iSCSIの
iSCSIサポートにより、QEMUはiSCSIリソースに直接アクセスし、
ゲストストレージ。 ディスクとCD-ROMの両方のイメージがサポートされています。
iSCSI LUNを指定するための構文は、「iscsi:// [: ] / / 「」
デフォルトでは、qemuはiSCSIイニシエーター名 'iqn.2008-11.org.linux-kvm [: ] '
ただし、これはコマンドラインまたは構成ファイルから設定することもできます。
バージョンQemu2.4以降、検出するiSCSI要求タイムアウトを指定することが可能です
リクエストが停止し、セッションの再確立が強制されます。 タイムアウトが指定されています
すぐに。 デフォルトは0で、タイムアウトがないことを意味します。 Libiscsi1.15.0以降は
この機能に必要です。
例(認証なし):
qemu-system-i386-iscsiイニシエーター名= iqn.2001-04.com.example:my-イニシエーター\
-cdrom iscsi://192.0.2.1/iqn.2001-04.com.example/2 \
-ドライブファイル= iscsi://192.0.2.1/iqn.2001-04.com.example/1
例(URL経由のCHAPユーザー名/パスワード):
qemu-system-i386 -drive file = iscsi:// user%[メール保護]/iqn.2001-04.com.example/1
例(環境変数を介したCHAPユーザー名/パスワード):
LIBISCSI_CHAP_USERNAME = "user" \
LIBISCSI_CHAP_PASSWORD = "password" \
qemu-system-i386 -drive file=iscsi://192.0.2.1/iqn.2001-04.com.example/1
iSCSIサポートはQEMUのオプション機能であり、コンパイルされた場合にのみ使用できます。
libiscsiに対してリンクされています。
ユーザー名やパスワードなどのiSCSIパラメーターは、
構成ファイル。 詳細と例については、qemu-docを参照してください。
NBD QEMUは、TCPプロトコルとUnixの両方を使用するNBD(ネットワークブロックデバイス)をサポートします
ドメインソケット。
TCPを使用してNBDデバイスを指定するための構文
"nbd: : [:exportname = ]」
Unixドメインソケットを使用してNBDデバイスを指定するための構文
"nbd:unix: [:exportname = ]」
TCPの例
qemu-system-i386 --drive file = nbd:192.0.2.1:30000
Unixドメインソケットの例
qemu-system-i386 --drive file = nbd:unix:/ tmp / nbd-socket
SSH QEMUは、リモートディスクへのSSH(Secure Shell)アクセスをサポートしています。
例:
qemu-system-i386 -drive file = ssh://user@host/path/to/disk.img
qemu-system-i386 -drive file.driver = ssh、file.user = user、file.host = host、file.port = 22、file.path = / path / to / disk.img
現在、認証はssh-agentを使用して行う必要があります。 その他の認証方法
将来的にサポートされる可能性があります。
シープドッグ
Sheepdogは、QEMU用の分散ストレージシステムです。 QEMUはいずれかのローカルの使用をサポートします
シープドッグデバイスまたはリモートネットワークデバイス。
シープドッグデバイスを指定するための構文
シープドッグ[+ tcp | + unix]:// [host:port] / vdiname [?socket = path] [#snapid | #tag]
例
qemu-system-i386 --drive file = sheepdog://192.0.2.1:30000 / MyVirtualMachine
こちらもご覧くださいhttp://http://www.osrg.net/sheepdog/>.
GlusterFS
GlusterFSは、ユーザースペースの分散ファイルシステムです。 QEMUはの使用をサポートしています
TCP、UnixドメインソケットおよびRDMAを使用してVMディスクイメージをホストするためのGlusterFSボリューム
トランスポートプロトコル。
GlusterFSボリューム上のVMディスクイメージを指定するための構文は次のとおりです。
gluster [+ transport]:// [server [:port]] / volname / image [?socket = ...]
例
qemu-system-x86_64 --drive file = gluster://192.0.2.1/testvol/a.img
こちらもご覧くださいhttp://www.gluster.org>.
HTTP / HTTPS / FTP / FTPS / TFTP
QEMUは、http(s)、ftp(s)、およびtftpを介してアクセスされるファイルへの読み取り専用アクセスをサポートします。
単一のファイル名を使用する構文:
:// [ [: ] @] /
ここで、
「http」、「https」、「ftp」、「ftps」、または「tftp」。
ユーザ名
リモートサーバーへの認証用のオプションのユーザー名。
password
リモートサーバーへの認証用のオプションのパスワード。
host
リモートサーバーのアドレス。
path
クエリ文字列を含む、リモートサーバー上のパス。
次のオプションもサポートされています。
URL オプションをドライバーに明示的に渡す場合の完全なURL。
先読み
リモートサーバーへの各範囲要求で先読みするデータの量。
この値には、オプションで接尾辞「T」、「G」、「M」、「K」、「k」、または「b」を付けることができます。 それであれば
接尾辞はありません。バイト単位であると見なされます。 値は
512バイトの倍数。 デフォルトは256kです。
sslverify
SSL経由で接続するときにリモートサーバーの証明書を確認するかどうか。 できる
値は「オン」または「オフ」です。 デフォルトは「オン」です。
クッキー
このCookie(「;」で区切られたCookieのリストにすることもできます)をそれぞれに送信します
発信リクエスト。 サポートするHTTPなどのプロトコルを使用する場合にのみサポートされます
それ以外の場合は無視されます。
タイムアウト
CURL接続のタイムアウトを秒単位で設定します。 このタイムアウトは、
CURLは、リモートサーバーからの応答を待って画像のサイズを取得します。
ダウンロードされます。 設定されていない場合、デフォルトのタイムアウトである5秒が使用されます。
オプションをqemuに明示的に渡す場合は、 ドライバー の値です。
例:リモートFedora20ライブISOイメージから起動する
qemu-system-x86_64 --drive media = cdrom、file =http://dl.fedoraproject.org/pub/fedora/linux/releases/20/Live/x86_64/Fedora-Live-Desktop-x86_64-20-1.iso、読み取り専用
qemu-system-x86_64 --drive media = cdrom、file.driver = http、file.url =http://dl.fedoraproject.org/pub/fedora/linux/releases/20/Live/x86_64/Fedora-Live-Desktop-x86_64-20-1.iso、読み取り専用
例:書き込みにローカルオーバーレイを使用して、リモートのFedora20クラウドイメージから起動します。
コピーオンリード、および64kの先読み
qemu-img create -f qcow2 -o backing_file = 'json:{"file.driver": "http" ,, "file.url": "https://dl.fedoraproject.org/pub/fedora/linux/releases /20/Images/x86_64/Fedora-x86_64-20-20131211.1-sda.qcow2 ",," file.readahead ":" 64k "} '/ tmp / Fedora-x86_64-20-20131211.1-sda.qcow2
qemu-system-x86_64 -drive file=/tmp/Fedora-x86_64-20-20131211.1-sda.qcow2,copy-on-read=on
例:自己署名を使用してVMwarevSphereサーバーに保存されているイメージから起動する
書き込みにローカルオーバーレイを使用する証明書、64kの先読み、10のタイムアウト
秒です。
qemu-img create -f qcow2 -o backing_file = 'json:{"file.driver": "https" ,, "file.url": "https:// user:[メール保護]/folder/test/test-flat.vmdk?dcPath=Datacenter&dsName=datastore1 ",," file.sslverify ":" off ",," file.readahead ":" 64k ",," file.timeout ":10} ' /tmp/test.qcow2
qemu-system-x86_64 -drive file = /tmp/test.qcow2
Bluetooth(R)オプション:
-bt hci [...]
対応するBluetoothHCIの機能を定義します。 -btオプションはと一致します
選択したマシンタイプに存在するHCI。 たとえば、マシンをエミュレートする場合
HCIがXNUMXつだけ組み込まれている場合、最初の「-bt hci [...]」オプションのみが有効であり、
HCIのロジックを定義します。 トランスポート層は、マシンタイプによって決定されます。
現在、マシン「n800」と「n810」にはXNUMXつのHCIがあり、他のすべてのマシンにはXNUMXつのHCIがあります。
なし。
次のXNUMXつのタイプが認識されます。
-bt hci、null
(デフォルト)対応するBluetooth HCIは内部ロジックを想定しておらず、
HCIコマンドに応答するか、イベントを発行します。
-bt hci、host [:id]
( "bluez"のみ)対応するHCIは、コマンド/イベントを
名前で識別される物理HCI id (デフォルト: "hci0")実行中のコンピューター上
QEMU。 Linuxのような「bluez」対応システムでのみ利用可能です。
-bt hci [、vlan =n]
Bluetoothスキャッターネットに参加する仮想の標準HCIを追加します n
(デフォルトは0)。 同様に -ネット VLAN、Bluetoothネットワーク内のデバイス n できる
同じネットワーク(スキャッタネット)内の他のデバイスとのみ通信します。
-bt vhci [、vlan =n]
(Linuxホストのみ)スキャッターネットでHCIを作成します n (デフォルトは0)ホストに接続されています
エミュレートされたターゲットの代わりにBluetoothスタック。 これにより、ホストとターゲットが許可されます
共通のスキャッターネットに参加して通信するマシン。 Linuxが必要です
「vhci」ドライバがインストールされています。 次のように使用できます。
qemu-system-i386 [...オプション...]-bt hci、vlan = 5 -bt vhci、vlan = 5
-bt デバイス:devの[、vlan =n]
Bluetoothデバイスをエミュレートする devの そしてそれをネットワークに配置します n (デフォルトは0)。 QEMUは
現在、BluetoothデバイスのXNUMXつのタイプをエミュレートします。
キーボード
HIDPBluetoothプロファイルを実装する仮想ワイヤレスキーボード。
TPMデバイスオプション:
TPMデバイスオプションの一般的な形式は次のとおりです。
-tpmdev バックエンド 、id =id [,オプション]
バックエンドタイプは次のとおりである必要があります。 パススルー.
特定のバックエンドタイプによって、適用可能なオプションが決まります。 「-tpmdev」オプション
TPMバックエンドを作成し、TPMを指定する「-device」オプションが必要です
フロントエンドインターフェイスモデル。
各バックエンドのオプションを以下に説明します。
'help'を使用して、使用可能なすべてのTPMバックエンドタイプを出力します。
qemu-tpmdevヘルプ
-tpmdev パススルー、 id =id, パス=path, キャンセルパス=キャンセルパス
(Linuxホストのみ)パススルードライバーを使用して、ホストのTPMへのアクセスを有効にします。
path ホストのTPMデバイスへのパスを指定します。つまり、Linuxホストでは次のようになります。
「/ dev / tpm0」。 path オプションであり、デフォルトでは「/ dev / tpm0」が使用されます。
キャンセルパス ホストTPMデバイスのsysfsエントリへのパスを指定して
進行中のTPMコマンドのキャンセル。 キャンセルパス オプションで、デフォルトではQEMU
使用するsysfsエントリを検索します。
パススルードライバーでホストのTPMを使用する際の注意事項:
パススルードライバーによってアクセスされるTPMデバイスは、他のユーザーが使用してはなりません。
ホスト上のアプリケーション。
ホストのファームウェア(BIOS / UEFI)はすでにTPMを初期化しているため、VMの
ファームウェア(BIOS / UEFI)はTPMを再度初期化できないため、
ユーザーがTPMを構成できるTPM固有のメニューを表示しない。
たとえば、ユーザーがTPMを有効/無効またはアクティブ/非アクティブにできるようにします。 さらに、
TPMの所有権がVM内から解放されると、ホストのTPMが無効になり、
非アクティブ化。 後でTPMを有効にして再度アクティブにするには、ホストが
再起動すると、ユーザーはファームウェアのメニューを入力して有効化およびアクティブ化する必要があります
TPM。 TPMを無効または非アクティブのままにすると、ほとんどのTPMコマンドが失敗します。
パススルーTPMを作成するには、次のXNUMXつのオプションを使用します。
-tpmdevパススルー、id = tpm0 -device tpm-tis、tpmdev = tpm0
「-tpmdev」IDは「tpm0」であり、デバイスでは「tpmdev = tpm0」によって参照されることに注意してください。
オプションを選択します。
Linux /マルチブートブート固有:
これらのオプションを使用すると、インストールせずに特定のLinuxまたはマルチブートカーネルを使用できます
ディスクイメージにあります。 これは、さまざまなカーネルのテストを容易にするのに役立ちます。
-カーネル bzImage
bzImage カーネルイメージとして。 カーネルは、Linuxカーネルまたはマルチブートのいずれかです。
形式でダウンロードすることができます。
-追加 コマンドライン
コマンドライン カーネルコマンドラインとして
-initrd file
file 初期RAMディスクとして。
-initrd "file1 arg = foo、file2"
この構文は、マルチブートでのみ使用できます。
file1 と file2 モジュールとして、最初のモジュールにパラメータとしてarg = fooを渡します。
-dtb file
file デバイスツリーバイナリ(dtb)イメージとして、起動時にカーネルに渡します。
デバッグ/エキスパートオプション:
-fw_cfg [名前=]名、file =file
ファイルから名前付きfw_cfgエントリを追加します。 名 fw_cfgのエントリの名前を決定します
ゲストに公開されているファイルディレクトリ。
-fw_cfg [名前=]名、string =STR
文字列から名前付きfw_cfgエントリを追加します。
-シリアル devの
仮想シリアルポートをホスト文字デバイスにリダイレクトします devの。 デフォルトのデバイスは
グラフィカルモードでは「vc」、非グラフィカルモードでは「stdio」。
このオプションは、最大4つのシリアルポートをシミュレートするために数回使用できます。
「-serialnone」を使用して、すべてのシリアルポートを無効にします。
利用可能なキャラクターデバイスは次のとおりです。
vc [:WxH]
仮想コンソール。 オプションで、幅と高さをピクセル単位で指定できます。
vc:800x600
文字で幅または高さを指定することもできます。
vc:80Cx24C
PTY [Linuxのみ]疑似TTY(新しいPTYが自動的に割り当てられます)
なし
デバイスは割り当てられていません。
ヌル
ボイドデバイス
chardev:id
「-chardev」オプションで定義された名前付き文字デバイスを使用します。
/ dev / XXX
[Linuxのみ]ホストttyを使用します。例: / dev / ttyS0。 ホストのシリアルポートパラメータは次のとおりです。
エミュレートされたものに従って設定します。
/ dev / parportN
[Linuxのみ、パラレルポートのみ]ホストパラレルポートを使用 N。 現在SPPとEPP
パラレルポート機能を使用できます。
ファイル:ファイル名
出力をに書き込む ファイル名。 文字が読めません。
標準入出力
[Unixのみ]標準入出力
パイプ:ファイル名
名前付きパイプ ファイル名
COMn
[Windowsのみ]ホストのシリアルポートを使用する n
udp:[リモートホスト]:リモートポート[@ [src_ip]:送信元ポート]
これにより、UDPネットコンソールが実装されます。 いつ リモートホスト or src_ip 指定されていません
デフォルトは0.0.0.0です。 指定を使用しない場合 送信元ポート ランダムポートは
自動的に選択されます。
単純な読み取り専用コンソールが必要な場合は、「netcat」または「nc」を使用できます。
QEMUを次のように開始します: "-serial udp :: 4555"およびncas: "nc -u -l -p4555"。 いつでも
QEMUは、netconsoleセッションに表示されるポートに何かを書き込みます。
ネットコンソール経由でキャラクターを送り返す予定の場合、または停止して開始したい場合
QEMUは何度も、QEMUに毎回同じ送信元ポートを使用させる必要があります。
QEMUに「-serialudp :: 4555 @ 4556」のようなものを使用します。 別のアプローチは使用することです
TCPポートをリッスンして送受信できるnetcatのパッチバージョン
udp経由の文字。 パッチを適用したバージョンのnetcatをアクティブ化する場合
telnetリモートエコーと単一文字転送の場合、次を使用できます
ポート5555のtelnetがアクセスできるようにnetcatリダイレクタをステップアップするオプション
QEMUポート。
「QEMUオプション:」
-シリアルudp :: 4555 @ 4556
「netcatオプション:」
-u -P 4555 -L 0.0.0.0:4556 -t -p 5555 -I -T
「telnetオプション:」
ローカルホスト5555
tcp:[host]:ポート[, ] [、nowait] [、nodelay] [、reconnect =秒]
TCP Net Consoleには、XNUMXつの動作モードがあります。 シリアルI / Oを
場所または場所からの接続を待ちます。 デフォルトでは、TCPネットコンソール
に送信されます host ポート。 あなたが オプションQEMUは待機します
続行する前にポートに接続するクライアントソケットアプリケーション。
「nowait」オプションが指定されました。 「nodelay」オプションは、Nagleバッファリングを無効にします
アルゴリズム。 「再接続」オプションは、次の場合にのみ適用されます サーバーなし が設定されている場合、
接続がダウンすると、指定された間隔で再接続が試行されます。 もしも host
省略され、0.0.0.0が想定されます。 一度にXNUMXつのTCP接続のみが受け入れられます。 君は
「telnet」を使用して、対応する文字デバイスに接続できます。
「TCPコンソールを192.168.0.2ポート4444に送信する例」
-シリアルtcp:192.168.0.2:4444
「ポート4444で接続をリッスンして待機する例」
-シリアルtcp :: 4444、サーバー
「IP192.168.0.100ポート4444で待機せずにリッスンする例」
-シリアルtcp:192.168.0.100:4444、server、nowait
telnet:host:ポート[、server] [、nowait] [、nodelay]
生のtcpソケットの代わりにtelnetプロトコルが使用されます。 オプションは同じように機能します
「-serialtcp」を指定したかのように。 違いは、ポートが次のように動作することです
telnetオプションネゴシエーションを使用するtelnetサーバーまたはクライアント。 これにより、
送信をサポートするTelnetを使用している場合は、MAGIC_SYSRQシーケンスを送信します。
ブレークシーケンス。 通常、UNIX telnetでは、Control-]を使用して実行し、次のように入力します。
「ブレークを送信」してからEnterキーを押します。
UNIX:path[、server] [、nowait] [、reconnect =秒]
tcpソケットの代わりにunixドメインソケットが使用されます。 オプションは同じように機能します
UNIXドメインソケットを除いて「-serialtcp」を指定したかのように path 使用されている
接続用。
月:開発文字列
これは、モニターを別のモニターに多重化できるようにするための特別なオプションです。
シリアルポート。 モニターには、次のキーシーケンスでアクセスします。 コントロール-a その後
を押す c. 開発文字列 上記で指定されたシリアルデバイスのいずれかである必要があります。
ポート4444でリッスンしているTelnetサーバーにモニターを多重化する例
だろう:
"-serial mon:telnet :: 4444、server、nowait"
このようにモニターがstdioに多重化されている場合、Ctrl + Cは終了しません
QEMUはもうありませんが、代わりにゲストに渡されます。
点字
点字デバイス。 これはBrlAPIを使用して、点字出力を実際の点字または
偽のデバイス。
msマウス
XNUMXボタンシリアルマウス。 Microsoftプロトコルを使用するようにゲストを構成します。
-平行 devの
仮想パラレルポートをホストデバイスにリダイレクトする devの (シリアルと同じデバイス
港)。 Linuxホストでは、 / dev / parportN に接続されたハードウェアデバイスを使用するために使用できます
対応するホストパラレルポート。
このオプションは、最大3つのパラレルポートをシミュレートするために数回使用できます。
「-parallelnone」を使用して、すべてのパラレルポートを無効にします。
-モニター devの
モニターをホストデバイスにリダイレクトします devの (シリアルポートと同じデバイス)。 NS
デフォルトのデバイスは、グラフィカルモードでは「vc」、非グラフィカルモードでは「stdio」です。 使用する
「-monitornone」は、デフォルトのモニターを無効にします。
-qmp devの
-monitorと同様ですが、「制御」モードで開きます。
-qmp-かなり devの
-qmpに似ていますが、かなりのJSON形式を使用します。
-月 [chardev =] name [、mode = readline | control] [、default]
chardevでモニターをセットアップする 名.
-デバッグコン devの
デバッグコンソールをホストデバイスにリダイレクトします devの (シリアルポートと同じデバイス)。 NS
デバッグコンソールはI / Oポートであり、通常はポート0xe9です。 そのI / Oポートへの書き込み
このデバイスに出力を送信します。 デフォルトのデバイスは、グラフィカルモードでは「vc」、「stdio」です。
非グラフィックモードで。
-pidfile file
QEMUプロセスPIDをに保存します file。 スクリプトからQEMUを起動する場合に便利です。
-単一段階
エミュレーションをシングルステップモードで実行します。
-S 起動時にCPUを起動しないでください(モニターに「c」と入力する必要があります)。
-リアルタイム mlock = on | off
リアルタイム機能でqemuを実行します。 mlockingqemuとゲストメモリは
mlock = on (デフォルトで有効)。
-gdb devの
デバイスでgdb接続を待つ devの。 一般的な接続はTCPベースである可能性があります。
しかし、UDP、疑似TTY、さらにはstdioも妥当なユースケースです。 後者は
gdb内からQEMUを開始し、パイプを介して接続を確立できるようにします。
(gdb)ターゲットリモート| exec qemu-system-i386 -gdb stdio..。
-s -gdb tcp :: 1234の省略形。つまり、TCPポート1234でgdbserverを開きます。
-d item1[、...]
指定されたアイテムのログを有効にします。 ログ項目のリストについては、「-dhelp」を使用してください。
-D ログファイル
出力ログイン ログファイル stderrの代わりに
-L path
BIOS、VGA BIOS、およびキーマップのディレクトリを設定します。
-BIOS file
BIOSのファイル名を設定します。
-有効-kvm
KVMの完全仮想化サポートを有効にします。 このオプションは、KVMがサポートされている場合にのみ使用できます
コンパイル時に有効になります。
-xen-domid id
xenゲストドメインを指定します id (XENのみ)。
-xen-create
xendをバイパスして、xenハイパーコールを使用してドメインを作成します。 警告:次の場合は使用しないでください
xendが使用されています(XENのみ)。
-xen-アタッチ
既存のxenドメインに接続します。 xendはQEMUの起動時にこれを使用します(XENのみ)。
-再起動なし
再起動せずに終了します。
-シャットダウンなし
ゲストのシャットダウン時にQEMUを終了せず、代わりにエミュレーションを停止するだけです。 これにより、
たとえば、ディスクイメージへの変更をコミットするためにモニターに切り替えます。
-loadvm file
保存された状態ですぐに開始します(モニターの「loadvm」)
-デーモン化
初期化後にQEMUプロセスをデーモン化します。 QEMUは標準から切り離されません
いずれかのデバイスで接続を受信する準備ができるまでIO。 このオプションは
外部プログラムが対処せずにQEMUを起動するための便利な方法
初期化の競合状態。
-オプションROM file
の内容をロードします file オプションROMとして。 このオプションは、次のようなものをロードするのに役立ちます
EtherBoot。
-RTC [base = utc | localtime |date] [、clock = host | vm] [、driftfix = none | slew]
指定 ベース 「utc」または「localtime」として、RTCを現在のUTCまたはローカルで開始できるようにします
それぞれ時間。 MS-DOSまたはWindowsで正しい日付を取得するには、「localtime」が必要です。 に
特定の時点で開始し、提供します date 「2006-06-17T16:01:21」の形式または
「2006-06-17」。 デフォルトの基数はUTCです。
デフォルトでは、RTCはホストシステム時間によって駆動されます。 これにより、RTCを次のように使用できます。
ゲスト内の正確な基準時計、特にホスト時間がスムーズな場合
正確な外部基準クロックに従う、例えばNTP経由。 隔離したい場合
ホストからのゲスト時間、あなたは設定することができます クロック 代わりに「rt」に。 それを防ぐために
一時停止中の進行から、「vm」に設定できます。
有効にする ドリフトフィックス (i386ターゲットのみ)タイムドリフトの問題が発生した場合、
特にWindowsのACPIHALを使用します。 このオプションは、タイマーの数を把握しようとします
割り込みはWindowsゲストによって処理されなかったため、再挿入されます。
-icount [シフト=N| auto] [、rr = record | replay、rrfile =ファイル名]
仮想命令カウンタを有効にします。 仮想CPUはXNUMXつの命令を実行します
2 ^ごとN nsの仮想時間。 「auto」が指定されている場合、仮想CPU速度は
仮想時間をリアルタイムの数秒以内に保つように自動的に調整されます。
仮想CPUがスリープしているとき、仮想時間はデフォルトの速度で進みます
ない限り、 sleep = no が指定されています。 と sleep = no、仮想時間は次の時間にジャンプします
仮想CPUがスリープモードになり、スリープモードにならないときはいつでも、タイマーの期限はすぐに
タイマーが有効になっていない場合は進みます。 この振る舞いは、から決定論的な実行時間を与えます
ゲストの視点。
このオプションは決定論的な動作を提供できますが、サイクルを提供しないことに注意してください
正確なエミュレーション。 最新のCPUには、複雑なスーパースカラーの故障したコアが含まれています
キャッシュ階層。 多くの場合、実行される命令の数はほとんどまたはまったくありません。
実際のパフォーマンスとの相関。
align = on ホストの同期を試みる遅延アルゴリズムをアクティブにします
時計と仮想時計。 目標は、ゲストを実際の頻度で実行させることです
シフトオプションによって課せられます。 ゲストクロックがホストクロックより遅れている場合、および
align = on が指定されている場合、遅延について通知するメッセージをユーザーに出力します。
現在、このオプションは次の場合には機能しません シフト 「自動」です。 注:同期アルゴリズム
ゲストクロックがホストより先に実行されるシフト値に対して機能します
時計。 通常、これはシフト値が高い場合に発生します(どの程度の高さは
ホストマシン)。
日時 rr オプションが指定されている場合、確定的な記録/再生が有効になります。 リプレイログは
に書かれた ファイル名 記録モードでファイルを作成し、再生モードでこのファイルから読み取ります。
-ウォッチドッグ
仮想ハードウェアウォッチドッグデバイスを作成します。 (ゲストアクションによって)有効にすると、
ウォッチドッグは、ゲスト内のエージェントまたはゲストによって定期的にポーリングされる必要があります
再起動されます。 ゲストがドライバーを持っているモデルを選択してください。
この エミュレートするハードウェアウォッチドッグのモデルです。 「-watchdoghelp」を使用してリストします
利用可能なハードウェアモデル。 ゲストに対して有効にできるウォッチドッグはXNUMXつだけです。
次のモデルが利用できる場合があります。
ib700
iBASE 700は、タイマーがXNUMXつだけの非常にシンプルなISAウォッチドッグです。
i6300esb
Intel 6300ESB I / Oコントローラーハブは、はるかに機能的なPCIベースのデュアルタイマーです
ウォッチドッグ。
diag288
診断390ハイパーコール(現在はKVM)に裏打ちされたs288xの仮想ウォッチドッグ
のみ)。
-ウォッチドッグ-アクション アクション
この アクション ウォッチドッグタイマーの期限が切れたときにQEMUが行うことを制御します。 デフォルトは
「リセット」(ゲストを強制的にリセットします)。 その他の可能なアクションは次のとおりです。「シャットダウン」(試行)
ゲストを正常にシャットダウンするには)、「電源オフ」(ゲストを強制的に電源オフする)、「一時停止」
(ゲストを一時停止)、「debug」(デバッグメッセージを出力して続行)、または「none」(実行
なし)。
「シャットダウン」アクションでは、ゲストがACPI信号に応答する必要があることに注意してください。
ウォッチドッグが持っているような状況ではできないかもしれません
有効期限が切れているため、「-watchdog-actionshutdown」を本番環境で使用することはお勧めしません。
例:
「-watchdogi6300esb-watchdog-actionpause」
「-ウォッチドッグib700」
-echr nude_ascii_value
モニター使用時にモニターへの切り替えに使用するエスケープ文字を変更し、
シリアル共有。 「-nographic」オプションを使用する場合、デフォルトは0x01です。 0x01は
「Control-a」を押すのと同じです。 アスキーから別のキャラクターを選択できます
1から26がControl-aからControl-zにマップされるコントロールキー。 例えばあなた
次のいずれかを使用して、エスケープ文字をControl-tに変更できます。
"-echr 0x14"
「-echr20」
-virtioconsole c
virtioコンソールを設定します。
このオプションは、下位互換性のために維持されています。
新しい呼び出し方法については、「-devicevirtconsole」を使用してください。
-ショーカーソル
カーソルを表示します。
-tbサイズ n
TBサイズを設定します。
-着信 tcp:[host]:ポート[、to =マックスポート] [、ipv4] [、ipv6]
-着信 rdma:host:ポート[、ipv4] [、ipv6]
着信移行の準備をし、特定のtcpポートでリッスンします。
-着信 UNIX:ソケットパス
着信移行の準備をし、特定のUNIXソケットでリッスンします。
-着信 fd:fd
指定されたファイル記述子からの着信移行を受け入れます。
-着信 exec:コマンドライン
指定された外部コマンドからの出力として着信移行を受け入れます。
-着信 延期する
migrate_incomingを介してURIが指定されるのを待ちます。 モニターは
merge_incomingを発行する前に、設定(移行パラメーターなど)を変更します
移行を開始できるようにします。
-デフォルトなし
デフォルトのデバイスを作成しないでください。 通常、QEMUはシリアルなどのデフォルトデバイスを設定します
ポート、パラレルポート、仮想コンソール、モニターデバイス、VGAアダプター、フロッピー、CD-ROM
ドライブなど。 「-nodefaults」オプションは、これらすべてのデフォルトデバイスを無効にします。
-chroot DIR
ゲストの実行を開始する直前に、指定されたディレクトリにchrootします。
-runasと組み合わせると特に便利です。
-ルーン文字 user
ゲストの実行を開始する直前に、root権限を削除し、
指定されたユーザー。
-prom-env 変数=値
OpenBIOSnvramを設定します 変数 与えられる 値 (PPC、SPARCのみ)。
-セミホスティング
セミホスティングモードを有効にします(ARM、M68K、Xtensa、MIPSのみ)。
-セミホスティング構成 [enable = on | off] [、target = native | gdb | auto] [、arg = str [、...]]
セミホスティングを有効にして構成します(ARM、M68K、Xtensa、MIPSのみ)。
target = "native | gdb | auto"
セミホスティングコールがQEMU(「ネイティブ」)または宛先にアドレス指定される場所を定義します
GDB( "gdb")。 デフォルトは「auto」です。これは、デバッグセッション中の「gdb」を意味します。
それ以外の場合は「ネイティブ」。
arg =str1、arg =str2、...
ユーザーが入力引数を渡すことができ、ビルドに複数回使用できます
リストをアップします。 コマンドラインを渡す古いスタイルの「-kernel」/「-append」メソッドは次のとおりです。
下位互換性のために引き続きサポートされています。 両方の「--semihosting-configarg」の場合
「-kernel」/「-append」が指定されている場合、前者は次のようにセミホスティングに渡されます。
常に優先されます。
-古いパラメータ
古いパラメータモード(ARMのみ)。
-サンドボックス argは
Seccompモード2システムコールフィルターを有効にします。 「オン」はシステムコールフィルタリングを有効にし、「オフ」は
無効にします。 デフォルトは「オフ」です。
-readconfig file
からデバイス構成を読み取ります file。 このアプローチは、スポーンしたいときに役立ちます
多くのコマンドラインオプションを備えたQEMUプロセスですが、コマンドを超えたくない
行の文字数制限。
-writeconfig file
デバイス構成を fileを選択します。 file コマンドを保存するファイル名のいずれかにすることができます
行とデバイスの構成をファイルまたはダッシュ "-")文字に変換して、出力を出力します
stdout。 これは、後で「-readconfig」オプションの入力ファイルとして使用できます。
-nodefconfig
通常、QEMUはから構成ファイルをロードします sysconfdir と データディレクトリ 起動時。 NS
「-nodefconfig」オプションは、QEMUがこれらの構成ファイルをロードできないようにします。
-ユーザー構成なし
「-no-user-config」オプションを使用すると、QEMUはユーザー提供の構成ファイルをロードしません。
on sysconfdir、ただし、QEMUが提供する構成ファイルをスキップすることはありません。 データディレクトリ.
-痕跡 [イベント=file] [、file =file]
トレースオプションを指定します。
イベント=file
にリストされているイベントをすぐに有効にします file。 ファイルにはXNUMXつのイベント名が含まれている必要があります
(に記載されているように トレースイベント ファイル)XNUMX行あたり。 このオプションは、次の場合にのみ使用できます。
QEMUはどちらかでコンパイルされています シンプルな or stderr バックエンドのトレース。
file =file
出力トレースをログに記録する file.
このオプションは、QEMUが シンプルな トレース
バックエンド。
-fips を有効にする
FIPS140-2コンプライアンスモードを有効にします。
-メッセージ タイムスタンプ[=オン|オフ]
各ログメッセージの先頭にタイムスタンプを追加します。(デフォルト:オン)
-ダンプ-vmstate file
現在のマシンタイプのjsonエンコードされたvmstate情報をファイルにダンプします file ジェネリック
オブジェクトの作成
-物体 タイプ名[,prop1=value1、...]
タイプの新しいオブジェクトを作成します タイプ名 プロパティを順番に設定する
指定。 'id'プロパティを設定する必要があることに注意してください。 これらのオブジェクトはに配置されます
'/ objects'パス。
-物体 メモリバックエンドファイル、id =id、サイズ=サイズ、mem-path =DIR、share =オン|オフ
ゲストRAMをバックアップするために使用できるメモリファイルバックエンドオブジェクトを作成します
巨大なページ。 NS id パラメータは、これを参照するために使用される一意のIDです
構成時のメモリ領域 -ぬま 引数。 は サイズ オプションはを提供します
メモリ領域のサイズであり、一般的なサフィックスを受け入れます。 500Mを選択します。 メモリパス
共有メモリまたは巨大なページファイルシステムマウントへのパスを提供します。 NS
シェア ブールオプションは、メモリ領域をプライベートとしてマークするかどうかを決定します
QEMU、または共有。 後者は、協力する外部プロセスがにアクセスすることを可能にします
QEMUメモリ領域。
-物体 rng-random、id =id、ファイル名=/ dev / random
上のデバイスからエントロピーを取得する乱数ジェネレータバックエンドを作成します
ザ・ホスト。 NS id パラメータは、これを参照するために使用される一意のIDです
からのエントロピーバックエンド virtio-rng 端末。 ザ・ ファイル名 パラメータはどれを指定します
エントロピーを取得するファイル。省略した場合のデフォルトは / dev / random.
-物体 rng-egd、id =id、chardev =チャーデビッド
外部からエントロピーを取得する乱数ジェネレータバックエンドを作成します
ホスト上で実行されているデーモン。 NS id パラメータは、以下に使用される一意のIDです。
からこのエントロピーバックエンドを参照します virtio-rng 端末。 ザ・ チャーデブ パラメーター
は、への接続を提供する文字デバイスバックエンドの一意のIDです。
RNGデーモン。
-物体
tls-creds-anon、id =id、エンドポイント=終点、dir =/ path / to / cred / dir、verify-peer =オン|オフ
TLSを提供するために使用できるTLS匿名クレデンシャルオブジェクトを作成します
ネットワークバックエンドのサポート。 NS id パラメータは、どのネットワークの一意のIDです
バックエンドは、資格情報へのアクセスに使用します。 NS 終点 どちらかです or
クライアント クレデンシャルを使用するQEMUネットワークバックエンドかどうかによって異なります
クライアントまたはサーバーとして機能します。 もしも 検証ピア 有効になっています(デフォルト)
次に、ハンドシェイクが完了すると、ピアの資格情報が検証されます。
ただし、これは匿名のクレデンシャルには使用できません。
この DIR パラメーターは、クレデンシャルファイルの場所をQEMUに指示します。 サーバー用
エンドポイント、このディレクトリにはファイルが含まれる場合があります dh-params.pem ディフィーを提供する-
TLSサーバーに使用するhellmanパラメーター。 ファイルが欠落している場合、QEMUは
起動時にDHパラメータのセットを生成します。 これは計算コストがかかります
ランダムなプールエントロピーを消費する操作なので、
パラメータの永続的なセットが事前に生成され、保存されます。
-物体
tls-creds-x509、id =id、エンドポイント=終点、dir =/ path / to / cred / dir、verify-peer =オン|オフ
TLSを提供するために使用できるTLS匿名クレデンシャルオブジェクトを作成します
ネットワークバックエンドのサポート。 NS id パラメータは、どのネットワークの一意のIDです
バックエンドは、資格情報へのアクセスに使用します。 NS 終点 どちらかです or
クライアント クレデンシャルを使用するQEMUネットワークバックエンドかどうかによって異なります
クライアントまたはサーバーとして機能します。 もしも 検証ピア 有効になっています(デフォルト)
次に、ハンドシェイクが完了すると、ピアの資格情報が検証されます。 と
x509証明書。これは、クライアントに有効な証明書を提供する必要があることを意味します。
クライアント証明書も。
この DIR パラメーターは、クレデンシャルファイルの場所をQEMUに指示します。 サーバー用
エンドポイント、このディレクトリにはファイルが含まれる場合があります dh-params.pem ディフィーを提供する-
TLSサーバーに使用するhellmanパラメーター。 ファイルが欠落している場合、QEMUは
起動時にDHパラメータのセットを生成します。 これは計算コストがかかります
ランダムなプールエントロピーを消費する操作なので、
パラメータの永続的なセットが事前に生成され、保存されます。
x509証明書のクレデンシャルの場合、ディレクトリにはさらにファイルが含まれます
x509証明書を提供します。 証明書は、PEM形式で保存する必要があります。
ファイル名 ca-cert.pem, ca-crl.pem (オプション)、 サーバー証明書.pem (サーバーのみ)、
サーバーキー.pem (サーバーのみ)、 クライアント証明書.pem (クライアントのみ)、および クライアントキー.pem
(クライアントのみ)。
-物体 filter-buffer、id =id、netdev =ネットデバイス、interval =t[、queue =all | rx | tx]
インターバル t 0にすることはできません。このフィルターはパケット配信をバッチ処理します:すべてのパケット
netdevに所定の間隔で到着する ネットデバイス の終わりまで延期されます
間隔。 間隔はマイクロ秒単位です。
キュー all | rx | tx は、任意のnetfilterに適用できるオプションです。
を:フィルターは、の受信キューと送信キューの両方に接続されています
netdev(デフォルト)。
rx:フィルターはnetdevの受信キューに接続されます。
netdevに送信されたパケットを受信します。
tx:フィルターはnetdevの送信キューに接続されます。
netdevによって送信されたパケットを受信します。
-物体 filter-dump、id =id、netdev =devの、file =ファイル名] [、maxlen =LEN]
netdevでネットワークトラフィックをダンプします devの によって指定されたファイルに ファイル名。 せいぜい
LEN パケットあたりのバイト数(デフォルトでは64k)が格納されます。 ファイル形式はlibpcapなので、
tcpdumpやWiresharkなどのツールを使用して分析できます。
グラフィカルエミュレーション中に、特別なキーの組み合わせを使用してモードを変更できます。 NS
デフォルトのキーマッピングを以下に示しますが、「-alt-grab」を使用する場合、修飾子は次のようになります。
Ctrl-Alt-Shift(Ctrl-Altの代わりに)そして「-ctrl-grab」を使用する場合、修飾子は
右Ctrlキー(Ctrl-Altの代わりに):
Ctrl-Alt-F
フルスクリーン切り替え
Ctrl-Alt- +
画面を拡大する
Ctrl-Alt--
画面を縮小する
Ctrl-Alt-U
画面の拡大縮小されていないサイズを復元する
Ctrl-Alt-N
仮想コンソール 'n'に切り替えます。 標準のコンソールマッピングは次のとおりです。
1 ターゲットシステムの表示
2 モニター
3 シリアルポート
Ctrl-Alt
マウスとキーボードのグラブを切り替えます。
仮想コンソールでは、次を使用できます Ctrl+上, Ctrlキーを押しながら下に, Ctrl+PageUp と Ctrl-PageDown 〜へ
バックログに移動します。
エミュレーション中に、 -ノグラフィック オプション、使用 Ctrl-a h ターミナルを取得するには
Ctrl-a h
Ctrl-a ?
このヘルプを印刷する
Ctrl-a x
エミュレータを終了します
Ctrl-a s
ディスクデータをファイルに保存し直します(-snapshotの場合)
Ctrl-a t
コンソールのタイムスタンプを切り替えます
Ctrl-a b
ブレークを送信(Linuxのマジックsysrq)
Ctrl-a c
コンソールとモニターを切り替える
Ctrl-a Ctrl-a
Ctrl-aを送信します
次のオプションは、PowerPCエミュレーションに固有のものです。
-g WxH[xDEPTH]
初期VGAグラフィックモードを設定します。 デフォルトは800x600x32です。
-prom-env string
次に、NVRAMでOpenBIOS変数を設定します。
qemu-system-ppc -prom-env'auto-boot?= false '\
-prom-env'boot-device = hd:2、\ yaboot '\
-prom-env'boot-args = conf = hd:2、\ yaboot.conf '
これらの変数は、OpenHack'Wareでは使用されません。
次のオプションは、Sparc32エミュレーションに固有です。
-g WxHx [xDEPTH]
初期グラフィックモードを設定します。 TCXの場合、デフォルトは1024x768x8で、オプションは
1024x768x24。 cgthreeの場合、デフォルトは1024x768x8で、オプションは1152x900x8です。
OBPを使用したい人。
-prom-env string
次に、NVRAMでOpenBIOS変数を設定します。
qemu-system-sparc -prom-env'auto-boot?= false '\
-prom-env'boot-device = sd(0,2,0):d '-prom-env'boot-args = linux single'
-M [SS-4|SS-5|SS-10|SS-20|SS-600MP|LX|Voyager|SPARCClassic] [| SPARCbook]
エミュレートされたマシンタイプを設定します。 デフォルトはSS-5です。
次のオプションは、Sparc64エミュレーションに固有です。
-prom-env string
次に、NVRAMでOpenBIOS変数を設定します。
qemu-system-sparc64 -prom-env'auto-boot?= false '
-M [sun4u | sun4v |ナイアガラ]
エミュレートされたマシンタイプを設定します。 デフォルトはsun4uです。
onworks.net サービスを使用してオンラインで qemu-system-mips64el を使用する