====== VirtualBox ======
Hipervisor de tipo 2 que crea y ejecuta máquinas virtuales.
* [[https://www.virtualbox.org/|Web oficial]]
Disponible para:
* Linux
* macOS
* Windows
* Solaris
===== Características =====
* Instantáneas (//snapshots//)
* Seamless mode
* Portapapeles compartido
* Carpetas compartidas
* Interfaz de línea de comandos
* Soporte de aceleración gráfica 3D
* Aceleración de vídeo 2D
* Soporte EFI.
===== Sistemas operativos invitados soportados =====
* Windows 8.1 y superior.
* Windows Server 2012 y superior.
* Distribuiciones Linux
* Mac OS X 10.13 y superior.
* Solaris
===== Instalación =====
==== Linux ====
En Arch Linux:
pacman -S virtualbox virtualbox-host-dkms linux-headers virtualbox-guest-iso virtualbox-ext-oracle
===== Configuración =====
Para poder ejecutar cualquier máquina virtual es necesario cargar el módulo ''vboxdrv'':
# modprobe vboxdrv
Para configuraciones avanzadas de red:
* ''vboxnetadp''
* ''vboxnetflt''
==== VirtualBox extension pack ====
Este paquete añade las siguientes características a VirtualBox:
* Controladores USB 2.0 y 3.0
* VirtualBox Remote Desktop Protocol
* Passthrough de la webcam
* ROM de arranque por Intel PXE
* Cifrado de disco con AES
==== Guest Additions ====
Drivers y aplicaciones de sistema que optimizan el sistema operativo virtualizado para mejorar su rendimiento y uso:
* Integración del ratón.
* Carpetas compartidas entre el host y la máquina virtual
* Mejor suporte de vídeo (y aceleración gráfica)
* Integración de las ventanas de la máquina virtual con las del host
* Sincronización del tiempo.
* Portapapeles compartido
* Inicios de sesión automatizados.
Para instalarlas, montamos la imagen ISO de las Guest Additions en la máquina virtual, entramos en CD que se haya montado y:
sudo ./VBoxLinuxAdditions.run
Reiniciar la máquina virtual
Para instalar Guest Additions puede ser necesario instalar en la máquina virtual las dependencias para poder compilar el módulo del kernel de VirtualBox. Si se trata de una máquina virtual con Ubuntu: ''sudo apt-get install build-essential dkms linux-headers-$(uname -r)''
==== Carpetas compartidas ====
En una máquina virtual con Linux, hay que añadir al usuario que queramos al grupo ''vboxsf'':
sudo usermod -aG vboxsf
Es necesario salir de la sesión y volver a entrar para que se apliquen los cambios
En máquinas virtuales con Windows, las carpetas compartidas están accesibles desde ''\\vboxsrv\nombre-carpeta''
===== Creación de máquinas virtuales =====
===== Aumentar tamaño disco virtual =====
Desde el menú //Archivo// -> //Herramientas// -> **Administrador de medios virtuales**
En la pestaña **Discos duros** podemos ver los discos duros virtuales que tenemos creados. Para modificar el tamaño, seleccionamos el disco y luego en el apartado de **Atributos** modificamos su tamaño.
Si VirtualBox está funcionando en un equipo Linux, podríamos modificar el tamaño desde la línea de comandos: ''VBoxManage modifymedium "/ruta/al/disco.vdi" --resize ''
The resize process should finish right after you click the enter button to execute the command.
Hay que tener en cuenta que aunque hayamos aumentado el tamaño del disco virtual, el tamaño de la partición actual sigue siendo el mismo si hemos decidido que el espacio se reserve dinámicamente. Tendremos que arrancar la máquina virtual con un sistema //live// que permita hacer operaciones en las particiones, como [[https://gparted.org/livecd.php|GParted Live]], y agrandar la partición hasta que ocupe todo el tamaño.
Si existe alguna instantánea creada, es posible que no se pueda incrementar el tamaño de la partición
===== Solución de problemas =====
==== Problemas instalación Extension Pack ====
Si al intentar instalar un Extension Pack desde VirtualBox nos da un error ''E_FAIL (0x80004005)'', podemos realizar la instalación de forma manual descomprimiendo el fichero ''Oracle_VM_VirtualBox_Extension_Pack-X.Y.ZZ.vbox-extpack'' en el directorio donde está instalado VirtualBox dentro de la carpeta ''Oracle_VM_VirtualBox_Extension_Pack''. Por ejemplo, en una instalación por defecto en Windows: ''C:\Program Files\Oracle\VirtualBox\ExtensionPacks\Oracle_VM_VirtualBox_Extension_Pack''
==== E_INVALIDARG (0x80070057) ====
No hay espacio suficiente para realizar cierta operación, puede ocurrir al importar un servicio virtualizado o durante el uso de una máquina virtual.
===== Útiles =====
==== Menú de arranque de VirtualBox ====
Cuando arrancamos una máquina virtual, tenemos la posibilidad de lanzar un menú de arranque (como sucede en las máquinas reales). Dependiendo de si la máquina virtual está configurada con BIOS o UEFI, pulsaremos una determinada tecla nada más arrancar la máquina virtual:
* BIOS: F12
* UEFI: Esc
==== Cambiar resolución de vídeo ====
Sin tener que instalar las **Guest Additions**, podemos establecer una resolución de pantalla para las máquinas virtuales en caso de sistemas Linux. Primero vemos las resoluciones disponibles en la máquina virtual:
xrandr -q
Establecemos la que queramos, por ejemplo:
xrandr -s 1280x1024
===== Recursos =====
* [[https://www.virtualbox.org/manual/UserManual.html|Manual de usuario]]