14.4. イメージのマッピング
qemu-img map コマンドを使用すると、指定したイメージファイル (imgname) のメタデータと、そのバッキングファイルチェーンをダンプできます。ダンプは、(imgname) 内のすべてのセクターの割り当て状態を示し、最上位のファイルをバッキングファイルチェーンで割り当てています。必要に応じて、ファイル形式タイプ (fmt) を指定します。
# qemu-img map [-f fmt] [--output=fmt] imgname
出力形式には、
human
形式と json
形式の 2 つがあります。
14.4.1. human
形式
デフォルト形式 (
human
) は、ゼロ以外で割り当てられたファイル部分のみをダンプします。この出力により、データの読み取り元となるファイルと、ファイル内のオフセットが識別されます。各行には、4 つのフィールドが含まれます。以下は、出力の例になります。
Offset Length Mapped to File 0 0x20000 0x50000 /tmp/overlay.qcow2 0x100000 0x10000 0x95380000 /tmp/backing.qcow2
最初の行は、イメージのオフセット 0 から始まる
0x20000
(131072) バイトが、オフセット 0x50000
(327680) から始まる tmp/overlay.qcow2
(raw 形式で開かれた) で利用可能であることを示しています。圧縮、暗号化、または raw 形式で利用できないデータは、human
形式が指定されているとエラーを発生させます。
注記
ファイル名には改行文字を使用できます。そのため、スクリプトで
human
形式の出力を解析しても安全ではありません。
14.4.2. json
形式
json
を指定すると、JSON 形式の辞書の配列を返します。human
オプションに記載されている情報のほかに、以下の情報が含まれます。
data
- セクターにデータが含まれるかどうかを示すブール値フィールドです。zero
- データがゼロとして読み取られることが知られているかどうかを示すブール値フィールドです。depth
-filename
のバッキングファイルの深さです。
注記
json
オプションが指定されている場合、offset
フィールドはオプションになります。
qemu-img map コマンドとその他のオプションの詳細は、関連する man ページを参照してください。