General Questions about VirtualBox.Q: I just signed up to the forums and it asks me to fill in the VB version, which one do I pick?A: If you have Linux, you have two options: the OSE (Open Source Edition) and the PUEL (Personal Use and Evaluation License) version. When you download VB from the website then you have the PUEL version. Install the one from the repositories of your distribution, you have the OSE version. It's also in the name of the package you install, making it easier to spot the difference. Options to pick: Almost all of the choices apply. Only pick the OSE version that matches your distro. E.g. it would be strange to run Debian, but have the OSE from Fedora.
Windows and Mac users generally don't compile it themselves so they grab the PUEL version from the website. Options to choose: OSE Self-compiled or PUEL.
Q: When I start my VM, I get an error stating that no boot medium was found. How do I solve this?A: Please read more about
Virtual Machines so you know what VirtualBox actually does. Basically it comes to that it 'simulates' a computer with hardware and everything. The Guest does not know about the Host or it's hardware. So you have to install a seperate Operating System in it before you can really use VirtualBox.
Also make sure that if you want to boot from a CD/DVD or ISO, that it actually is bootable.
Q: Does VB support 64 bit guests?A: Support for 64 bit guests was introduced at version 2.0.0. If you wish to create 64 bit guests then we recommend that you upgrade to the latest version. Note that VirtualBox also supports 64-bit guest operating systems, under the following conditions:
- You need a 64-bit processor with hardware virtualization support (see User Manual chapter 1.2, Software vs. hardware virtualization (VT-x and AMD-V), page 10) and a 64-bit host operating system.
NOTE: Since version 2.1.0, you can run 64 bit Guests while running a 32 bit Host. The prior requirement for Operating System is only for version 2.0.x. You still need the proper hardware. - You must enable hardware virtualization through your BIOS; software virtualization is not supported for 64-bit VMs.
Note: some HP BIOSES have a glitch, When You ENABLE VT-X/AMD-V, You DISABLE it, so do try both ways.
Q: I run a 64 bit Host OS, which version do I need?A: You need the same kind program build as your Host OS. If you run for example Vista 64 bit, you need the 64 bit build of VirtualBox. If you run a 32 bit OS on your 64 bit CPU, you
cannot use the 64 bit build. If you have an Intel CPU and run a 64 bit Host, pick the AMD64 package.
Also note that 64bit guests are not currently supported on MacOS.
Since 2.2.0, both builds are in the same installer for Windows Hosts, so you don't have to guess which build you need.
The reason you need to pick the AMD64 package, despite you having an Intel CPU, is that Intel has bought a license from AMD to be able to get the same 64 bit extensions in their CPU. AMD was the first one with 64 bit extensions in the CPU, and for compatibility Intel uses that now too. Therefor, all 64 bit packages you might need, are called AMD64.
Intel did have it's own 64 bit implementation, but was quickly dropped after obtaining a license from AMD. This is found in Intel's Itanium processors, codenamed IA64.
A common misconception about 64bit hardware: Having 64bit hardware/cpu does NOT mean you have VT-X/AMD-V as well, in other words: yes you can run a 64bit OS on 64bit hardware as a HOST, but a 64bit GUEST NEEDS VT-X/AMD-V to be active and enabled.HowTo: determine if VT-X/AMD-V is really activated and used by VirtualBox.Another hint: after enabling VT-X/AMD-V in the BIOS you might need to switch the PC off completely, unplug it, or remove laptop battery for a minute. Ea:
Reboot the Host and go into the BIOS
disable vt-x, save BIOS settings, pause machine after bios boot messages
power down the Host (unplug power cord!)
start the Host and go into the BIOS
enable vt-x, save BIOS settings, pause machine after bios boot messages
power down the Host (unplug power cord!)
Boot the Host.
Q: I got my dual boot Windows XP running in VirtualBox using RAW Disk access, but I keep getting one core fully loaded. How do I solve this?A: First, boot to your OS running on bare hardware.
- Make a copy of \windows\system32\hal???.dll and \windows\system32\ntkernl???.exe to whatever names you want.
- Change the processor type in hardware profile to ACPI single core. Do not reboot, but copy the new \windows\system32\hal???.dll and \windows\system32\ntkrnl???.exe to whatever names you want.
- BEWARE, all his names must be 8.3 based.
- Switch back to ACPI multicore - although this is not striclty needed, but in case in the future you do something wrong with your boot.ini, at least the default-named HAL and NTKERNEL will be there.
- Change your boot.ini to have two systems to boot (basically duplicate the existing one, change the name) and add the /KERNEL and /HAL options - here is an example:
- Code: Select all Expand viewCollapse view
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP (multicore)" /fastdetect /NoExecute=OptIn /kernel=ntkrnlmp.exe /hal=halamp.dll
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP (singlecore)" /fastdetect /NoExecute=OptIn /kernel=ntkrnl.exe /hal=hala.dll
- Now by default, boot.ini is a hidden file on the root of the C: drive. There are several ways to open this file. Either change your Explorer settings to show hidden files and folders. go to System Properties tab Advanced and hit the Settings button on Startup and Recovery. Now you can use the Edit button to edit the file. A different method to use, is open a command prompt, go to the root of the drive and type notepad boot.ini.
There is a high chance that you can't save the file because it's read only. Change the file properties from Explorer or run - Code: Select all Expand viewCollapse view
attrib -h -s -r c:\boot.ini
notepad c:\boot.ini
attrib +h +s +r c:\boot.ini
from the command prompt.
Now it works, you have multicore in native and no more 50% CPU usage in Linux+VB when you choose the single core HAL/NTKERNEL. The tradeoff is that when you boot, you have to press 2 or 3 keys before the computer actually boots (choose Linux/Windows, then in Windows Multi/Single core the the Hardware Profile).
Credits for this information to
Philippe.
Q: Why don't you make VirtualBox so it can run without a Host OS like VMware ESX?A: VMware ESX, like Xen, is a type-1 hypervisor, also known as a bare-metal hypervisor, meaning that it's a "thin" OS that only does basic functions, like managing hardware resources and controlling the Virtual Machines.
VirtualBox, like VMware Workstation/Fusion, is a type-2 hypervisor, also known as a hosted hypervisor. It's an application that runs above an existing OS, which in this case is the one that manages the resources.
Sun Microsystems is already working on it's own type-1 hypervisor, named xVM Server.
Q: I am running Linux and my kernel has just been upgraded. Do I need to do anything?A: VirtualBox links its device drivers against the kernel during installation. The drivers link into addresses inside the kernel. The correct addresses may change when your kernel is upgraded, and as a result VirtualBox can start to cause otherwise inexplicable errors. After kernel upgrade it is always sensible to relink your kernel drivers. This is by running
vboxdrv with the
setup option. The command that you will therefore typically run is
sudo /etc/init.d/vboxdrv setup. If you install the DKMS package, all kernel modules are installed automatically when you install a new kernel.
Q: So is VirtualBox based on QEMU?A: No, VirtualBox is independently developed. It does use QEMU for some real-mode execution (when using Software Virtualization) and for emulation of certain more complicated instructions (when in Hardware Virtualization VT-x/AMD-V mode). But this accounts for a tiny fraction of the time a typical session runs.
Q: I want to use more than one processor in my VM, but I can't move the slider. Why is this?A: You need hardware virtualization in order to use SMP (multi processor support). The same requirements are in order as for running 64 bit Guests. AMD-V/VT-x need to be available in your CPU, your motherboard needs to support this and it needs to be enabled in your BIOS. I/O APIC and ACPI are also needed. More information can be found in the user manual, chapter 3.7.2.2.
Q: I want to move my VM to a different host, how do I do that?Q: I want to share my VM with my dual-boot, how do I do that?A: The VDI need to be on a shared location so both OSses can read and write to the file in case you want to share it between your dual-boot Host.
Create a new VM on the other system, select the VDI from the first Host as hard drive instead of creating a new one and make sure that every setting is exactly the same. The MAC addresses of the virtual NICs also need to be the same, to avoid possible Windows activation prompts and new interface names on Linux.
For Windows 7, there is one additional step that needs to be the done to avoid reactivation. The VM UUID need to be transferred from the original VM to the new one. Open the XML file of the original VM and copy the UUID and transfer that to the new VM XML file. Look for this line at the start of the file:
- Code: Select all Expand viewCollapse view
Machine uuid="{075d42da-6025-4a95-a1d5-57b1f4b09dd7}" name="Windows 7" OSType="Windows7"
The 'hash' in curly brackets is the UUID you need to copy and replace in the new VM XML. This change is not yet done, because the VirtualBox.xml file doesn't know that UUID, it still holds the old UUID of the VM. Open the VirtualBox.xml file in a text editor like with the machine.xml file and look at a line that looks like the following and replace the UUID.
- Code: Select all Expand viewCollapse view
<MachineEntry uuid="{075d42da-6025-4a95-a1d5-57b1f4b09dd7}" src="/media/Extern/Virtual Machines/Windows 7/Windows 7.xml"/>
The src= line is how you can spot your VM. The actual location of the XML depends on the Host and configuration of the VM location. By default it's in the user profile folder.