Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2014-07-28

Import VirtualBox machine

Давеча я наступил на глупые грабли при воссоздании старой виртуальной машины VirtualBox.

Несколько лет назад я сохранил одну хорошую виртуалку, выгрузив ее в файл экспорта, и вот теперь, когда она понадобилась, я не смог ее импортировать обратно (отсюда первый вывод: не пренебрегайте проверкой резервных копий). Сообщение об ошибке гласило:


Не знаю, как у других, а в моем случае проблема гнездилась в старой ошибке системы экспорта виртмашин с несколькими дисками (отсюда второй вывод: не делайте виртмашин с несколькими дисками).
В файле метаданных вместо второго диска был упомянут первый.

В файле machinename.ovf я обнаружил дубль:
      <StorageControllers>
        <StorageController name="IDE Controller" type="PIIX3" PortCount="2" useHostIOCache="true">
          <AttachedDevice type="HardDisk" port="0" device="0">
            <Image uuid="{c8c7052e-926c-4419-93ac-46756167604f}"/>
          </AttachedDevice>
          <AttachedDevice type="HardDisk" port="0" device="1">
            <Image uuid="{c8c7052e-926c-4419-93ac-46756167604f}"/>
          </AttachedDevice>
          <AttachedDevice passthrough="false" type="DVD" port="1" device="0"/>
        </StorageController>
        <StorageController name="Floppy Controller" type="I82078" PortCount="1" useHostIOCache="true">
          <AttachedDevice type="Floppy" port="0" device="0"/>
        </StorageController>
      </StorageControllers>
Очевидно, сообразил я, это неправильно. Недолгий поиск uuid-ов в этом файле
  <DiskSection>
    <Info>List of the virtual disks used in the package</Info>
    <Disk ovf:capacity="10737418240" ovf:diskId="vmdisk1" ovf:fileRef="file1" ovf:format="http://www.vmware.com/interfaces/specifications/vmdk.html#streamOptimized" vbox:uuid="2d8c0bbc-ed2a-424a-9cfa-e8e922eb42ac"/>
    <Disk ovf:capacity="107374182400" ovf:diskId="vmdisk2" ovf:fileRef="file2" ovf:format="http://www.vmware.com/interfaces/specifications/vmdk.html#streamOptimized" vbox:uuid="c8c7052e-926c-4419-93ac-46756167604f"/>
  </DiskSection>
и я смог сделать такой вариант:
      <StorageControllers>
        <StorageController name="IDE Controller" type="PIIX3" PortCount="2" useHostIOCache="true">
          <AttachedDevice type="HardDisk" port="0" device="0">
            <Image uuid="{c8c7052e-926c-4419-93ac-46756167604f}"/>
          </AttachedDevice>
          <AttachedDevice type="HardDisk" port="0" device="1">
            <Image uuid="{2d8c0bbc-ed2a-424a-9cfa-e8e922eb42ac}"/>
          </AttachedDevice>
          <AttachedDevice passthrough="false" type="DVD" port="1" device="0"/>
        </StorageController>
        <StorageController name="Floppy Controller" type="I82078" PortCount="1" useHostIOCache="true">
          <AttachedDevice type="Floppy" port="0" device="0"/>
        </StorageController>
      </StorageControllers>
В общем, это и есть решение проблемы. Осталось упомянуть, что после правки файла OVF, надо в контрольном файле machinename.mf заменить строку, содержащую SHA1 дайджест файла OVF, иначе импорт будет ругаться.


Если после импорта окажется, что диски перепутаны местами, их легко переставить, используя GUI управлятора VirtualBox.


original post http://vasnake.blogspot.com/2014/07/import-virtualbox-machine.html

Комментариев нет:

Отправить комментарий

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Klaipeda (15) Manager (15) web-browser (15) Никонов (15) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) Baltic (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) seaside (1) serialization (1) shore (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)