第21章 オフラインツールを使用したゲスト仮想マシンディスクへのアクセス

21.1. はじめに

Red Hat Enterprise Linux 7 は、ゲスト仮想マシンのディスクや他のディスクイメージへのアクセス、編集、作成などを実行できる数多くの libguestfs ユーティリティーを提供しています。これらのツールは次のような複数の目的で使用することができます。
  • ゲスト仮想マシンのディスクにあるファイルの表示またはダウンロード
  • ゲスト仮想マシンのディスクでのファイルの編集またはアップロード
  • ゲスト仮想マシン設定の読み込みまたは書き込み
  • ファイル、ディレクトリー、ファイルシステム、パーティション、論理ボリュームおよびその他オプションを含む新規ディスクイメージの準備
  • 起動に失敗したゲスト仮想マシン、起動設定に変更を必要とするゲスト仮想マシンのレスキューおよび修復
  • ゲスト仮想マシンのディスク使用量の監視
  • 企業のセキュリティー標準に準拠しているかどうかなど、ゲスト仮想マシンのコンプライアンスの監査
  • テンプレートからのクローン作成およびテンプレートの修正による複数ゲスト仮想マシンの導入
  • CD、DVD ISO イメージおよびフロッピーディスクイメージの読み込み

警告

本章に記載するユーティリティーを使用して、実行中の仮想マシンに接続しているゲスト仮想マシンまたはディスクイメージに書き込みを行うことが 決してないようにしてください。また、こうしたディスクイメージを書き込みモードで開くことがないようにしてください。
これはゲスト仮想マシンのディスクが破損する原因となります。ツールはこの実行を防ぎますが、すべてのケースに対応しない場合もあります。ゲスト仮想マシンが実行中である可能性が少しでもある場合には、Red Hat はこれらのユーティリティーを使用しないよう強くお勧めします。
安全度を高めるために、特定のユーティリティーは、変更を保存しない読み取り専用モードで使用することができます (--ro オプションを使用)。

注記

libguestfs と関連するユーティリティーに関する基礎知識については Linux の man ページをご覧ください。API については guestfs(3) に記載されています。guestfish については guestfish(1) に記載されています。仮想化ユーティリティーについては独自の man ページをご覧ください (virt-df(1) など)。トラブルシューティング情報については、「libguestfs トラブルシューティング」 を参照してください。

21.1.1. リモート接続の使用についての注意点

Red Hat Enterprise Linux 7 の一部の仮想化コマンドを使用すると、リモート libvirt 接続を指定できます。以下は例になります。
# virt-df -c  qemu://remote/system -d Guest
ただし、Red Hat Enterprise Linux 7 の libguestfs ユーティリティーは、リモート libvirt ゲストのディスクにアクセスできず、リモート URL を使用するコマンドは予想通りに機能しません。
ただし、Red Hat Enterprise Linux 7 から開始すると、libguestfs はネットワークブロックデバイス (NBD) 上でリモートディスクソースにアクセスできます。ディスクイメージは qemu-nbd コマンドを使用してリモートマシンからエクスポートでき、nbd:// URL を使用してこれにアクセスできます。以下のようにファイアウォール (ポート 10809) でポートを開く必要がある場合があります。
リモートシステム上: qemu-nbd -t disk.img
ローカルシステム上: virt-df -a nbd://remote
以下の libguestfs コマンドが影響を受けます。
  • guestfish
  • guestmount
  • virt-alignment-scan
  • virt-cat
  • virt-copy-in
  • virt-copy-out
  • virt-df
  • virt-edit
  • virt-filesystems
  • virt-inspector
  • virt-ls
  • virt-rescue
  • virt-sysprep
  • virt-tar-in
  • virt-tar-out
  • virt-win-reg