Clonezilla копирование с диска на диск меньшего размера

Обновлено: 07.07.2024

Как клонировать жесткий диск на диск меньшего размера.

  1. Clonezilla великолепна, но не поддерживает такую ​​функциональность.
  2. Также dd и PartImage не поддерживают это требование.
  3. rsync не будет копировать MBR, поскольку MBR не является файлом.

Мне нужно клонировать жесткий диск, чтобы не делать резервную копию, поэтому rsync не является приемлемым ответом.

Вы явно не можете клонировать больший раздел в меньший (используя dd и тому подобное) так как места просто не хватает.

Однако, если файлы, находящиеся в более крупном разделе, также поместятся в меньшем разделе, вы можете использовать rsync скопировать эти файлы. Точные параметры зависят от вашего конкретного случая использования, но для простого копирования всех файлов необходимо выполнить следующее:

Изменить: еще раз: вы не можете клонировать больший раздел на меньший раздел. (Но продолжайте читать, ваша проблема может быть решена.)

Причина проста: ваш исходный раздел больше, чем целевой раздел. Что вы ожидаете? Должны ли некоторые блоки просто быть отброшены? Какие? И как следует dd знаете? Конечно, вы могли бы использовать dd "s bs= а также count= варианты только для того, чтобы скопировать только первые и столько-то блоки исходного раздела, чтобы он поместился в целевой раздел, но у вас получится сломанный раздел. Это, конечно, не то, что вы хотите.

Таким образом, поскольку вы не можете клонировать больший раздел в меньший раздел, единственное, что вы можете сделать, - это сначала уменьшить размер исходного раздела до размера, меньшего или равного размеру целевого раздела, с чем-то вроде gparted который знает о специфике файловой системы, так что вы не потеряете данные. И только тогда вы могли бы использовать dd клонировать раздел. В идеале новый размер исходного раздела должен быть равен размеру вашего целевого раздела (а не только меньшего или равного), иначе у вас останется некоторое нераспределенное пространство на целевом разделе после клонирования.

Также обратите внимание, что вы не должны просто копировать MBR большего диска в MBR меньшего диска (или наоборот, в этом отношении). MBR, который имеет размер 512 байт и является первым разделом вашего жесткого диска, содержит информацию о расположении жесткого диска:

  • 446 байт - Bootstrap.
  • 64 байта - таблица разделов.
  • 2 байта - подпись.

(Обратите внимание, что 446+64+2=512 .)

Если вы настаиваете на клонировании MBR, то клонируйте только первые 446 байтов следующим образом:

. замена /dev/source а также /dev/target с именами устройств исходного и целевого жестких дисков, например, /dev/sda а также /dev/sdb соответственно. ( Более подробная информация доступна здесь.)

Тем не менее, правильный способ сделать это будет сделать чистую переустановку Grub (или все, что у вас есть на MBR) на новом жестком диске.

Подводя итог, если вы хотите клонировать больший диск на меньший диск, выполните следующие действия:

Разместите таблицу разделов на целевом диске с таким количеством разделов, как на исходном диске. Должно быть однозначное соответствие между разделами на исходном диске и разделами на целевом диске, за исключением того, что (некоторые из) разделов на целевом диске могут быть меньше, чем их соответствующие разделы на исходном диске. Используйте инструмент, такой как fdisk или же cfdisk для этого.

Для каждого раздела на целевом диске, который меньше соответствующего раздела на исходном диске, уменьшите размер этого соответствующего раздела на исходном диске, чтобы он соответствовал размеру раздела на целевом диске. Используйте инструмент, такой как gparted для этого.

Для каждого раздела на исходном диске введите команду

. клонировать раздел /dev/sdaX с исходного диска на соответствующий раздел /dev/sdbY на целевом диске (замените имена устройств соответственно, конечно.)

Как клонировать жесткий диск на диск меньшего размера.

  1. Clonezilla великолепна, но не поддерживает такую ​​функциональность.
  2. Также dd и PartImage не поддерживают это требование.
  3. rsync не будет копировать MBR, поскольку MBR не является файлом.

Мне нужно клонировать жесткий диск, чтобы не делать резервную копию, поэтому rsync не является приемлемым ответом.

Вы явно не можете клонировать больший раздел в меньший раздел (используя dd и т. П.), Так как просто не хватает места.

Однако, если файлы, находящиеся в более крупном разделе, также поместятся в меньший раздел, вы можете использовать rsync для копирования этих файлов. Точные варианты использования зависят от вашего конкретного варианта использования, но для простого копирования всех файлов следует выполнить следующее:

Редактировать: Еще раз: Вы не можете клонировать большее разделение на меньшее разделение . (Но продолжайте читать, ваша проблема еще может быть решена.)

Причина проста: ваш исходный раздел больше, чем целевой раздел. Что вы ожидаете? Должны ли некоторые блоки просто быть отброшены? Какие? И как dd должен знать? Конечно, вы можете использовать опции dd bs= и count= , чтобы копировать только первые и очень многие блоки исходного раздела так, чтобы они помещались в целевой раздел, но в итоге вы получите со сломанной перегородкой. Это, конечно, не то, что вы хотите.

Итак, поскольку вы не можете клонировать больший раздел на меньший раздел, единственное, что вы можете сделать, это сначала сначала уменьшить размер исходного раздела до размера, меньшего или меньшего размера. равен целевому разделу с чем-то вроде gparted , который знает особенности файловой системы, так что вы не потеряете данные. И только , затем , вы можете использовать dd для клонирования раздела. В идеале новый размер исходного раздела должен быть равен размеру целевого раздела (а не только меньше или равен ), иначе у вас останется некоторое нераспределенное пространство на целевой раздел после клонирования.

Обратите также внимание, что вы не должны , а просто скопировать MBR большего диска в MBR меньшего диска (или наоборот, в этом отношении). MBR, который имеет размер 512 байт и является первым разделом вашего жесткого диска, содержит информацию о расположении жесткого диска:

  • 446 байт - Bootstrap.
  • 64 байта - таблица разделов.
  • 2 байта - Подпись.

(Обратите внимание, что 446+64+2=512 .)

Если вы настаиваете на клонировании MBR, то клонируйте только первые 446 байтов, например:

. заменив /dev/source и /dev/target на имена устройств исходного и целевого жестких дисков, например, /dev/sda и /dev/sdb , соответственно. ( Более подробная информация доступна здесь. )

Однако, правильный способ сделать это - выполнить чистую переустановку Grub (или то, что у вас есть в MBR) на новом жестком диске.

Подводя итог, если вы хотите клонировать больший диск на меньший диск, выполните следующее:

Разложите таблицу разделов на целевом диске с таким количеством разделов, как на исходный диск. Должно быть однозначное соответствие между разделами на исходном диске и разделами на целевом диске, за исключением того, что (некоторые из) разделов на целевом диске могут быть меньше, чем их соответствующие разделы на исходном диске. Для этого используйте инструмент, например fdisk или cfdisk .

Для каждого раздела на целевом диске, который меньше соответствующего раздела на исходном диске, уменьшите размер этого соответствующего раздела на исходном диске, чтобы он соответствовал размеру раздела на целевой диск. Для этого используйте инструмент, такой как gparted .

Для каждого раздела на исходном диске введите команду

. чтобы клонировать раздел /dev/sdaX с исходного диска на соответствующий раздел. /dev/sdbY на целевом диске (конечно, замените имена устройств соответственно).

У меня есть изображение, которое было сделано с Clonezilla в качестве SAVEDISK на жестком диске 160 ГБ.
Теперь выпущена более новая версия ПК с жестким диском на 120 ГБ, используемое пространство составляет всего 20 ГБ

Можно ли заставить Clonezilla (или любую другую программу) манипулировать «исходным размером» изображений до 120 ГБ или меньше, чтобы Clonezilla могла записать его на новый ПК?

Я не знаю, как работает clonezilla, но если есть только 20 ГБ данных, с какой именно проблемой вы столкнетесь? Поскольку образ был взят с диска объемом 160 ГБ, он включает таблицу разделов размером 160 ГБ, что не позволяет переопределить его. Нет ли способа «открыть» изображение и скопировать данные? У меня есть различные файлы .aa .ab .ac (от sda1.ntfs-ptcl-img.gz.aa до sda1.ntfs-ptcl-img.gz.ae), и мне кажется, что это образ жесткого диска. это в один файл .img.gz, но тогда мне нужен способ записать его обратно.

Clonezilla использует Partclone для сохранения и восстановления файловых систем. Хотя это полезно, даже если вы используете эту -icds опцию, одного этого недостаточно. При восстановлении исходной файловой системы на меньшем диске Partclone столкнется с ошибкой поиска при попытке записи за пределы диска. Так что это ограничение не только Clonezilla, но и основных инструментов, которые он использует.

Однако вы можете временно восстановить образ на диске объемом 160 ГБ, использовать инструмент изменения размера файловой системы, например ntfsresize (для NTFS) или resize2fs (для ext3 / 4), чтобы уменьшить файловую систему, скажем, до 25 ГБ. Изменение размера таблицы разделов, что делает GParted, необязательно. Используйте Clonezilla снова, чтобы создать новое изображение, используя опцию «сохраненный риск».

При восстановлении образа на меньшем диске, используйте -icds опцию, чтобы пропустить проверку Clonezilla, является ли диск такой же или больше, чем исходный диск. Поскольку вы сократили файловую систему, Partclone не столкнется с ошибкой поиска, и ваши данные будут восстановлены на вашем меньшем диске.

Если вы использовали опцию пропорционального восстановления таблицы разделов ( -k1 ), Clonezilla создаст правильную таблицу разделов и изменит размер (развернет) исходной файловой системы, чтобы все свободное место на новом диске стало доступно.

РЕДАКТИРОВАТЬ: -icds опция не передается ocs-expand-mbr-pt , поэтому этот шаг в настоящее время не выполняется. Об этом сообщается в проекте об ошибке . Ошибка была исправлена.


Expert Mode режим в Clonezilla.



3. Следующие параметры связаны с настройкой поведения таблицы разделов:


Здесь:
«» – использовать таблицу разделов диска-источника (образа);
-k – не создавать таблицу разделов в загрузочном секторе целевого диска;
-k1 – создавать пропорциональную таблицу разделов на целевом диске (подходит для MBR-формата, не для GPT);
-k2 – войти в режим командной строки, с тем, чтобы вручную создать раздел позже;
exit – выход (возврат в предыдущее меню).

Clonezilla не умеет клонировать большой образ на маленький целевой диск (то есть, когда образ больше по объему, чем жесткий диск, на который он клонируется). Но она умеет делать обратное – клонировать маленький образ на большой целевой диск. Для этого можно использовать (установить) опцию -k1 (создание пропорциональной таблицы раздела на целевом диске) плюс опцию -r для автоматического изменения (resize) файловой системы на этом же диске. В этом случае будет задействован весь объем целевого диска.

В принципе, интерфейс и без Русского был понятен и прост - но всё равно приятно и полезно для расширения круга Пользователей.

По поводу отсутствия возможности в Clonezilla напрямую клонировать Диск большего размера на Диск меньшего размера - недостатком это не считаю, поскольку сталкивался с тем, что другие программы с такой опцией всё равно делали это некорректно.
Поэтому всегда в таких случаях делаю так: сначала уменьшаю размер исходного (клонируемого) Диска Менеджером разделов, а затем уже клонирую.

Читайте также: