完全に構成されたLinuxシステムを16GBUSBドライブにインストールしています。私は同じブランド/タイプのUSBドライブを10回、まったく同じメインボードを10回持っています。
次に、USBドライブを他のドライブにコピーして、10台のシステムで同じイメージを使用できるようにします。
WinDiskImager32を使用してUSBドライブのイメージを作成し、それを元のUSBドライブに書き戻してみました。それは同じドライブなのでうまくいきましたが、他のUSBドライブに書き込もうとすると、イメージが大きすぎてそれらのドライブには失敗しました。それらはすべて16GBですが、実際にはもちろん常に小さな違いがあります。
明らかに、これはこれを行う正しい方法ではないので、他のUSBに展開できるように、元のUSBを正しく「複製」するにはどうすればよいのでしょうか。
(システムは、新しいコンピューターにインストールされているという事実に対処するように構成されているため、ここでは問題ではなく、正確なコピーを取得する必要があることに注意してください)
更新
WesleyDavidの回答に基づいて、gpartedを使用してドライブをチェックし、WinDiskImager32を使用して8GBデバイスからイメージを最初にコピーしたため、パーティションがすでに十分に小さいことを思い出しました。
問題は、WindDiskImagerがパーティションだけでなくドライブ全体をコピーすることです。
'dd'ソリューションは、パーティションをコピーするだけでそれを修正しますが、ターゲットUSBでext2とスワップファイルシステムの両方を取得するにはどうすればよいですか?
Ddを使用してデバイス全体をコピーすると、16 GBになりますが、他のデバイスに常に収まるとは限りません。
アップデート2
WesleyDavidの作品によって推測されたddを使用して、
説明されているように、ddのカウントパラメータを使用する必要がありました ここ
基本的には、「fdisk -u -l/dev/sdb」を実行することを意味します(sdbをデバイスに置き換えます)
> Disk /dev/sdb: 16.3 GB, 16257318912 bytes 64 heads, 32 sectors/track,
> 15504 cylinders, total 31752576 sectors Units = sectors of 1 * 512 =
> 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O
> size (minimum/optimal): 512 bytes / 512 bytes Disk identifier:
> 0x000392d4
>
> Device Boot Start End Blocks Id System
> /dev/sdb1 * 2048 13672447 6835200 83 Linux
> /dev/sdb2 13674494 15818751 1072129 5 Extended
> /dev/sdb5 13674496 15818751 1072128 82 Linux swap
私の場合、最後のパーティションの終わりは「15818751」なので、次を使用しました。
dd if=/dev/sdb of=/home/myusername/usbimage.img count=15818752
安全のためにもう1つ追加します。それは私がインストールできるイメージを私に与えました。
試されて真実である最も簡単なオプション:念のため、gpartedを使用してソースパーティションを15GBにします。次に、他のUSBドライブにクローンを作成します。
本質的に、これはクローン作成の問題ではなく、パーティションのサイズ設定の問題です。パーティション/ディスクサイズが最大サイズを快適に下回ったら、dd if=source of=destination
(Windowsを想定)そしてあなたの悪い自己と一緒に頑張ってください。