lunes, 18 de mayo de 2020

VirtualBox, las Guest Additions y otras 'cositas'

En mi PC siempre hay instalado un VirtualBox, por aquello de poder crear ‘una máquina virtual’ donde poder hacer funcionar algún sistema operativo ‘sin incordiar’ al principal (o ‘anfitrión’) que tengo en el ordenador. Por ejemplo, en mi VirtualBox aún tengo un Windows XP que funciona aceptablemente y, aunque no se para qué lo conservo, me da pena borrarlo, es un ‘reliquia del pasado’ (por cierto, nunca conseguí que me funcionasen razonablemente rápidos otros Windows superiores). Además, a veces, en VirtualBox, tengo alguna distro Linux, para ver cómo va, instalar algo nuevo, etc. Ahora, por ejemplo, tengo un Debian, que uso para probar algunas cosas.

Pero el caso es que (quizás porque lo uso muy poco) me parece a mi que las virtualizaciones de distros de Linux, en VBox, son algo más complejas que la virtualización de Windows, y me apetece actualizar algunos apuntes.
Por supuesto, no me refiero a la propia instalación del VBox, que es sencilla, como (no hace mucho) explicaba aquí, sino a otras mejoras. Y como lo uso solo de vez en cuando, me apetece hacer un pequeño resumen de estas ‘cositas’.


Si, porque, por ejemplo, cuando actualizas VirtualBox, ya sabemos que la actualización del complemento ‘Extension Pack’ salta, y la ejecutas, automáticamente, pero con las Guest Additions ya es otra cosa.
Por cierto, si esta ExtensionPack no está instalada, lo más sencillo es descargarla (por ejemplo de la dirección que apunto un poco más abajo), abrir VirtualBox y con Archivo-Preferencias-Extensiones las buscas y las añades.
Pero empecemos por el principio: Las GuestAdditions son un grupo de funcionalidades complementarias, y muy útiles, no se por qué no las incorporan directamente, que permiten ampliar las prestaciones del sistema ‘guest’ (o sea, invitado, huésped). Y que, por tanto, se deben instalar en cada máquina virtual que crees.
Por ejemplo, permiten interactuar entre anfitrión e invitado con el portapapeles (o arrastrar y soltar) compartido, mejoran el soporte de la función de compartir carpetas, o del ratón, o el uso de pendrives, e incluso del soporte 3D, facilitan ver la distro ‘full pantalla’ (con Ctrldcho-F)


¿Cómo instalar las GuestAdditions? 
La forma más fácil, que vale tanto para hacerlo la primera vez, como, sobre todo, cuando actualizas el Vbox y las nuevas GAdds aún no están en los repositorios, es descargarte la ISO e instalarlas desde ahí. Así que arrancamos la máquina virtual que hayamos instalado con VirtualBox y...
a) Descargar las GuestAdditions
Curiosamente, cuesta encontrarlas. Voy a facilitarlo: basta ir a la dirección web… 
https://download.virtualbox.org/virtualbox/
 y, ahí, buscar la versión del Vbox instalado y abrir la web ahí, donde las encontrarías. Por ejemplo, hoy, en… https://download.virtualbox.org/virtualbox/6.1.8/
b) Instalar las GuestAdditions
Lo primero, por si no están instalados todos los paquetes necesarios para compilar, hacer un
sudo aptitude install linux-headers-$(uname -r) build-essential 
A continuación, marcar que se cargue la ISO en el CDRom virtual (en la máquina virtual, desde ‘Dispositivos-unidades ópticas’) 
Y, cuando aparezca montado, en el escritorio, solo queda abrirlo. Entonces, con botón derecho ratón… ‘abrir en un terminal’ y, ahí, ejecutar el archivo VBoxLinuxAdditions.run, con privilegios de root (terminal root o con sudo). 
Pero atención, no vale 'pinchar en él, hay que hacerlo ‘como si fuese un script en Bash’, o sea, anteponiendo ‘sh’ o (a mi es como mejor me funciona), 'bash'. Así que...
.... # bash VboxLinuxAdditions.run
 Y ya está.
NOTA: otra forma, para no liarse mucho, es abrir una consola y con 'cd /media, dir, cd/cdrom0' (y otro dir, hasta encontrar el archivo a ejecutar), y finalmente, desde la propia consola de usuario,  hacer un
sudo bash VboxLinuxAdditions.run
para instalarlo


Carpetas compartidas
Este es un tema interesante, siempre viene bien compartir archivos entre el anfitrión y el invitado, y yo, de hecho, siempre marco, para compartir (y poder copiar, abrir, usar, archivos, desde el ‘guest’) toda mi /home.

Ya instaladas las GuestAdditions, lo primero que hay que saber es que las carpetas compartidas se deben montar en la ruta /media/sf_nombre
Lo del  'sf_...' es fundamental. Para ello tenemos que añadir nuestro usuario al grupo ‘vboxsf’. Así que (por poner mi caso) con privilegios de root (o con sudo)
… # adduser doc vboxsf 
y, confirmado, podemos ir a Dispositivos-carpetas compartidas y, ahí, configurar una carpeta compartida. Por ejemplo, para compartir toda mi /home, yo lo establezco así: 


Y, tras reiniciar la máquina virtual, ya me aparece montada, en mi máquina virtual, esa carpeta compartida, y puedo interactuar con ella.
Por cierto, un recordatorio: para saber los grupos que tienes, lo ves con 
cat /etc/group
Y para añadir un grupo, y un usuario a un grupo...
su - 
(es decir, ‘su’ seguido de un guión. Y, tras introducir la contraseña de root, ya como root, por ejemplo… 
…. # addgroup vboxusers 
y ahora, ya, ahí mismo (en mi caso, como usuario ‘doc’)… 
… # usermod -a -G vboxusers doc 
Y reiniciar la máquina virtual.
Pero vuelvo al tema: finalmente, otra pelea típica es con los pendrives. Así que…

Como habilitar en soporte de USB en VirtualBox
Aquí, me he vuelto loco, que si tengo que tener incluido mi usuario en el grupo vboxusers, etc. nunca me reconocía los pendrives (ni podía, por tanto, añadirlos en Configuración-USB (etc). Algo leí que había problemas, y que un pendrive USB no podría estar abierto, a la vez, en dos sistemas operativos, el anfitrión y el huesped. 
Pero recordé un truco que ya había mencionado anteriormente: Como el pendrive se monta, en el sistema anfitrión, en la carpeta /media… lo único que tendría que hacer es compartir esa carpeta.


Y funciona. Pero solo, de momento, cuando lo pongo como indico.
Y así como, con el 'Automontar' marcado, ya me aparece la carpeta compartida, del sistema anfitrión, '/media', con punto de montaje (en el sistema invitado) 'sf_pendrive', al arrancar la máquina virtual, basta abrirla, y, ahí a la carpeta (en mi caso) ‘ /media/doc/ ‘ y se encuentra el pendrive que haya ‘pinchado’.

No hay comentarios:

Publicar un comentario