Tengo un sistema Linux completamente configurado instalado en una unidad USB de 16 GB. Tengo la misma marca/tipo de unidad USB 10 veces y exactamente la misma placa base 10 veces.
Ahora quiero copiar la unidad USB a las demás para poder tener 10 sistemas que usen la misma imagen.
Lo que hice fue crear una imagen de la unidad USB usando WinDiskImager32 y luego intenté escribirla nuevamente en la unidad USB original. Eso funcionó porque es la misma unidad, pero tan pronto como intenté escribirlo en las otras unidades USB, falló porque la imagen era demasiado grande para esas unidades. Aunque todos tienen 16 GB, en realidad siempre hay pequeñas diferencias.
Obviamente, esta no es la forma correcta de hacerlo, así que me pregunto cómo puedo "clonar" correctamente mi USB original para poder implementarlo en los demás.
(Tenga en cuenta que el sistema está configurado para soportar el hecho de que está instalado en una computadora nueva, por lo que eso no es un problema aquí, solo necesita obtener una copia exacta)
Actualizar
Según la respuesta de WesleyDavid, verifiqué la unidad con gparted y recordé que originalmente copié la imagen de un dispositivo de 8 GB usando WinDiskImager32, por lo que la partición ya es lo suficientemente pequeña.
El problema es que WindDiskImager copia todo el disco, no sólo las particiones.
Ahora la solución 'dd' soluciona eso copiando solo una partición, pero entonces, ¿cómo puedo obtener tanto el sistema de archivos ext2 como el de intercambio en el USB de destino?
Usar dd para copiar todo el dispositivo da como resultado los 16 GB completos nuevamente, lo que no siempre cabe en los otros dispositivos
Actualización 2
Al usar dd como lo sugiere WesleyDavid Works,
solo tenía que usar el parámetro de conteo de dd, como se describeaquí
Básicamente significa ejecutar "fdisk -u -l /dev/sdb" (reemplace sdb con su dispositivo)
> 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
En mi caso, el final de la última partición está en '15818751', así que utilicé:
dd if=/dev/sdb of=/home/myusername/usbimage.img count=15818752
agregando uno más solo para estar seguro. Eso me dio una imagen que puedo instalar.
Respuesta1
La opción más fácil, probada y verdadera: use gparted para hacer que sus particiones de origen sean de 15 GB solo para estar seguro. Luego clone en las otras unidades USB.
En esencia, esto no es un problema de clonación, es un problema de tamaño de partición. Una vez que el tamaño de la partición/disco esté por debajo del tamaño máximo en una medida cómoda, simplemente dd if=source of=destination
(asumiendo Windows) y siga adelante con su mal yo.