Getting USB Working
You'll have to give access to the host USB filesystem by changing its permissions when it is being mounted to xVM users to make printer, scanner, and other USB software work from within a VM. If you're starting with a Linux host, you might as well do this before you start installing guest VMs. Remember, you do this in the host filesystem.
From xVM Help (accessed via the console help button):
- “Debian Etch has the mount command in /etc/init.d/mountkernfs.sh. Since that distribution has no group usb, it is also the easiest solution to allow all members of the group vboxusers to access the USB subsystem. Open it as root from a text editor. Modify the line:
domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev
- so that it contains:
domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev,devgid=85,devmode=664
- The above is one line should you happen to see it as line-wrapped. As usual, replace the 85 with the actual group number corresponding to the group (probably vboxusers) which should get access to USB devices.”
Other distributions do similar operations in scripts stored in the /etc/init.d directory. For more information for other distros, check Help from the xVM console or the xVM documentation, which is also available on the Download page above where I tell you where to get xVM. The part in bold is what you actually add to the line (changing devgid to match your group ID number to match whatever your host OS assigned vboxusers).
Once this is done, you do the rest in of the USB setup from Settings Window in Figure 1.
Figure 1 Virtual machine after installation.
- Start xVM. On Debian, this is Start > System > Virtual Machine (Sun xVM VirtualBox). The xVM console will come up with no VMs available.
- Start the New Machine Wizard from the xVM console Machine menu by clicking the New icon (see Figure 2).
Figure 2 New Machine Wizard
- Select a name for your new machine (I chose XP) and choose the OS type.
- Select a memory allocation. I picked 360MB. If you need more, you can fix this later. Just remember the size of your host physical memory and think of what other VMs you might be running at the same time.
- For Virtual Hard Disk, select New (unless you want to work from an existing .vdi xVM virtual drive or an existing .vmdk which is beyond the scope of this article). New starts the Virtual Hard Drive sub-wizard.
- The Virtual Hard Drive image screen chooses between Dynamically Expanding, which starts at zero and expands as you fill it, and Fixed Size (static) which allows the host OS to allocate the amount of physical hard drive you select to a HD file of that size. The upside is that static is somewhat faster. The downside is that you immediately lose access from your host HD to that much HD space, and if you install a few applications, the leftover space may be permanently useless to you. I recommend Dynamically Expanding.
- In Virtual Disk Location and Size, the first lets you pick where that virtual drive goes (the filename will be the label you selected). The default is /home/username/.VirtualBox/VDI. I saw no reason to change it, although you might have one. The slider or textbox selects size. I selected a 30GB HD for XP, but it takes up less than 1GB on the physical host HD. How big you need your virtual drive to be depends on what you want to do with it. I use VMs to run applications only with all my personal data residing on the host machine with the shared folder pointing at that directory tree.
- You will then see a summary screen. If it matches what you thought you selected, click Finish.
Now open the Settings Window (per guest VM), shown in Figure 3. Note that this is not available with a guest VM running.
Figure 3 Settings Window
Click each setting and you'll see:
- General—In the Basic tab, I set memory to 350MB, video to 32. In theAdvanced tab, select Shared Clipboard Bidirectional, ACPI on, Enable VTx-AMDv if your processor supports AMD or Intel virtualization extensions. Boot order should be set: Floppy, CD/DVD-ROM, and Hard Drive all should be checked Check the order that corresponds to your host workstation configuration (i.e., if there is no floppy, don’t check floppy).
- Hard Disks
- CD/DVD-DVD ROM—Enable when you need it. You can select it while the machine is running by right-clicking the icons on the bottom-right of the running guest VM and selecting the physical HD, unless you're installing from the local HD, in which case select ISO image file and enter the path to the .iso file on the host filesystem.
- Floppy—Mount it when you need it. Otherwise ignore.
- Audio—Enable Audio, and select ALSA or whichever audio is running on the host.
- Network—Click Enable Host Adaptor on, Cable Connected on.
- Serial Ports—I don't have any serial port devices. If you don't either, ignore it.
- USB—lick Enable USB and USB 2.0 controller on, go to the small vertical row of icons on the right, hover the mouse over each to find the ToolTip with the Add Filter label, click the Add Filter icon, choose the USB device from the list so the Add Filter Icon triggers, and repeat until all USB devices you want the guest VM to access are connected.
- Shared Folder. Click the Add icon as previously, and add the path directly or browse to the directory on the host to whatever host folder you want to share with the guest VM. Add a share name, and click OK.
- Remote Display—Try the help documentation.
Once you're finished, click to highlight the VM you want to start, and click the Start button to start installing your OS onto the guest VM.
As you can see in Figure 4, it looks like a normal Windows install, except for the guest VM window around it. Note the small icons to the bottom-right of the image. Hover your mouse over each to see what they do. You have special interest in the DVD and USB icons; right-click those to mount and unmount CD/DVDs and USB devices. Also note the words “Right Ctrl.” To get your mouse out of the window before Guest Additions is running, press that on the keyboard. Afterwards, you can move between the xVM window and the host desktop as you please, unless the OS stalls before Guest Additions is running or crashes.
Figure 4 XP Installed
Just keep your XP disk mounted in the CD-DVD drive when you install drivers, as usual. Usually, when you install drivers, they'll be in .cab archive format in CDroot/386.