OSのイメージを作成する

OSのイメージを作成する

私は Debian OS が入った Nano Pi デバイスを使用しています。OS イメージは内部メモリ (8 GB) に存在します。使用されているメモリの合計サイズは約 4 GB です。この OS のバックアップをイメージ ファイルに作成したいと考えています。

やった後

dd if=/dev/mmcblk1 of=NanoPi.img bs=8M status=progress

イメージ ファイルの合計サイズは 8GB になります。メモリ全体ではなく、メモリで使用されている部分のみのイメージを作成するにはどうすればよいでしょうか。

答え1

ddブロック デバイスは単なるバイトのダンプなので、これを簡単に行うことはできません。 未割り当て領域に長い間削除されたファイルのデータが含まれている可能性があります。ddこれはファイルシステムの仕事なので、ファイルシステムはそれを認識しません。 いくつかのオプションがあります。

ddを使い続ける

... より大きなスペースの使用を受け入れます。代わりに、次のようにしますdd if=/dev/mmcblk1 of=NanoPi.img bs=64K conv=noerror,sync status=progress。ブロック サイズを小さくすると、読み取りエラーが発生した場合のセキュリティが少し高まります。dd少なくとも 1 つのセクターの読み取りに失敗した場合、ブロックの残りの部分は処理されません。ブロック サイズは、1 つの不良セクターで失われる可能性のある最大バイト数です。conv=noerrorエラーが発生した場合でもクローン作成が続行されるようにします。conv=sync読み取りエラーが発生した場合に宛先ファイルのポインターを前方にシフトして、データが整列したまま有効になるようにします。

dd出力をパイプしてgzipデータを圧縮し、スペースを節約すること ができます。dd if=/dev/mmcblk1 bs=64K conv=noerror,sync status=progress | gzip -c > NanoPi.img.gz 生の画像を取得するには、次のようにしますgunzip -c ./NanoPi.img.gz > NanoPi.img

rsyncを使用する

... 生のファイルを処理します。rsync -aAXv /path/to/mounted/mmcblk1 /path/to/destination/folderファイルシステムがマウントされているかどうかによって、これが機能するかどうかが決まります。

関連情報