Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

VM with an existing vmdk primary disk

Featured Replies

Hi everyone :)

 

I'm trying to run a vmdk based VM wich i created originaly on VMware Workstation.

 

So, i followed itimpi's tuto (here)

 

But got stuck anyway on this :

 

Capture.thumb.PNG.6bfd987d6c5fb08c73d30e3da44ea906.PNG

 

Here's my xml if some kind soul could point me where my error is, please ^^

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm'>
  <name>Debian 10 x64</name>
  <uuid>d8ed2ecf-d381-0b6e-f1c7-e461ba0beca3</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="CentOS" icon="debian.png" os="centos"/>
  </metadata>
  <memory unit='KiB'>16777216</memory>
  <currentMemory unit='KiB'>16777216</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='8'/>
    <vcpupin vcpu='1' cpuset='20'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-4.1'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <topology sockets='1' cores='2' threads='1'/>
  </cpu>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/ProgSetup/VirtualMachine/VMWare Hosts/Linux_Unix/Debian 10.x 64-bit/Debian 10.x 64-bit.vmdk'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'/>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x10'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x11'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x12'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:37:8b:4c'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <channel type='unix'>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='fr'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </memballoon>
  </devices>
</domain>

Thank you very much :)

It says "type='raw'" in the xml qemu tag so that wouldn't work.

 

1. The less preferable method:

Try changing:

<driver name='qemu' type='raw' cache='writeback'/>

to:

<driver name='qemu' type='vmdk' cache='writeback'/>

Why less preferable?

vmdk doesn't work that well with qemu, at least for me. I had data corruption issue with qemu + vmdk a long time ago and I don't trust it ever since.

 

 

2. The better method: convert the vmdk to raw format

From the command line run this (and wait for it to finish)

qemu-img convert -f vmdk -O raw "/mnt/user/ProgSetup/VirtualMachine/VMWare Hosts/Linux_Unix/Debian 10.x 64-bit/Debian 10.x 64-bit.vmdk" "/mnt/user/ProgSetup/VirtualMachine/VMWare Hosts/Linux_Unix/Debian 10.x 64-bit/Debian 10.x 64-bit.img"

Then change this:

<source file='/mnt/user/ProgSetup/VirtualMachine/VMWare Hosts/Linux_Unix/Debian 10.x 64-bit/Debian 10.x 64-bit.vmdk'/>

to this:

<source file='/mnt/user/ProgSetup/VirtualMachine/VMWare Hosts/Linux_Unix/Debian 10.x 64-bit/Debian 10.x 64-bit.img'/>

 

 

3. also change Q35 to 4.2 (assuming you are on Unraid 6.8.3?)

Change this:

<type arch='x86_64' machine='pc-q35-4.1'>hvm</type>

to this:

<type arch='x86_64' machine='pc-q35-4.2'>hvm</type>

4.1 has some serious bugs and it's generally better to use the latest version anyway.

 

 

  • Author

Thanks for your reply ! :)

 

I tried the qemu-img convert command and got this :

qemu-img: Could not open '/mnt/user/ProgSetup/VirtualMachine/VMWare Hosts/Linux_Unix/Debian 10.x 64-bit/Debian 10.x 64-bit.vmdk': Could not open '/mnt/user/ProgSetup/VirtualMachine/VMWare Hosts/Linux_Unix/Debian 10.x 64-bit/Debian 10.x 64-bit.vmdk': Invalid argument

I have to type this on unRAID's "Terminal", right ?

 

I'm on 6.8.0, tried various things to "convert" my passphrase to keyfile but none worked, so i'm stuck with this one for now :/

Did you turn off your VM prior to running the command?

 

If you can't use 4.2 then use 4.0.4 instead.

  • Author

Yep, it was stoped :)

 

I don't have 4.0.4, closest is 4.0.1 and upper version is 4.1

5 minutes ago, AinzOolGown said:

Yep, it was stoped :)

 

I don't have 4.0.4, closest is 4.0.1 and upper version is 4.1

Sorry typo, I meant 4.0.1.

 

With regards to the command, it's correct so I'm guessing perhaps the path is the problem.

You should "cd" to the folder containing the vdisk and do

qemu-img convert -f vmdk -O raw "Debian 10.x 64-bit.vmdk" "Debian 10.x 64-bit.img"

(sort of a pet peeve: you might want to avoid having spaces unnecessarily as that requires adding quotes and make it easier to have mistakes)

 

  • Author

True, i have a strange thing, here's a screencap

 

Capture.PNG.5ffebc39473d6db68a98f9048aa616c2.PNG

 

Don't know why, but seems that a \ added itself on every file's name, and with or without it, i can't reach any of the said files O_o

 

Have you even seen that ? Do you know what's the cause can be ?

 

[Edit]

I tried to rename the vmdk without space but no luck :/

 

Then i read some post about "export to OVF" on VMware Workstation, that can output sort of a different vmdk that will pass the qemu-img convert problem (seems that i'm not the only one with this error message ^^). I was having hope, but after multiple changes, export to OVF is still greyed out, even on the vmdk source machine T_T

 

I'm starting to think my only choice is to redo the VM from scratch ~~

 

Edited by AinzOolGown

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.