Mam w pełni skonfigurowany system Linux zainstalowany na dysku USB 16 GB. Mam dysk USB tej samej marki / typu 10 razy i dokładnie tę samą płytę główną 10 razy.
Teraz chcę skopiować dysk USB na inne, aby 10 systemów mogło korzystać z tego samego obrazu.
Stworzyłem obraz dysku USB za pomocą WinDiskImager32, a następnie próbowałem zapisać go z powrotem na oryginalnym dysku USB. To działało, ponieważ jest to ten sam dysk, ale gdy tylko spróbowałem zapisać go na innych dyskach USB, nie udało się, ponieważ obraz był zbyt duży dla tych dysków. Mimo że wszystkie mają 16 GB, w rzeczywistości zawsze istnieją niewielkie różnice.
Oczywiście nie jest to właściwy sposób, więc zastanawiam się, jak poprawnie „sklonować” mój oryginalny USB, aby móc go zainstalować na innych urządzeniach?
(Uwaga: system jest skonfigurowany do radzenia sobie z faktem, że jest zainstalowany na nowym komputerze, więc nie jest to problemem, wystarczy uzyskać dokładną kopię)
Aktualizacja
Na podstawie odpowiedzi WesleyDavid sprawdzam dysk za pomocą gparted i przypomniałem sobie, że pierwotnie skopiowałem obraz z urządzenia 8 GB za pomocą WinDiskImager32, więc partycja jest już wystarczająco mała.
Problem polega na tym, że WindDiskImager kopiuje cały dysk, a nie tylko partycje.
Teraz rozwiązanie „dd” naprawia to, kopiując tylko partycję, ale w jaki sposób mogę uzyskać system plików ext2 i wymiany na docelowym usb?
Użycie dd do skopiowania całego urządzenia powoduje ponownie pełne 16 GB, co nie zawsze pasuje do innych urządzeń
Aktualizacja 2
Używając dd zgodnie z sugestiami WesleyDavid,
wystarczyło użyć parametru count dd, jak opisano tutaj
Zasadniczo oznacza to uruchomienie „fdisk -u -l / dev / sdb” (zamień sdb na swoje urządzenie)
> 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
W moim przypadku koniec ostatniej partycji to „15818751”, więc użyłem:
dd if=/dev/sdb of=/home/myusername/usbimage.img count=15818752
dodając jeszcze jeden, aby być bezpiecznym. To dało mi obraz, który mogę zainstalować.
dd if=/dev/sda of=/dev/sdb
I to dostaje każdą partycję, a nawet MBR. Wszystko od dziobu do rufy.
dd
może skopiować całe urządzenie, a nie tylko partycję.