Я загружаю живой диск Ubuntu, и я хочу создать резервную копию своего всего SSD (sdb)
со всеми 3 разделами (sdb1, sdb2, sdb3)
к файлу изображения на внешнем жестком диске.
Это руководство предлагает эту команду:
dd if=/dev/sdX conv=sync,noerror bs=64K | gzip -c > /path/to/backup.img.gz
Я хочу использовать изображение, чтобы позже преобразовать его с qemu
кому: VHD
или VMDK
и загрузите систему Ubuntu на виртуальной машине, таким образом, я не уверен в .gz
сжатие там.
Каков формат .img
файл, который создает команда? Это .iso
?
Почему команда имеет conv
? Я не хочу преобразования, я хочу, чтобы необработанный клон отобразил.
Я также заметил dd
команда даже не имеет of=
часть.
Делает bs=128k
улучшите скорость, чем bs=64k
?
Таким образом от того, что я знаю, что думаю, корректная команда для моих потребностей:
dd if=/dev/sdb bs=64k of=/dev/sdd1/image.img
примечание: sdd1
единственный раздел моего внешнего жесткого диска.
blockquote>
- Я хочу использовать образ, чтобы позже преобразовать его с
qemu
вVHD
илиVMDK
и загрузить систему Ubuntu на виртуальной машине, поэтому я не уверен насчет [ 114] сжатие там.Если вы хотите использовать ее для виртуальной машины, вам не нужно, чтобы она сжималась. И вам, вероятно, тоже не нужен необработанный образ, а скорее преобразование p2v (физического в виртуальное). Для VirtualBox вы можете, например, сделать
cat /dev/sda | VBoxManage convertfromraw stdin OutPutFile.vdi NUMBEROFBYTES
, который создаст для вас действительное изображение vboximage.
blockquote>
- Каков формат файла
.img
, создаваемого командой? Это.iso
?Iso относится к файловой системе ISO9660. Если вы создадите образ всего жесткого диска, это будет образ жесткого диска, включая загрузочный сектор и таблицу разделов. Если вы создаете образ отдельного раздела, то формат будет по существу тем же форматом, что и этот раздел.
blockquote>
- Почему команда имеет
conv
? Я не хочу никакого преобразования, я хочу необработанный клон для изображения.
conv
указывает аргументы, которые могут выполнять некоторое преобразование. В этом случае он говоритdd
использовать синхронный ввод-вывод, а не прерывать при ошибках. Введитеman dd
и/sync
Enter kbd> для поиска синхронизации на странице руководстваblockquote>
- Я также заметил, что команда
dd
даже не имеетof=
часть.
dd
выводит на стандартный вывод, если не перенаправлен. В этом случае стандартный вывод передается по каналуgzip
, который сжимает файл и записывает в/path/to/backup.img.gz
.blockquote>
- Улучшает ли
bs=128k
скорость по сравнению сbs=64k
?Вероятно. Окончательным ответом было бы проверить его, например, с помощью
time dd if=/dev/sda of=/dev/zero bs=64k count=10000
, и повторить с различными размерами.
Страница справочника dd
не неопределенно. Вы просто не понимаете все понятия.
Вы не должны использовать опции преобразования для своей цели. Просто пропустите их.
Вам не нужно сжатие для Вашей цели. Необходимо было бы просто извлечь право изображения впоследствии так или иначе.
Первая команда не имеет of
аргумент, потому что данные передаются по каналу к другой команде. Так dd
генерирует некоторые данные, которые затем протолкнуты к gzip
который выполняет сжатие и затем пишет результат в указанное местоположение. Узнать больше о каналах, просто Google "каналы Linux". Они действительно полезны. Однако Вам не нужен никто для Вашей цели.
Нет никакого определенного формата к выводу dd
. dd
просто данные копий. Это берет то, что это находит в его входном местоположении и копирует его в свое выходное местоположение. Как правило, расширение файла ".img" используется. Однако, потому что, что dd
копии могут быть, что-либо, с помощью чего-то более определенного как ".iso" полезно в некоторых ситуациях.
Размер блока (который указан через bs
) может даже быть намного больше на современных компьютерах. Если Вы находитесь на каком-либо компьютере, это было сделано в последнем в течение многих лет, пойдите прямо для bs=4M
или что-то вроде этого. Если это находится приблизительно в правильном диапазоне, играющий с ним не изменяется очень.
Для резервного копирования диска можно использовать эту команду:
sudo dd if=/dev/sda bs=4M of=/path/to/your/storage/location/filename.img
Обратите внимание необходимость в полномочиях пользователя root читать непосредственно из файла устройств жесткого диска.
Но удостоверьтесь Ваш of
не запускается с /dev
если Вы не знаете точно, что Вы делаете! Выполнение так может стереть весь диск! Это не должно приводить к местоположению устройства, Вы хотите, чтобы изображение шло, но туда, где это смонтировано. Эти пути обычно запускаются с /media
или /mnt
.