Клонирование Linux, установленного на USB-накопителе, на другой USB-накопитель той же марки/типа

Клонирование Linux, установленного на USB-накопителе, на другой USB-накопитель той же марки/типа

У меня полностью настроенная система Linux, установленная на USB-накопителе объемом 16 ГБ. У меня 10 раз была одна и та же марка/тип USB-накопителя и 10 раз была одна и та же материнская плата.

Теперь я хочу скопировать USB-накопитель на другие устройства, чтобы 10 систем могли использовать один и тот же образ.

Я создал образ USB-накопителя с помощью WinDiskImager32, а затем попытался записать его обратно на исходный USB-накопитель. Это сработало, потому что это тот же самый диск, но как только я попытался записать его на другие USB-накопители, это не удалось, потому что образ был слишком большим для этих дисков. Несмотря на то, что все они по 16 ГБ, в реальности, конечно, всегда есть небольшие различия.

Очевидно, что это неправильный способ, поэтому мне интересно, как мне правильно «клонировать» мой оригинальный USB-накопитель, чтобы я мог использовать его на других?

(Обратите внимание, что система настроена на работу с тем фактом, что она установлена ​​на новом компьютере, так что в данном случае это не проблема, просто нужно получить точную копию)

Обновлять

Основываясь на ответе WesleyDavid, я проверил диск с помощью gparted и вспомнил, что изначально я скопировал образ с устройства объемом 8 ГБ с помощью WinDiskImager32, поэтому раздел уже достаточно мал.

gparted

Проблема в том, что WindDiskImager копирует весь диск, а не только разделы.

Решение «dd» исправляет эту проблему, просто копируя раздел, но как мне получить и ext2, и файловую систему подкачки на целевом USB-накопителе?

Использование dd для копирования всего устройства снова приводит к получению полных 16 ГБ, которые не всегда помещаются на других устройствах.

Обновление 2

Использование dd, как предложил WesleyDavid, работает,
просто нужно было использовать параметр count 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, чтобы сделать исходные разделы размером 15 ГБ, просто чтобы быть уверенным. Затем клонируйте на другие USB-накопители.

По сути, это не проблема клонирования, это проблема размера раздела. Как только размер раздела/диска станет меньше максимального размера на комфортную величину, просто dd if=source of=destination(предполагая Windows) и продолжайте жить со своим плохим «я».

Связанный контент