У меня есть внутренний диск емкостью 1 ТБ с двумя разделами по 1/2 ТБ, один для Windows, а другой для Ubuntu 14.04 LTS. Станция стала в основном станцией Linux, и я больше никогда не загружаюсь в Windows.
Я хотел создать резервную копию образа, поэтому я использовал DD для клонирования внутреннего диска на внешний USB-накопитель емкостью 1 ТБ. К сожалению, кажется, что USB-накопитель находится всего в нескольких гигабайтах от внутреннего накопителя, а DD заканчивается сообщением об ошибке «Недостаточно места на диске». Теперь я вижу что-то странное. Когда я извлек USB-накопитель и снова подключил его, я вижу два раздела по 1/2 ГБ, которые кажутся дублирующимися. У них одинаковые идентификаторы GUID, а Nautilus показывает одинаковую структуру каталогов и контент. Я предполагаю, что что-то из-за неполной копии одного из разделов оставило внешний диск в неисправном состоянии.
Как использовать DD для , просто клонировать раздел Linux на внешний диск? Это все, чего я действительно хочу.
В то время как Вы спрашиваете о dd
, Позвольте мне рекомендовать partclone
? Это сделано клонировать и восстановить раздел. Это должно знать о базовой файловой системе, преимущество dd
это, это копирует только используемые блоки и экономит много времени или пространства, так как редко, чтобы неиспользованная часть раздела была сжимаема (старый мусор данных вместо обнуляет).
sudo partclone.ext4 -c -b -s /dev/sdaX -o /dev/sdbY
сделает то, что Вы хотите. -c
обозначает клон, -b
для от устройства к устройству, -s
источник, -o
цель. Кроме того, так как Вы сделали клон, UUID источника и цели идентичны. Проверьте это с blkid
, использовать uuidgen
генерировать новый UUID и затем sudo tune2fs /dev/sdbY -U <uuidgen-generated new UUID>
изменить его.
Наличие двух идентичных UUID на той же машине могло даже быть первопричиной проблем, которые Вы имели с 'поврежденным' состоянием внешнего устройства.
Прежде чем Вы сделаете это, целевое устройство должно быть настроено с fdisk
так, чтобы новый раздел не был меньшим, чем старый раздел. Если это больше, можно вырастить клонированный раздел впоследствии с gparted
к новому максимальному размеру.
Более легкий путь:
sudo fdisk -l
, как сказано Videonath. Найдите раздел, который Вы хотите клонировать dd bs=512 if=/dev/<partition-name> of=/<external-media-path>
, например, dd bs=512 if=/dev/sda2 of=/dev/sdb1
Примечание:
Поскольку сначала необходимо узнать данные о жестком диске, можно сделать это путем ввода в терминале:
sudo fdisk -l
необходимо получить вывод как это:
Disk /dev/sda: 149,1 GiB, 160041885696 bytes, 312581808 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
Disklabel type: dos
Disk identifier: 0x06bd4abe
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 230055935 230053888 109,7G 83 Linux
/dev/sda2 292970494 312580095 19609602 9,4G 5 Extended
/dev/sda3 230055936 292968447 62912512 30G 83 Linux
/dev/sda5 292970496 312580095 19609600 9,4G 82 Linux swap / Solaris
Partition table entries are not in disk order.
Так позволяет, говорят, что/dev/sda3 является диском, который Вы хотите клонировать, затем можно сделать:
dd bs=512 if=/dev/sda of=/dev/sdb1/partition.ddfile seek=230055936 count=$(expr 292968447 - 230055936)
Напоминают, что это вот - только примеры, необходимо было бы соответствовать этому к ситуации.