Instalar Virtualbox guest-additions sin X

Entre otros muchos usos de Virtualbox, lo usamos como entorno de desarrollo que sean replicas de los de producción y que nos sirven para desarrollo offline para desarrolladores. Con el tiempo hemos ido optimizándolas de modo que mantenemos los archivos y repositorios, configuraciones, logs, etc en carpetas “locales” del host que se montan y sirven desde la maquina virtual. Es una estupenda alternativa a usos de cualquier versión de xAMP ya sea en Windows o Mac sobretodo porque emula a la perfección el entorno real de desarrollo, nos permite usar los mismos archivos de configuración de servidores, formato de rutas, etc. En otro post entraremos en detalles, pero lo configuramos con dos interfaces de red, una poder referirnos a ellos siempre en la misma dirección local y otro para enrutar el tráfico de salida.

Virtualbox requiere* (el asterisco es porque en realidad no pero hay servicios vitales como el de hora que de otro modo no funcionan bien) instalar unas “guest-additions” especificas del entorno virtualizado. El problema surge de que muchas distribuciones (como Debían en nuestro caso) incluyen una versión de las mismas que generalmente suelen estar obsoletas respecto a las que podemos instalar desde la última versión de Virtualbox y pero,  acaban interfiriendo en su correcto funcionamiento si se instalan por duplicado.

No entraremos en detalles de como hacerlo, al haber numerosos post al respecto pero por nuestra experiencia recomendamos:

  • no instalar las versiones de los repositorios de Debian (o seguramente ninguna distribución)
  • si ya lo has hecho desintalalas… apt-get remove vbox-additions***. Las instaladas desde el CD se pueden desinstalar con el mismo instalador (ver comentario posterior) con “sh ./VBoxLinuxAdditions.run uninstall”
  • en nuestro caso nos molestamos ademas en hacer un “blacklist” a esos paquetes para evitar que se instalen por error:
echo "virtualbox-guest-utils hold" | dpkg --set-selections 
echo "virtualbox-guest-x11 hold" | dpkg --set-selections 
echo "virtualbox-guest-dkms hold" | dpkg --set-selections
  • una vez eliminados desde el menu de la maquina en VirtualBox “Insert Guest Additions”
  • montar el cdrom si fuera necesario. Según el entorno “mount /dev/cdrom /mnt/cdrom”
  • antes de instalar tal vez tengas que comprobar e instalar algunos paquetes (DKMS, etc). Puedes ver info por distribución en //www.virtualbox.org/manual/ch04.html#idp55231856

Como nuestras VMs son servidores que procuramos sean los más compactos posibles para distribución y carga en la maquina que los ejecuta, no nos convencía que las guest-additions instalar numerosas librerias para la X e investigando un poco averiguamos finalmente una opción poco documentada de usar un flag –nox11 al instalar. Así una vez en el directorio con los scripts del cdrom virtual ejecutar:

sh ./VBoxLinuxAdditions.run --nox11

Que debería terminar con el mensaje:

...Could not find the X.Org or XFree86 Window System, skipping.