VirtualBox: How to change the UUID of Virtual Disk (vdi)

Copying the image of Virtual Disk (.vdi file) is a convenient way to duplicate the disk, in cases you want to avoid re-installing an operating system from scratch.

However, simply copying the .vdi file into another location will make a verbatim copy of the virtual disk, including the UUID of the disk. If you try to add the copy in the Virtual Media Manager, you will get an error like this:

virtualbox-error.png

In this case, you have to do the following:

giannis@giannis-laptop:~$ VBoxManage internalcommands setvdiuuid /path/to/virtualdisk.vdi
VirtualBox Command Line Management Interface Version 2.2.2
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

UUID changed to: 9e89fe14-d010-469e-a737-cd65218c4acb

Since the old UUID is replaced with a new one, you can now add and use the virtual disk.

Please note, that you wouldn’t have to follow this procedure if you had used the clonevdi function to copy the virtual disk image, in the first place. The clonevdi function makes sure that the new disk image will have its own unique UUID.

The syntax of the clonedvi goes like this:

$ VBoxManage clonevdi Master.vdi Clone.vdi

This entry was posted in Uncategorized. Bookmark the permalink.

21 Responses to VirtualBox: How to change the UUID of Virtual Disk (vdi)

  1. M.Sureshkumar says:

    Very nice stuff, it’s saving time of re-installing an operating system from scratch.

    it’s working very nice ….. superba work !!!!!!!!!

  2. Alexander says:

    Thanks! It works :-)

  3. Wilson says:

    Thanks!
    Just what I need it.

  4. Adam says:

    Worked beautifully. Thanks

  5. Mark says:

    Thanks greatly (I’ve still not had to RTFM ;-} )

    However, the clonevdi method does not work as VB keeps an .xml record of known disks/uuids and bounces attempts to clone. You’d have thought the response would be “Cannot create a duplicate UUID – OK to create a new UUID for the clone otherwise Cancel” …it ain’t rocket salad is it!
    (can’t guess what the –remember and –existing arguments mean so maybe I will rtfm after all…)

  6. Seth Kutty says:

    Thanks! It saves us a lot of time to replicate complex environments for my clients quickly. (www.tychio.com)

  7. John says:

    Still works!

  8. Ikutsin says:

    >Thanks greatly (I’ve still not had to RTFM ;-} )
    Well, this command is actually not listed in commandline help.
    Use: VBoxManage internalcommands help

    CLONEHDis also listed there. Previously, it was a nightmare to convert vmware hard disks (vmdk) to vdi.

  9. Dormand says:

    From command prompt go to virtual box installation folder then use this command
    >vboxmanage internalcommands setvdiuuid vhddFileName.vdi

    it will change the uuid of vhddFileName.vdi

  10. Evaldo says:

    Thank you, very useful

  11. AdulRahman Attia says:

    Thanks alot, it’s save a big time.

  12. cts.private says:

    I copied my vdi to a USB stick and it took about 5 minutes, but then, naturally, it didn’t work because I didn’t clone it.

    So then I cloned it … that was about 3 hours ago and so far it’s only on 70%

    What does clone do, anyway?

  13. David says:

    Am wondering why VDI management / cloning isn’t built into UI?

  14. Jerry White says:

    For VMWare image disks
    VBoxManage internalcommands sethduuid disk.vmdk

  15. Some One says:

    Thanks! Clean solution!

  16. zyr517 says:

    change setvdiuuid to sethduuid, it’s work, thanks man!

  17. coderix says:

    very nice .and do you know how can i see my UUID file is there a special command or something on virtualbox screen option ?

  18. Load3r says:

    Windows, OVB 4.3.10
    C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands sethduuid D:\
    Windows732.vdi
    UUID changed to: 00549cf5-700e-45f9-b236-cb7d6b8a0223

    another syntax)

  19. asadi says:

    ‘setvdiuuid’ is changed to ‘sethduuid’ in new version.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>