CentOS as a Guest OS in VirtualBox
Installation of CentOS as a guest OS is much like installing on real hardware. Start by downloading the ISO file[s] you wish to use for installation from a CentOS Mirror.
1. Creating a Virtual Machine
Create a New Virtual Machine (VM) with the Virtual Machine Wizard, choosing Linux for the OS Type and Red Hat or Red Hat (64 bit) for the Operating System. Memory should be at least 768MB for a graphical install to work. Next the virtual hard disk wizard will start. The OS disk should be at least 8GB. For a relatively full install, allocate at least 15GB, otherwise use all the defaults. Additional disk[s] can be added later if desired.
After the VM is created, run Settings, go to Storage, and under IDE Controller click on the CD icon on the left, then select the similar CD icon on the right and pick Choose a virtual CD/DVD from the list. Navigate to the directory where the ISO image[s] reside and pick one, for example CentOS-6.7-x86_64-LiveDVD.iso or CentOS-7-x86_64-DVD-1511.iso. Change any additional settings, such as the amount of memory for the virtual video adapter, and whether to use NAT or Bridged networking. For a first install attempt make a minimum of changes to the defaults.
Start the VM and perform a graphical install, or if desired a text install. After the install reboot and perform firstboot configuration.
2. Installing Guest Additions
You will need to be the root user for the following tasks. Login to a root shell or "su -" in a terminal window.
The installation of VB will require the building of kernel modules. If DKMS (Dynamic Kernel Module Support) is installed it will be used and will simplify kernel upgrades. Installing DKMS from the EPEL repository is recommended before installing VirtualBox. Don't forget to configure the yum-priorities plugin. Installing DKMS may pull in required development dependencies, depending on the package source.
yum install dkms
If DKMS is not used the Guest Additions will need to be reinstalled after every kernel update.
If the development environment and kernel source are not already installed:
yum groupinstall "Development Tools" yum install kernel-devel
You may also choose to only install a minimum set of individual development tool packages (at least gcc and make are required, in addition to kernel-devel) rather than the groupinstall which some may consider overkill. Replace "kernel-devel" with "kernel-PAE-devel" if using a PAE kernel on CentOS-5. If you are not using a standard CentOS kernel, you must acquire and install the source for your kernel from wherever you got the kernel. Do not try to install a Xen kernel in a Guest OS, or run KVM or any other nested virtualization hypervisor.
From the VM Devices menu select Install Guest Additions.... If running a GUI the virtual CD image for guest additions will automount - for instance under CentOS-6 with KDE it is mounted under /media/VBOXADDITIONS_5.0.14_105127. If autorun is enabled in a GUI you may get a window asking if you want to let the autorun execute, and asking for root authorization. Take all the defaults and the install should complete.
If not in a GUI, or if there is no autorun, as root mount /dev/cdrom or /dev/sr0 (if necessary) and cd to the mountpoint. Type ./VBoxLinuxAdditions.run to install.
3. Patch for specific CentOS version
Usually after a point release, which introduces major changes to the kernel or other subsystems, the compilation of the vBox tools fails. When such issues arise we will try to post applicable patches here, until this issue is fixed by vBox.
This page created by PhilSchaffner. Wiki contributors are invited to make corrections, additions, or modifications.