Используя dd для копирования раздела в другой раздел, при использовании физического диска

Я не уверен, как лучше объяснить это в теме, поэтому «вопрос» может быть неправильным. Но здесь идет. У меня три жестких диска. Привод A – 320 ГБ, диск B – 80 ГБ, а диск C – 1 ТБ. Я скопировал данные с 80-гигабайтного накопителя на диск 1 ТБ и собираюсь изменить размер раздела (чтобы я мог скопировать данные с 320-гигабайтного накопителя в следующем).

Мой вопрос таков: если я загружаюсь в операционную систему на диске 1 ТБ, могу ли я использовать dd для копирования диска 320 ГБ на другой раздел на этом физическом диске? Я знаю, что мне не нужно копировать живой раздел (это означает, что я не смог скопировать данные с диска 320 ГБ, если я запускаю эту операционную систему).

Мое рассуждение таково: я попытался использовать Acronis TrueImage, Partition Manager и Image DOS / Linux (оба приложения), и для копирования данных понадобилось больше недели. Это означает, что в течение недели я не могу использовать компьютер, что неприемлемо (если только это не единственный вариант). Я надеюсь, что это сработает, поэтому я могу хотя бы использовать компьютер, пока я делаю копию.

Если мне нужно, я могу либо загрузиться на Live CD (не очень предпочтительный вариант), либо использовать «Drive B», но я бы хотел как можно скорее удалить этот диск.

Да, то, что вы хотите сделать, будет работать нормально, учитывая следующие два условия:

  1. В разделе, на котором вы работаете, нет (смонтированной) файловой системы.
  2. Раздел, в котором вы находитесь, находится, по крайней мере, того же размера, что и тот, с которым вы работаете (т.е. 320 ГБ).

Причина, по которой он будет работать, заключается в том, что разделы – это просто файлы в UNIX. Их содержимое имеет особое значение, если оно содержит смонтированную файловую систему.

Предполагая, что у вас есть макет, который выглядит так:

1 TB = sda, два раздела, sda1, с которых вы загрузились, и sda2, которые вы делаете

320 ГБ = sdb, один раздел, sdb1, из которого вы dd'ing

Ваша команда будет выглядеть так:

dd if=/dev/sdb1 of=/dev/sda2 bs=1M 

Параметр bs=1M предназначен для обеспечения того, чтобы dd копировал данные в больших кусках, а не выдавал запрос для каждого сектора.

В общем, это нормально для любого раздела, пока он не установлен. Если вам нужно смонтировать исходный раздел для чтения во время запуска dd, лучше было бы установить его только для чтения с параметром -o ro.

Если вы хотите сначала загрузиться в исходный раздел amd, используйте dd для его копирования, вы можете сделать mount -o ro, remount / сделать его прочитанным только после загрузки.

  • Как я могу клонировать жесткий диск непосредственно на изображение vdi
  • Как создать загрузочный USB из загрузочного ISO с командной строкой в ​​Linux?
  • Проверка жесткого диска с использованием инструментов dd и md5sum
  • Можно ли «мгновенно» создавать произвольные файлы?
  • Создание образа моего жесткого диска
  • Почему моя резервная копия dd MacBook OS X не загружается при восстановлении?
  • Что делает dd conv = sync, noerror do?
  • Как я могу восстановить разбитый жесткий диск?
  • Почему «dd conv = разреженный» не сэкономил место, как я ожидал?
  • Спасение hdd с плохими секторами: dd vs gddrescue
  • Почему «dd» не работает для создания загрузочного USB?
  • Давайте будем гением компьютера.