Respuestas:
La versión TL; DR para Debian 9 es, como root:
echo deb http://ftp.debian.org/debian stretch-backports main contrib > /etc/apt/sources.list.d/stretch-backports.list
apt update
apt install virtualbox-guest-dkms virtualbox-guest-x11 linux-headers-$(uname -r)
Eso es todo, están instalados los VirtualBox Guest Additions.
VirtualBox no está disponible en Debian 10, y tampoco estará disponible en buster-backports
. Lucas Nussbaum tiene un conjunto no oficial de paquetes; si desea usarlos, debe seguir sus instrucciones (solo vinculados; si el enlace deja de ser válido, los paquetes probablemente tampoco estén disponibles, por lo que copiar las instrucciones aquí no tiene sentido).
Más detalladamente, aquí está la solución para Debian 7, 8 y 9, usando paquetes Debian:
para Debian 7 y 8, habilite los contrib
repositorios; Por ejemplo, para Debian 8, asegúrese de que /etc/apt/sources.list
contiene algo como
deb http://ftp.debian.org/debian jessie main contrib
para Debian 9, habilite backports con contrib
; para hacerlo, agregue una línea como
deb http://ftp.debian.org/debian stretch-backports main contrib
a /etc/apt/sources.list
(o mejor aún, un stretch-backports.list
archivo /etc/apt/sources.list.d
);
instalar virtualbox-guest-dkms
, encabezados de kernel y, opcionalmente, virtualbox-guest-x11
(para las utilidades gráficas de invitados):
sudo apt update
sudo apt install virtualbox-guest-dkms virtualbox-guest-x11 linux-headers-$(uname -r)
(con -t stretch-backports
after install
en la segunda línea si está utilizando Debian 9).
Eso es todo lo que se necesita: no necesita montar las adiciones de invitados en su VM ni ejecutar el instalador. Puede agregar las tres líneas de invocaciones de shell a su Vagrantfile
(o lo que sea que use para aprovisionar sus máquinas virtuales) y olvidarse de ellas.
La instalación del virtualbox-guest-dkms
paquete asegurará que los módulos de kernel apropiados se construyan automáticamente (y se reconstruyan cuando se actualice el kernel) e instalará las adiciones de invitados.
(Tenga en cuenta que esto instalará la versión de las adiciones de invitados disponibles en cualquier versión de Debian que esté utilizando en la VM , que puede no coincidir con la versión de Virtual Box que ejecuta la VM, pero las adiciones de invitados aún deberían funcionar bien).
Siga estos pasos para instalar VirtualBox Guest Additions en su máquina virtual Linux Debian:
Abra la terminal y conviértase root
( su
); si ha sudo
habilitado, también puede hacer, por ejemplo sudo -i
; ver man sudo
para todas las opciones):
su
ingrese la contraseña de root y presione enter
alternativamente, puede usarlo sudo -s
si lo tiene instalado y el usuario donde inició sesión tiene los derechos necesarios ...
Actualizar caché APT :
apt-get update
Instale las últimas actualizaciones de seguridad:
Este paso actualizará todos sus paquetes, así que sea prudente al respecto. Pruebe los siguientes pasos primero y puede que sean suficientes para funcionar si no, luego realice la actualización y vuelva a intentarlo.
apt-get upgrade
Instale estos paquetes requeridos:
Los paquetes
build-essential
ymodule-assistant
ambos son necesarios para poder compilar los módulos del kernel y, por lo tanto, al instalar VirtualBox Linux Guest Additions debe tenerlos. Entonces, este comando obtendrá los encabezados y paquetes (compiladores y bibliotecas) necesarios para funcionar. Tenga en cuenta que, después de instalar VirtualBox Linux Guest Additions, dejará algunos paquetes y encabezados de Linux, que puede eliminar después o no. En mi caso, no duelen, pero por el bien del sistema, es posible que desee retomar después de jugar.
apt-get install build-essential module-assistant
Configure su sistema para construir módulos de kernel:
m-a prepare
Insertar adiciones de invitados ISO:
Expanda el menú Dispositivos y haga clic en Insertar imagen de CD de Guest Additions ...
Debería montarse automáticamente, pero si por alguna razón no lo hace:
mount /media/cdrom
Ejecute el siguiente script:
sh /media/cdrom/VBoxLinuxAdditions.run
Reinicie el sistema:
reboot
sudo apt-get update && sudo apt-get install linux-headers-`uname -r`
m-a prepare
debe extraer el linux-headers
paquete, todas las instrucciones funcionan bien en una instalación de Debian 9.
Una alternativa a la instalación de complementos invitados de VirtualBox desde el repositorio de Debian es utilizar fuentes del proveedor. Se espera que el repositorio proporcione código más antiguo y más estable, mientras que las fuentes del proveedor tendrán las últimas características y actualizaciones de seguridad.
He intentado con éxito las siguientes instrucciones en el invitado Debian 9.4 que ejecuta el kernel de Linux 4.9.0-4 usando VirtualBox 5.0.30 y OS X 10.11.6. Primero, adjunte la imagen ISO de los complementos invitados a la máquina virtual y luego iníciela. Después del arranque, el contenido de la imagen estaría disponible en /media/cdrom0/
. Primero, hay dos paquetes y sus dependencias que deben instalarse:
$ sudo apt-get install linux-headers-$(uname -r) build-essential
Luego, ejecute el script proporcionado por el proveedor que construye e instala los módulos de kernel necesarios:
$ cd /media/cdrom0/
$ sudo sh VBoxLinuxAdditions.run
¡Reinicia la máquina virtual y disfruta!
En Debian 9, el paquete virtualbox-guest-dkms está en el repositorio inestable (sid).
Agregue esto a /etc/apt/sources.list
:
deb http://http.us.debian.org/debian sid main non-free contrib
Actualizar repositorios e instalar paquete
sudo apt-get update
sudo apt-get install virtualbox-guest-dkms
Opcionalmente: deshabilite el repositorio sid, ya que tiene actualizaciones para paquetes que quizás no desee.
/vagrant
en la VM. Dado que esa montura fue la razón por la que quería las adiciones de invitados, todavía está efectivamente rota.