答え1
これを行う場合cp /dev/sdb1 file.img
(または同じdd
ですが、ここで使用することはdd
特にデフォルトのブロックサイズの場合は非生産的です)、デバイスの最初のパーティションの元の内容sdb
をにコピーしますfile.img
。file.img
その内容はVFAT形式のファイルシステムになります。画像(例:iso
イメージにはISO9660タイプのファイルシステムのイメージが含まれているため、ファイルにアクセスするにはustar / paxファイル形式を理解できる必要があるように、その中のファイルにアクセスするにはVFATファイルシステムを理解する必要があります。アーカイブにtar
。
/dev/sdb1
Linuxカーネルは、/dev/sdb1
ディレクトリにマウントした後にファイルにアクセスする方法であるVFATファイルシステムを理解しています。
ブロックデバイスを使用して、通常のファイルに含まれるファイルシステムをマウントすることもできますloop
。
sudo losetup -f --show file.img
f
ブロックデバイスのように動作しますが、通常のファイルでサポートされているループデバイス(対応するパスの最初のリーデバイスを使用show
)が作成されます。
その後、を使用してインストールできますsudo mount /dev/loopXX /some/directory
。
イメージを変更する予定がない場合は、-r
コマンドにループデバイスを追加するか、読み取り専用としてマウントするか、またはオプションを渡して-o ro
ループデバイス自体を読み取り専用にする必要があります。-r
losetup
最近では、次のオプションを使用して直接実行できますmount
。losetup
-o loop
sudo mount -o loop file.img /some/directory
-o loop
最新バージョンでは、通常のファイルをマウントしようとするとループマウントが必要だと仮定するため、これをスキップすることもできます。
sudo mount file.img /some/directory
VFATファイルシステムを理解する他のものはGNUであり、/ MS-DOS / Windowsコマンド(、、、...)プレフィックス(Microsoft / MS-DOS用)mtools
を使用してVFAT形式のディスク上のファイルまたはディスクイメージにアクセスできます。COMMAND.COM
CMD.EXE
dir
type
copy
m
mdir -i file.img
に含まれるVFATファイルシステムのルートの内容が一覧表示されますfile.img
。