Actualizado el lunes 4 de mayo de 2020
En esta entrada daremos por zanjada de una vez y por todas la instalación de VirtualBox en el mundo Debian y sus múltiples subdistribuciones:
- Ubuntu: nuestra preferida😉 y quizás la más famosa junto con todos sus sabores Lubuntu, Kubuntu, etcétera.
- Canaima: distribución venezolana y oficial de nuestra República Bolivariana de Venezuela.
- Tails: tal vez la más segura, recomendada desde 2014 por Edward Snowden.
- Kali Linux: adorada por los analistas de seguridad por su gran cantidad de software de prueba y/o penetración (equipo rojo).
- PureOS y Trisquel: recomendada por la Free Software Foundation y orientada a la privacidad con seguridad.
Tabla de contenido:
Agradecimiento público
Para con el sr. Riky Linux desde Argentina por su acertada orientación sobre el tema. Gracias👍.
Consideraciones
En un artículo previo quisimos resumir todas nuestras experiencias con VirtualBox pero no quedamos conformes con ello. Aquellos son casos puntuales con varias distribuciones GNU/Linux y recogido de varios autores. Acá colocamos una buena unificación del tema.
Si instalamos VirtualBox de los repositorios por defecto…
VirtualBox está presente en casi todos (por no decir todos) los repositorios de las distribuciones basadas en Debian. Hasta acá todo bien, excelente, pero siempre tendremos una versión rezagada pero muy estable ya que está probada y comprobada por los creadores y mantenedores de la distro. La principal preocupación aquí es la seguridad, estaremos «desprotegidos» ante una vulnerabilidad de «día cero».
Si instalamos VirtualBox desde los últimos paquetes .deb publicado por Oracle®
Sí, la empresa propietaria de VirtualBox es Oracle® y bien sabemos que los complementos son con licencia privativa. Bien podemos usar a Kernel-Based Virtual Machine o KVM para una virtualización totalmente basada en libre software, pero eso es tema para una serie de artículos aparte. Si accedemos a la página de descarga de VirtualBox podremos instalar la última versión (o la que necesitemos) fijándonos bien en utilizar el mismo conjunto de versiones. El detalle con esto es que deberemos siempre descargar e instalar de esta manera, es decir, dejamos de lado el proceso automatizado de actualización.
¡Si instalamos desde el repositorio oficial de VirtualBox!
¡Esta será siempre la mejor opción! Es la recomendada por sitio web de VirtualBox, por ello está muy bien documentada sobre cómo agregar a nuestros sistemas el repositorio oficial. El valor agregado que hacemos aquí es la simplicidad y la automatización, veamos.
Agregando el repositorio oficial
Acá priva la simplicidad y practicidad sobre la teoría, a muchos y muchas no les gustará como lo narramos pero aquí les va.
Agregando las llaves públicas
Debemos tomar la precaución descargar (vía HTTPS) la llave pública de VirtualBox y agregar a nuestro sistema, a fin de cerciorarnos de que lo que descarguemos sea íntegro. En realidad son dos claves, a saber:
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add - wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
Al ejecutar introducimos nuestra contraseña y si todo sale bien nos devolverá un simple mensaje Ok en ambos casos.
Agregando el repositorio en sí mismo
Esto lo haremos con la siguiente línea (coloreamos lo importante):
sudo add-apt-repository "deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib"
- [arch=amd64]: como dijimos solo existe la versión de 64 bits de ahora en adelante, versión 6 y superiores.
- $(lsb_release -cs): es una variable de sistema de bash, no tenemos que estar averiguando cuál versión tenemos (a la fecha hemos usado Ubuntu 12 y 16; ahora 18 y uno solo de nuestros clientes tiene instalado Ubuntu 19 y estamos a pocos meses de usar la versión Ubuntu 20.04).
La versión de add-apt-repository que tenemos actualiza el catálogo de los repositorios de una sola vez. Ubuntu nos retrasa un tanto ya que aunque estemos trabajando con la línea de comandos sale un mensaje gráfico invitando a la actualización. Hagamos clic en «recordar más tarde» y con paciencia sigamos con nuestra ventana terminal.
Orden de instalación
Pues ya estamos listos, solo debemos introducir:
sudo apt install virtualbox TAB TAB
Y veremos las opciones disponibles:
Acá escogemos la versión 6.1 (o para cuando ustedes lean esto, la versión más reciente disponible):
sudo apt install virtualbox-6.1
Desinstalando VirtualBox
Claro ¿por qué no? Si ya no necesitamos de este software de virtualización, ejecutamos:
sudo apt remove virtualbox virtualbox-*
Nota: esto solo quitará de nuestro sistema el VirtualBox, pero no las máquinas virtuales y sus elementos.
Si queremos eliminar todo deberemos ejecutar «sudo apt purge virtualbox virtualbox-*»
Problemas comunes
Paquetes .deb y repositorios
Puede suceder que instalemos a VirtualBox desde un paquete .deb y luego por error ejecutemos sudo apt install virtualbox lo que ocasiona un severo conflicto de versiones. No hay problema, lo que debemos hacer es lo siguiente:
dpkg --list 'virtualbox*'
Acá debemos analizar uno por uno lo que tengamos instalado, ya que los paquetes que ofrezcan alguna colisión o incompatibilidad pues los removeremos. Como dijimos, para este artículo solo instalamos el paquete virtualbox-6.1, pero son muchos los paquetes adicionales que necesitaremos (luego veremos eso de nuevo en la compilación de kernels de VirtualBox).
Debemos tener muy en cuenta el estado de cada paquete de acuerdo a las tres primeras letras de cada línea. Como esto no es nada intuitivo, copio y traduzco acá lo que significa cada uno.
Primera letra
Esta primera letra se refiere al estado del paquete en el repositorio que tengamos instalado. Los estados son los siguientes:
- «u»: desconocido, por unknown en idioma inglés (en nuestro captura de pantalla de ejemplo vean virtualbox-2.0 hasta virtualbox-5.2, esto se explica porque el repositorio de Oracle® solo tiene las útlimas versiones que tienen soporte).
- «i»: para instalar, se puede instalar, pues simplemente que está disponible (ver en nuestro ejemplo virtualbox6.1).
- «r»: paquete para remover, desinstalar. Ojo, debemos ver estado de la segunda letra, tened paciencia.
- Otros valores que no mencionaremos acá, si a futuro se presenta algún incidente lo publicaremos, solo de ser necesario.
Segunda letra
La segunda letra nos indica en qué estado se encuentra cada paquete en nuestro sistema:
- «n»: no instalado (ver primera letra para saber si es posible instalar).
- «i»: instalado, sin problemas en cuanto dpkg concierne.
- «c»: el paquete estuvo instalado, ya pero solamente mantenemos su configuración, sus ficheros que albergan valores de nosotros como usuarios. Examinar en nuestro ejemplo el caso de virtualbox-5.2.34 que fue el primero que instalamos cuando migramos a Ubuntu 18 en un disco «limpio y nuevo» . Recuerden la primera letra «r», que acompañado de esta letra «c» es para indicar que aún quedan vestigios del paquete. No necesariamente quiere decir que lo debemos remover: la configuración bien puede ser totalmente compatible con las nuevas versiones, en la mayoría de los paquetes software es así.
- Otros valores que no mencionaremos acá, si a futuro se presenta algún incidente lo publicaremos, solo de ser necesario.
Tercera letra
Solamente tiene un valor, «R»: está relacionado con la segunda letra pues allí veremos en cuál condición está el paquete (medio instalado, dependencias rotas, etc).
«Hash Sum mismatch»
En alguna oportunidad recibiremos este mensaje (por la interfaz gráfica no lo muestra) que indica que los archivos recibidos no coinciden con la función hash de comprobación. Consultando distintas fuentes encontramos dos que consideramos útiles.
Borrar y descargar de nuevo
Pues simplemente eso, así lo indican en este foro de Askubuntu: borrar los «catálogos» y traerlos de nuevo:
sudo rm -rf /var/lib/apt/lists/*
Cambiar de repositorio específico
En nuestro caso la solución anterior no funcionó, por ello buscamos otro repositorio oficial que esté actualizado y cerca de nosotros. Atención: no es necesario cambiar todas las líneas de repositorio, solo el que ocasiona problemas.
Así encontramos que en Brasil, país vecino de acá en Venezuela, tiene un repositorio con apenas una hora de diferencia con el oficial (al momento de escribir estas líneas a nivel mundial existen 512 repositorios oficiales con un máximo de una semana de retraso). Editamos con derechos de usuario raíz:
sudo nano /etc/apt/sources.list
Y para nuestro caso inactivamos la línea que ocasiona problemas y agregamos la siguiente:
deb http://ubuntu-archive.locaweb.com.br/ubuntu/ bionic-backports main restricted universe multiverse
Fuentes consultadas
En idioma castellano
- «Guest Additions de Virtualbox, el secreto de una máquina virtual perfecta».
- «¿Tu máquina virtual de Virtualbox ha dejado de funcionar? Prueba esto».
- «».
En idioma francés
- «».
- «».
- «».
En idioma inglés
- «What do the various dpkg flags like ‘ii’ ‘rc’ mean?».
- «How to Install VirtualBox on Ubuntu [Beginner’s Tutorial]».
- «How to Install & Use VirtualBox Guest Additions on Ubuntu».
- «Download VirtualBox for Linux Hosts».
- «VirtualBox VERR_VM_DRIVER_VERSION_MISMATCH on Ubuntu».
- «How to add users to vboxusers».