Не удается скопировать содержимое виртуального жесткого диска на физический диск

У меня есть изображение vmware ubuntu на моей машине, которое я хочу перезаписать мой текущий раздел.

Когда я запустил:

sudo qemu-img convert my-image.vmdk -O raw /dev/sda1

В итоге я получил ошибку ниже: ! d2] qemu-img: / dev / sda1: ошибка при преобразовании raw: на устройстве нет места

В любом случае я могу перезаписать существующий раздел HD без ошибки выше?

2
задан 29 June 2011 в 03:45

8 ответов

Файл VMDK в основном представляет собой изображение жесткого диска, завернутого в формат, который виртуальные решения VMWare & amp; теперь VirtualBox может распознать.

Виртуальные жесткие диски VMWare ESX с форматом имени «somefilename-flat.vmdk» представляют собой в основном прямое байтовое представление обычного жесткого диска. Поскольку такое решение 2 ниже можно было использовать для чтения и монтирования такого диска.

Однако для файлов VMDK я думаю, что вы были на правильном пути мышления, используя qemu, но я считаю, что вам нужно идти на один этап как показано в решении 1. Решение

1

Создайте версию вашего vmdk с необработанным изображением и отобразите разделы в vmdk, используя kpartx

qemu-img convert -O raw somefilename.vmdk rawimagefilename.raw
sudo apt-get install kpartx
sudo kpartx -av rawimagefilename.raw

Это создаст сопоставления циклов (/ dev / mapper / loopXpY) для каждого раздела в vmdk, например

loop0p1 : 0 15952482 /dev/loop0 63
loop0p2 : 0 819315 /dev/loop0 15952545
loop0p5 : 0 819252 loop0p1 63

Затем создайте папку в / media, где мы подключим один из разделов, представленных отображением цикла

sudo mkdir /media/partitionimage

Установите раздел, который необходимо восстановить в / dev / sda1

sudo mount /dev/mapper/loop0p2 /media/partitionimage -o loop,ro

Теперь вы можете просматривать раздел / медиа / ! d8]

Резервное копирование раздела цикла с помощью tar:

cd /media/partitionimage
sudo tar cvpzf /home/somewhere/backup.tgz

Вы действительно должны загрузиться с живого компакт-диска, чтобы убедиться, что / dev / sda1 не используется.

Вы восстановит резервную копию с помощью чего-то вроде

sudo mount /dev/sda1 /media/backup
sudo tar xvpfz /home/somewhere/backup.tgz -C /media/backup/

решение 2

S ince xxx-flat.vmdk на самом деле просто скрывает жесткий диск, вы можете монтировать и проверять содержимое следующим образом:

sudo losetup /dev/loop0 <full path to the xxx-flat.vmdk file>
sudo losetup -o 32256 /dev/loop1 /dev/loop0
sudo mkdir /media/diskimage
sudo mount /dev/loop1 /media/diskimage
fdisk -l /dev/loop0

где 32256 - это смещение, рассчитанное путем умножения размера сектора (чаще всего 63 [см. здесь более подробную информацию]) с размером сектора VMDK (предполагается, что он равен 512 байтам)

Если fdisk завершается успешно, вы можете продолжить. Вы должны иметь возможность просматривать ваш файл vmdk с помощью Nautilus и просматривать его в /media/diskimage.

копировать содержимое vmdk на жесткий диск

Сначала загрузиться с живого диска

затем скопируйте содержимое VMDK прямо в ваш раздел

sudo dd if=<path to vmdk file> of=/dev/sda1 bs=512 skip=63

, где bs - количество байтов на сектор (найдено на первом шаге), а пропустить - количество секторы (используемые на первом этапе)

здесь

2
ответ дан 25 May 2018 в 20:07
  • 1
    когда я запускаю mount /dev/loop1 /mnt/diskimage, я получаю ошибку mount: you must specify the filesystem type – Bitmap 27 June 2011 в 02:03
  • 2
    I и сделал ls -l /dev/loop0, и это был результат, который я получил brw-rw---- 1 root disk 7, 1 2011-06-26 22:02 /dev/loop0 – Bitmap 27 June 2011 в 02:11
  • 3
    Вы звезда - это бесценно. – Bitmap 30 June 2011 в 03:13
  • 4
    @Bitmap, как вы решили «mount: вы должны указать тип файловой системы», ошибка? – realgt 1 May 2012 в 21:05
  • 5
    Знаете ли вы, что я должен был документировать решение шаг за шагом. В конце концов, я использовал кронезилла для установки изображения на свой диск. У меня был еще один запасной диск, поэтому я использовал этот диск в качестве ведомого для хранения изображения, так как размер был тихим, он стирал основной / главный диск, а затем - используя cronezilla, установил изображение на основной диск. Я работал как шарм. – Bitmap 2 May 2012 в 14:26

Файл VMDK в основном представляет собой изображение жесткого диска, завернутого в формат, который виртуальные решения VMWare & amp; теперь VirtualBox может распознать.

Виртуальные жесткие диски VMWare ESX с форматом имени «somefilename-flat.vmdk» представляют собой в основном прямое байтовое представление обычного жесткого диска. Поскольку такое решение 2 ниже можно было использовать для чтения и монтирования такого диска.

Однако для файлов VMDK я думаю, что вы были на правильном пути мышления, используя qemu, но я считаю, что вам нужно идти на один этап как показано в решении 1. Решение

1

Создайте версию вашего vmdk с необработанным изображением и отобразите разделы в vmdk, используя kpartx

qemu-img convert -O raw somefilename.vmdk rawimagefilename.raw sudo apt-get install kpartx sudo kpartx -av rawimagefilename.raw

Это создаст сопоставления циклов (/ dev / mapper / loopXpY) для каждого раздела в vmdk, например

loop0p1 : 0 15952482 /dev/loop0 63 loop0p2 : 0 819315 /dev/loop0 15952545 loop0p5 : 0 819252 loop0p1 63

Затем создайте папку в / media, где мы подключим один из разделов, представленных отображением цикла

sudo mkdir /media/partitionimage

Установите раздел, который необходимо восстановить в / dev / sda1

sudo mount /dev/mapper/loop0p2 /media/partitionimage -o loop,ro

Теперь вы можете просматривать раздел / медиа / ! d8]

Резервное копирование раздела цикла с помощью tar:

cd /media/partitionimage sudo tar cvpzf /home/somewhere/backup.tgz

Вы действительно должны загрузиться с живого компакт-диска, чтобы убедиться, что / dev / sda1 не используется.

Вы восстановит резервную копию с помощью чего-то вроде

sudo mount /dev/sda1 /media/backup sudo tar xvpfz /home/somewhere/backup.tgz -C /media/backup/

решение 2

S ince xxx-flat.vmdk на самом деле просто скрывает жесткий диск, вы можете монтировать и проверять содержимое следующим образом:

sudo losetup /dev/loop0 <full path to the xxx-flat.vmdk file> sudo losetup -o 32256 /dev/loop1 /dev/loop0 sudo mkdir /media/diskimage sudo mount /dev/loop1 /media/diskimage fdisk -l /dev/loop0

где 32256 - это смещение, рассчитанное путем умножения размера сектора (чаще всего 63 [см. здесь более подробную информацию]) с размером сектора VMDK (предполагается, что он равен 512 байтам)

Если fdisk завершается успешно, вы можете продолжить. Вы должны иметь возможность просматривать ваш файл vmdk с помощью Nautilus и просматривать его в /media/diskimage.

копировать содержимое vmdk на жесткий диск

Сначала загрузиться с живого диска

затем скопируйте содержимое VMDK прямо в ваш раздел

sudo dd if=<path to vmdk file> of=/dev/sda1 bs=512 skip=63

, где bs - количество байтов на сектор (найдено на первом шаге), а пропустить - количество секторы (используемые на первом этапе)

здесь

2
ответ дан 25 July 2018 в 21:40

Файл VMDK в основном представляет собой изображение жесткого диска, завернутого в формат, который виртуальные решения VMWare & amp; теперь VirtualBox может распознать.

Виртуальные жесткие диски VMWare ESX с форматом имени «somefilename-flat.vmdk» представляют собой в основном прямое байтовое представление обычного жесткого диска. Поскольку такое решение 2 ниже можно было использовать для чтения и монтирования такого диска.

Однако для файлов VMDK я думаю, что вы были на правильном пути мышления, используя qemu, но я считаю, что вам нужно идти на один этап как показано в решении 1. Решение

1

Создайте версию вашего vmdk с необработанным изображением и отобразите разделы в vmdk, используя kpartx

qemu-img convert -O raw somefilename.vmdk rawimagefilename.raw sudo apt-get install kpartx sudo kpartx -av rawimagefilename.raw

Это создаст сопоставления циклов (/ dev / mapper / loopXpY) для каждого раздела в vmdk, например

loop0p1 : 0 15952482 /dev/loop0 63 loop0p2 : 0 819315 /dev/loop0 15952545 loop0p5 : 0 819252 loop0p1 63

Затем создайте папку в / media, где мы подключим один из разделов, представленных отображением цикла

sudo mkdir /media/partitionimage

Установите раздел, который необходимо восстановить в / dev / sda1

sudo mount /dev/mapper/loop0p2 /media/partitionimage -o loop,ro

Теперь вы можете просматривать раздел / медиа / ! d8]

Резервное копирование раздела цикла с помощью tar:

cd /media/partitionimage sudo tar cvpzf /home/somewhere/backup.tgz

Вы действительно должны загрузиться с живого компакт-диска, чтобы убедиться, что / dev / sda1 не используется.

Вы восстановит резервную копию с помощью чего-то вроде

sudo mount /dev/sda1 /media/backup sudo tar xvpfz /home/somewhere/backup.tgz -C /media/backup/

решение 2

S ince xxx-flat.vmdk на самом деле просто скрывает жесткий диск, вы можете монтировать и проверять содержимое следующим образом:

sudo losetup /dev/loop0 <full path to the xxx-flat.vmdk file> sudo losetup -o 32256 /dev/loop1 /dev/loop0 sudo mkdir /media/diskimage sudo mount /dev/loop1 /media/diskimage fdisk -l /dev/loop0

где 32256 - это смещение, рассчитанное путем умножения размера сектора (чаще всего 63 [см. здесь более подробную информацию]) с размером сектора VMDK (предполагается, что он равен 512 байтам)

Если fdisk завершается успешно, вы можете продолжить. Вы должны иметь возможность просматривать ваш файл vmdk с помощью Nautilus и просматривать его в /media/diskimage.

копировать содержимое vmdk на жесткий диск

Сначала загрузиться с живого диска

затем скопируйте содержимое VMDK прямо в ваш раздел

sudo dd if=<path to vmdk file> of=/dev/sda1 bs=512 skip=63

, где bs - количество байтов на сектор (найдено на первом шаге), а пропустить - количество секторы (используемые на первом этапе)

здесь

2
ответ дан 2 August 2018 в 03:16

Файл VMDK в основном представляет собой изображение жесткого диска, завернутого в формат, который виртуальные решения VMWare & amp; теперь VirtualBox может распознать.

Виртуальные жесткие диски VMWare ESX с форматом имени «somefilename-flat.vmdk» представляют собой в основном прямое байтовое представление обычного жесткого диска. Поскольку такое решение 2 ниже можно было использовать для чтения и монтирования такого диска.

Однако для файлов VMDK я думаю, что вы были на правильном пути мышления, используя qemu, но я считаю, что вам нужно идти на один этап как показано в решении 1. Решение

1

Создайте версию вашего vmdk с необработанным изображением и отобразите разделы в vmdk, используя kpartx

qemu-img convert -O raw somefilename.vmdk rawimagefilename.raw sudo apt-get install kpartx sudo kpartx -av rawimagefilename.raw

Это создаст сопоставления циклов (/ dev / mapper / loopXpY) для каждого раздела в vmdk, например

loop0p1 : 0 15952482 /dev/loop0 63 loop0p2 : 0 819315 /dev/loop0 15952545 loop0p5 : 0 819252 loop0p1 63

Затем создайте папку в / media, где мы подключим один из разделов, представленных отображением цикла

sudo mkdir /media/partitionimage

Установите раздел, который необходимо восстановить в / dev / sda1

sudo mount /dev/mapper/loop0p2 /media/partitionimage -o loop,ro

Теперь вы можете просматривать раздел / медиа / ! d8]

Резервное копирование раздела цикла с помощью tar:

cd /media/partitionimage sudo tar cvpzf /home/somewhere/backup.tgz

Вы действительно должны загрузиться с живого компакт-диска, чтобы убедиться, что / dev / sda1 не используется.

Вы восстановит резервную копию с помощью чего-то вроде

sudo mount /dev/sda1 /media/backup sudo tar xvpfz /home/somewhere/backup.tgz -C /media/backup/

решение 2

S ince xxx-flat.vmdk на самом деле просто скрывает жесткий диск, вы можете монтировать и проверять содержимое следующим образом:

sudo losetup /dev/loop0 <full path to the xxx-flat.vmdk file> sudo losetup -o 32256 /dev/loop1 /dev/loop0 sudo mkdir /media/diskimage sudo mount /dev/loop1 /media/diskimage fdisk -l /dev/loop0

где 32256 - это смещение, рассчитанное путем умножения размера сектора (чаще всего 63 [см. здесь более подробную информацию]) с размером сектора VMDK (предполагается, что он равен 512 байтам)

Если fdisk завершается успешно, вы можете продолжить. Вы должны иметь возможность просматривать ваш файл vmdk с помощью Nautilus и просматривать его в /media/diskimage.

копировать содержимое vmdk на жесткий диск

Сначала загрузиться с живого диска

затем скопируйте содержимое VMDK прямо в ваш раздел

sudo dd if=<path to vmdk file> of=/dev/sda1 bs=512 skip=63

, где bs - количество байтов на сектор (найдено на первом шаге), а пропустить - количество секторы (используемые на первом этапе)

здесь

2
ответ дан 4 August 2018 в 19:11

Файл VMDK в основном представляет собой изображение жесткого диска, завернутого в формат, который виртуальные решения VMWare & amp; теперь VirtualBox может распознать.

Виртуальные жесткие диски VMWare ESX с форматом имени «somefilename-flat.vmdk» представляют собой в основном прямое байтовое представление обычного жесткого диска. Поскольку такое решение 2 ниже можно было использовать для чтения и монтирования такого диска.

Однако для файлов VMDK я думаю, что вы были на правильном пути мышления, используя qemu, но я считаю, что вам нужно идти на один этап как показано в решении 1. Решение

1

Создайте версию вашего vmdk с необработанным изображением и отобразите разделы в vmdk, используя kpartx

qemu-img convert -O raw somefilename.vmdk rawimagefilename.raw sudo apt-get install kpartx sudo kpartx -av rawimagefilename.raw

Это создаст сопоставления циклов (/ dev / mapper / loopXpY) для каждого раздела в vmdk, например

loop0p1 : 0 15952482 /dev/loop0 63 loop0p2 : 0 819315 /dev/loop0 15952545 loop0p5 : 0 819252 loop0p1 63

Затем создайте папку в / media, где мы подключим один из разделов, представленных отображением цикла

sudo mkdir /media/partitionimage

Установите раздел, который необходимо восстановить в / dev / sda1

sudo mount /dev/mapper/loop0p2 /media/partitionimage -o loop,ro

Теперь вы можете просматривать раздел / медиа / ! d8]

Резервное копирование раздела цикла с помощью tar:

cd /media/partitionimage sudo tar cvpzf /home/somewhere/backup.tgz

Вы действительно должны загрузиться с живого компакт-диска, чтобы убедиться, что / dev / sda1 не используется.

Вы восстановит резервную копию с помощью чего-то вроде

sudo mount /dev/sda1 /media/backup sudo tar xvpfz /home/somewhere/backup.tgz -C /media/backup/

решение 2

S ince xxx-flat.vmdk на самом деле просто скрывает жесткий диск, вы можете монтировать и проверять содержимое следующим образом:

sudo losetup /dev/loop0 <full path to the xxx-flat.vmdk file> sudo losetup -o 32256 /dev/loop1 /dev/loop0 sudo mkdir /media/diskimage sudo mount /dev/loop1 /media/diskimage fdisk -l /dev/loop0

где 32256 - это смещение, рассчитанное путем умножения размера сектора (чаще всего 63 [см. здесь более подробную информацию]) с размером сектора VMDK (предполагается, что он равен 512 байтам)

Если fdisk завершается успешно, вы можете продолжить. Вы должны иметь возможность просматривать ваш файл vmdk с помощью Nautilus и просматривать его в /media/diskimage.

копировать содержимое vmdk на жесткий диск

Сначала загрузиться с живого диска

затем скопируйте содержимое VMDK прямо в ваш раздел

sudo dd if=<path to vmdk file> of=/dev/sda1 bs=512 skip=63

, где bs - количество байтов на сектор (найдено на первом шаге), а пропустить - количество секторы (используемые на первом этапе)

здесь

2
ответ дан 6 August 2018 в 03:27

Файл VMDK в основном представляет собой изображение жесткого диска, завернутого в формат, который виртуальные решения VMWare & amp; теперь VirtualBox может распознать.

Виртуальные жесткие диски VMWare ESX с форматом имени «somefilename-flat.vmdk» в основном представляют собой прямое байтовое представление обычного жесткого диска. Поскольку такое решение 2, приведенное ниже, можно было использовать для чтения и монтирования такого диска.

Однако для файлов VMDK я думаю, что вы правильно поработали с использованием qemu, но я считаю, что вам нужно идти на один этап далее, как показано в решении 1.

solution 1

Создайте исходную версию вашего vmdk и отобразите разделы в vmdk, используя kpartx

   qemu-img convert -O raw somefilename.vmdk rawimagefilename.raw sudo apt-get install kpartx sudo kpartx -av rawimagefilename.raw  

Это приведет к отображению циклов (/ dev / mapper / loopXpY) на каждый раздел в vmdk, например

  loop0p1: 0 15952482 / dev / loop0 63 loop0p2: 0 819315 / dev / loop0 15952545 loop0p5: 0 819252 loop0p1 63  

Затем создайте папку в / media, где будет монтировать один из разделов, представленных отображением цикла, показанным

  sudo mkdir / media / partitionimage  

Mount раздел, который в конечном итоге должен быть восстановлен в / dev / sda1

  sudo mount / dev / mapper / loop0p2 / media / partitionimage -o loop, ro  

Теперь вы должны иметь возможность просматривать раздел / медиа / разделение с помощью nautilus [ ! d19]

Резервное копирование раздела цикла с помощью tar:

  cd / media / partitionimage sudo tar cvpzf /home/somewhere/backup.tgz  

Вы действительно должны загрузиться с живого компакт-диска, чтобы убедиться, что / dev / sda1 не используется.

Вы восстановили бы резервную копию с помощью чего-то вроде

  sudo mount / dev / sda1  / media / backup sudo tar xvpfz /home/somewhere/backup.tgz -C / media / backup /  

solution 2

Поскольку xxx-flat.vmdk действительно просто скрытый жесткий диск вы можете монтировать и проверять содержимое следующим образом:

  sudo losetup / dev / loop0 & lt; полный путь к файлу xxx-flat.vmdk & gt;  sudo losetup -o 32256 / dev / loop1 / dev / loop0 sudo mkdir / media / diskimage sudo mount / dev / loop1 / media / diskimage fdisk -l / dev / loop0  

где 32256 смещение, вычисленное путем умножения размера сектора (чаще всего 63 [см. здесь для более подробной информации]) с размером сектора VMDK (предполагается, что он равен 512 байтам)

Если fdisk успешно завершен, вы можете продолжить. Вы должны иметь возможность просматривать ваш файл vmdk с помощью Nautilus и просматривать его /media/diskimage.

копировать содержимое vmdk на жесткий диск

. Сначала загрузитесь с живого диска

затем скопируйте содержимое VMDK прямо в ваш раздел

  sudo dd if = & lt; путь к файлу vmdk & gt;  of = / dev / sda1 bs = 512 skip = 63  

где bs - количество байтов на сектор (найдено на первом шаге), а skip - количество секторов (используемых в первый шаг)

источник

2
ответ дан 7 August 2018 в 21:14

Файл VMDK в основном представляет собой изображение жесткого диска, завернутого в формат, который виртуальные решения VMWare & amp; теперь VirtualBox может распознать.

Виртуальные жесткие диски VMWare ESX с форматом имени «somefilename-flat.vmdk» в основном представляют собой прямое байтовое представление обычного жесткого диска. Поскольку такое решение 2, приведенное ниже, можно было использовать для чтения и монтирования такого диска.

Однако для файлов VMDK я думаю, что вы правильно поработали с использованием qemu, но я считаю, что вам нужно идти на один этап далее, как показано в решении 1.

solution 1

Создайте исходную версию вашего vmdk и отобразите разделы в vmdk, используя kpartx

   qemu-img convert -O raw somefilename.vmdk rawimagefilename.raw sudo apt-get install kpartx sudo kpartx -av rawimagefilename.raw  

Это приведет к отображению циклов (/ dev / mapper / loopXpY) на каждый раздел в vmdk, например

  loop0p1: 0 15952482 / dev / loop0 63 loop0p2: 0 819315 / dev / loop0 15952545 loop0p5: 0 819252 loop0p1 63  

Затем создайте папку в / media, где будет монтировать один из разделов, представленных отображением цикла, показанным

  sudo mkdir / media / partitionimage  

Mount раздел, который в конечном итоге должен быть восстановлен в / dev / sda1

  sudo mount / dev / mapper / loop0p2 / media / partitionimage -o loop, ro  

Теперь вы должны иметь возможность просматривать раздел / медиа / разделение с помощью nautilus [ ! d19]

Резервное копирование раздела цикла с помощью tar:

  cd / media / partitionimage sudo tar cvpzf /home/somewhere/backup.tgz  

Вы действительно должны загрузиться с живого компакт-диска, чтобы убедиться, что / dev / sda1 не используется.

Вы восстановили бы резервную копию с помощью чего-то вроде

  sudo mount / dev / sda1  / media / backup sudo tar xvpfz /home/somewhere/backup.tgz -C / media / backup /  

solution 2

Поскольку xxx-flat.vmdk действительно просто скрытый жесткий диск вы можете монтировать и проверять содержимое следующим образом:

  sudo losetup / dev / loop0 & lt; полный путь к файлу xxx-flat.vmdk & gt;  sudo losetup -o 32256 / dev / loop1 / dev / loop0 sudo mkdir / media / diskimage sudo mount / dev / loop1 / media / diskimage fdisk -l / dev / loop0  

где 32256 смещение, вычисленное путем умножения размера сектора (чаще всего 63 [см. здесь для более подробной информации]) с размером сектора VMDK (предполагается, что он равен 512 байтам)

Если fdisk успешно завершен, вы можете продолжить. Вы должны иметь возможность просматривать ваш файл vmdk с помощью Nautilus и просматривать его /media/diskimage.

копировать содержимое vmdk на жесткий диск

. Сначала загрузитесь с живого диска

затем скопируйте содержимое VMDK прямо в ваш раздел

  sudo dd if = & lt; путь к файлу vmdk & gt;  of = / dev / sda1 bs = 512 skip = 63  

где bs - количество байтов на сектор (найдено на первом шаге), а skip - количество секторов (используемых в первый шаг)

источник

2
ответ дан 10 August 2018 в 09:33

Файл VMDK в основном представляет собой изображение жесткого диска, завернутого в формат, который виртуальные решения VMWare & amp; теперь VirtualBox может распознать.

Виртуальные жесткие диски VMWare ESX с форматом имени «somefilename-flat.vmdk» в основном представляют собой прямое байтовое представление обычного жесткого диска. Поскольку такое решение 2, приведенное ниже, можно было использовать для чтения и монтирования такого диска.

Однако для файлов VMDK я думаю, что вы правильно поработали с использованием qemu, но я считаю, что вам нужно идти на один этап далее, как показано в решении 1.

solution 1

Создайте исходную версию вашего vmdk и отобразите разделы в vmdk, используя kpartx

   qemu-img convert -O raw somefilename.vmdk rawimagefilename.raw sudo apt-get install kpartx sudo kpartx -av rawimagefilename.raw  

Это приведет к отображению циклов (/ dev / mapper / loopXpY) на каждый раздел в vmdk, например

  loop0p1: 0 15952482 / dev / loop0 63 loop0p2: 0 819315 / dev / loop0 15952545 loop0p5: 0 819252 loop0p1 63  

Затем создайте папку в / media, где будет монтировать один из разделов, представленных отображением цикла, показанным

  sudo mkdir / media / partitionimage  

Mount раздел, который в конечном итоге должен быть восстановлен в / dev / sda1

  sudo mount / dev / mapper / loop0p2 / media / partitionimage -o loop, ro  

Теперь вы должны иметь возможность просматривать раздел / медиа / разделение с помощью nautilus [ ! d19]

Резервное копирование раздела цикла с помощью tar:

  cd / media / partitionimage sudo tar cvpzf /home/somewhere/backup.tgz  

Вы действительно должны загрузиться с живого компакт-диска, чтобы убедиться, что / dev / sda1 не используется.

Вы восстановили бы резервную копию с помощью чего-то вроде

  sudo mount / dev / sda1  / media / backup sudo tar xvpfz /home/somewhere/backup.tgz -C / media / backup /  

solution 2

Поскольку xxx-flat.vmdk действительно просто скрытый жесткий диск вы можете монтировать и проверять содержимое следующим образом:

  sudo losetup / dev / loop0 & lt; полный путь к файлу xxx-flat.vmdk & gt;  sudo losetup -o 32256 / dev / loop1 / dev / loop0 sudo mkdir / media / diskimage sudo mount / dev / loop1 / media / diskimage fdisk -l / dev / loop0  

где 32256 смещение, вычисленное путем умножения размера сектора (чаще всего 63 [см. здесь для более подробной информации]) с размером сектора VMDK (предполагается, что он равен 512 байтам)

Если fdisk успешно завершен, вы можете продолжить. Вы должны иметь возможность просматривать ваш файл vmdk с помощью Nautilus и просматривать его /media/diskimage.

копировать содержимое vmdk на жесткий диск

. Сначала загрузитесь с живого диска

затем скопируйте содержимое VMDK прямо в ваш раздел

  sudo dd if = & lt; путь к файлу vmdk & gt;  of = / dev / sda1 bs = 512 skip = 63  

где bs - количество байтов на сектор (найдено на первом шаге), а skip - количество секторов (используемых в первый шаг)

источник

2
ответ дан 13 August 2018 в 15:42
  • 1
    когда я запускаю mount / dev / loop1 / mnt / diskimage Я получаю ошибку mount: вы должны указать тип файловой системы – Bitmap 27 June 2011 в 02:03
  • 2
    I и сделал ls -l / dev / loop0 , и это был результат, который я получил brw-rw ---- 1 root disk 7, 1 2011-06-26 22:02 / dev / loop0 – Bitmap 27 June 2011 в 02:11
  • 3
    Вы звезда - это бесценно. – Bitmap 30 June 2011 в 03:13
  • 4
    @Bitmap, как вы решили «mount: вы должны указать тип файловой системы», ошибка? – realgt 1 May 2012 в 21:05
  • 5
    Знаете ли вы, что я должен был документировать решение шаг за шагом. В конце концов, я использовал кронезилла для установки изображения на свой диск. У меня был еще один запасной диск, поэтому я использовал этот диск в качестве ведомого для хранения изображения, так как размер был тихим, он стирал основной / главный диск, а затем - используя cronezilla, установил изображение на основной диск. Я работал как шарм. – Bitmap 2 May 2012 в 14:26

Другие вопросы по тегам:

Похожие вопросы: