[libvirt] Mounting a raw DVD

Gerry Reno greno at verizon.net
Tue Nov 10 05:48:47 UTC 2009

Adam Mooz wrote:
> On 2009-11-09, at 11:46 PM, Gerry Reno wrote:
>> Adam Mooz wrote:
>>> Hello List,
>>> I'm attempting to pass a DVD drive of a headless server into a 
>>> virtual machine.  So far I've managed to mount *something* into the 
>>> VM, but it's being registered as a blank DVD within the VM. When I 
>>> mount /dev/dvd into the bare-metal machine it registers normally as 
>>> the DVD.  How do I pass physical drives into a VM and back out using 
>>> libvirt?  
>>> Command used:
>>> #virsh attach-disk Montreal /dev/dvd hdc --mode readonly --driver 
>>> phy --type cdrom
>>> Connecting to uri: qemu:///system
>>> Disk attached successfully
>>> VM XML file:
>>> <domain type='kvm'>
>>>  <name>Montreal</name>
>>>  <uuid>0f79ba7f-27bf-16a0-5887-6cfa2b5569f1</uuid>
>>>  <memory>2097152</memory>
>>>  <currentMemory>2097152</currentMemory>
>>>  <vcpu>1</vcpu>
>>>  <os>
>>>    <type arch='x86_64' machine='pc-0.11'>hvm</type>
>>>    <boot dev='hd'/>
>>>  </os>
>>>  <features>
>>>    <acpi/>
>>>    <apic/>
>>>    <pae/>
>>>  </features>
>>>  <clock offset='utc'/>
>>>  <on_poweroff>destroy</on_poweroff>
>>>  <on_reboot>restart</on_reboot>
>>>  <on_crash>restart</on_crash>
>>>  <devices>
>>>    <emulator>/usr/bin/kvm</emulator>
>>>    <disk type='file' device='cdrom'>
>>>      <target dev='hdc' bus='ide'/>
>>>      <readonly/>
>>>    </disk>
>>>    <disk type='file' device='disk'>
>>>      <source file='(Mangled Purposely)'/>
>>>      <target dev='vda' bus='virtio'/>
>>>    </disk>
>>>    <interface type='bridge'>
>>>      <mac address='(mangled purposly)/>       <source bridge='br0'/>
>>>      <model type='virtio'/>
>>>    </interface>
>>>    <serial type='pty'>
>>>      <target port='0'/>
>>>    </serial>
>>>    <console type='pty'>
>>>      <target port='0'/>
>>>    </console>
>>>    <input type='mouse' bus='ps2'/>
>>>    <graphics type='vnc' port='-1' autoport='yes' keymap='en-us'/>
>>>    <video>
>>>      <model type='cirrus' vram='9216' heads='1'/>
>>>    </video>
>>>  </devices>
>>> </domain>
>> I haven't done this for a while but I believe you have to issue a 
>> 'detach' command afterwards.
>> -Gerry
>> --
>> Libvir-list mailing list
>> Libvir-list at redhat.com <mailto:Libvir-list at redhat.com>
>> https://www.redhat.com/mailman/listinfo/libvir-list
> # virsh detach-disk Montreal hdc
> Connecting to uri: qemu:///system
> error: this function is not supported by the hypervisor: only SCSI or 
> virtio disk device can be detached dynamically
> ? Also, I'm not sure if you understood my question.  When I pass in 
> the DVD device into the VM it registers as a blank DVD.  if I pass in 
> a non-existant folder it blows up, so I know it's reading something 
> from the real DVD drive.  Mounting the real DVD drive in the 
> bare-metal machine shows the files on the drive, but I cannot get them 
> to appear in the VM.  How do I get the same files to show up in the VM 
> (i.e. mount the DVD drive into the VM)?
I didn't see /dev/dvd in your xml.  If you attach it and then dump the 
xml what does it look like?  And then have you tried booting the VM with 
an xml file with this device and can you read the files on the device 
this way?

The other thing is that maybe your version of libvirt is too old.  I 
think 0.7.1 is current.


More information about the libvir-list mailing list