Prerequisites
Adding a CD to a running VM is not a difficult task if you know which commands to use. By adding I mean we're going to insert a virtual CD disk into a virtual machine using our little virtual hands. ;-)
1. Get the name of your Virtual Machine
In this case the name is CentOS6 and the UUID is cefb9f88-0424-6701-5ba1-070490c69203.
[ root@cloud2 ~/bin ] xe vm-list uuid ( RO) : cefb9f88-0424-6701-5ba1-070490c69203 name-label ( RW): CentOS6 power-state ( RO): running
2. Get the name of the CD disk
In this case our disk is named CentOS-6.3-x86_64-LiveCD.iso.
[ root@cloud2 ~/bin ] xe cd-list uuid ( RO) : 0549c68a-e38d-4cd8-9974-ba0b9167ff5a name-label ( RW): CentOS-6.3-x86_64-LiveCD.iso
3. Identify a free Virtual Block Device number
Use the VM UUID that we retrieved in step 1.
[ root@cloud2 ~/bin ] xe vm-param-get uuid=cefb9f88-0424-6701-5ba1-070490c69203 \
param-name=allowed-VBD-devices 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15
4. Add the CD to the VM. Use the VM UUID from step 1, the CD name from step 2 and the VBD device number from step 3.
[ root@cloud2 ~/bin ] xe vm-cd-add uuid=cefb9f88-0424-6701-5ba1-070490c69203 \
device=5 cd-name=CentOS-6.3-x86_64-LiveCD.iso
5. Verify using xe vm-cd-list
By using xe vm-cd-list we can list the CD's currently plugged into our VM.
[ root@cloud2 ~/bin ] xe vm-cd-list uuid=cefb9f88-0424-6701-5ba1-070490c69203 CD 0 VBD: uuid ( RO) : 40f6b5c9-14fd-4379-d82c-d0ff34472a04 vm-name-label ( RO): 955300270 empty ( RO): false userdevice ( RW): 5 CD 0 VDI: uuid ( RO) : 0549c68a-e38d-4cd8-9974-ba0b9167ff5a name-label ( RW): CentOS-6.3-x86_64-LiveCD.iso sr-name-label ( RO): NFS ISO virtual-size ( RO): 725614592
6. Unplugging the CD disk
When done with the CD you can unplug it even easier. We specify the VM UUID and tell it to eject the CD which it does.
[ root@cloud2 ~/bin ] xe vm-cd-eject uuid=cefb9f88-0424-6701-5ba1-070490c69203