TL; DR esto se puede solucionar rápidamente reiniciando . Entonces el CD-ROM funcionará y las adiciones de invitados serán instalables:
sudo reboot
La "mejor" secuencia para actualizar el kernel en VirtualBox con Adiciones es:
apt-get update
apt-get upgrade (or apt-get dist-upgrade)
reboot
(re)install VirtualBox Additions on the new kernel that is now running
apt-get autoremove
(Es posible que el kernel anterior al último no se elimine automáticamente por razones de seguridad, para permitirle "volver").
¿Cómo pasó esto? (respuesta larga anterior)
Exactamente este tipo de problema surgirá si usted:
- actualizar el kernel (digamos de .66 a .67)
- ejecutar
apt-get autoremove
y de alguna manera eliminar el núcleo en ejecución, o eliminar manualmente el núcleo "antiguo", eliminando así todos los módulos de /lib/modules/kernel.66
- no reinicie, manteniendo así el núcleo ".66" antiguo en ejecución. Los módulos cargados permanecen en la memoria y todo funciona, pero no se pueden cargar módulos nuevos ya que se han eliminado .66 módulos.
- intente hacer algo que requiera cargar un módulo que aún no se cargó
E instalar el ISO de VirtualBox puede requerir exactamente eso: cargar el módulo de soporte ISO9660.
El módulo solicitado ahora ya no puede cargarse automáticamente, porque el núcleo en ejecución (.66) no encuentra nada en /lib/modules/kernel.66. El módulo existe , pero está en /lib/modules/kernel.67, del cual el núcleo .66 actual no sabe nada (y no se recomienda cargar un módulo que no coincida).
Reinstalar el kernel sin nombre, por supuesto, reinstalará los módulos del kernel en ejecución, haciendo que ../.66/.../isofs.ko esté disponible nuevamente y haciendo innecesario el reinicio. Esta es una degradación del kernel instalado y el problema de actualización continuará (ver más abajo).
Es decir, cuando ejecuta Additions CD, se instalará para el núcleo .66 en ejecución , no para el núcleo .67 actualizado (que todavía no se está ejecutando).
Si se encuentra en tal situación una también se puede desde luego solucionarlo reiniciando (el nuevo núcleo en ejecución 0,67 encontrará sus módulos), y , probablemente, al cargar el módulo perteneciente al nuevo núcleo ( isofs
es bastante estable), que a menos que haya se sometió a una actualización importante del núcleo que seguirá siendo compatible (¡ esto todavía no se recomienda! ):
# mount /dev/cdrom /mnt
mount: unknown filesystem type 'iso9660'
Esto es el error raíz que está recibiendo ("tipo de sistema de archivos desconocido").
# uname -a
Linux virtual 3.13.0-66-generic ...
Entonces verificamos qué versión de los módulos está instalada. Debería ser .66:
# ls /lib/modules
3.13.0-67-generic
... pero solo hay un directorio y es .67 (el directorio .66 puede estar allí, pero vacío; en este caso du -sh /lib/modules/*
indicará cuánto espacio ocupan los distintos directorios, lo que permite distinguir entre los vacíos y los completos).
Reinstalar la antigua imagen del núcleo sin volver a ejecutar no solucionará el problema real
Vuelva a instalar el núcleo .66 con sus módulos y encabezados. Ahora tiene ambos núcleos, con grub
set para cargar el .67 más nuevo.
El CD-ROM ISO se puede montar (porque el módulo ya está presente) y los módulos VBox se compilarán (porque se han instalado los encabezados).
Compilará módulos para el núcleo .66 en ejecución, y funcionarán ... por un tiempo.
En el primer reinicio, se encontrará con un núcleo .67 sin adiciones de VirtualBox.
Reinstalar la imagen antigua del kernel con re-grub y reinicio tampoco solucionará el problema real
Como se indicó anteriormente, reinicia y se encuentra con un kernel degradado. Muy pronto, Ubuntu intentará actualizarlo y volverá a donde comenzó (ver más abajo: "degradación del kernel").
Los parches en el módulo ISO tampoco solucionarán el problema real
Lo más probable es que podamos forzar la carga del módulo ISO9660 de todos modos, ya que no se realizó ningún trabajo entre los núcleos 66 y 67 y el binario esencialmente no ha cambiado, por lo que intentamos:
# insmod /lib/modules/3.13.0-67-generic/kernel/fs/isofs/isofs.ko
Sin errores. Funcionó. Kernel .66 módulo cargado del kernel .67. Intentemos nuevamente montar el CD-ROM:
# mount /dev/cdrom /mnt
mount: block device /dev/sr0 is write-protected, mounting read-only
Esto todavía no ayudará, porque el CD que se está instalando es VirtualBox Additions, que requiere la instalación de los encabezados del kernel en ejecución . Si los módulos del kernel en ejecución ya no están allí, lo más probable es que tampoco los encabezados del kernel.
Además, los módulos de Virtualbox recién compilados no tendrán a dónde ir, ya que el directorio de módulos .66 se ha limpiado.
Pero supongamos que soluciona todo eso: esencialmente ha realizado una rebaja de kernel costosa (y parcial), y las adiciones se perderán en la próxima actualización junto con el resto del kernel .66, exactamente como en el caso anterior.
La degradación del núcleo funcionará ... por un tiempo
Si nos quitamos el kernel 0.67 y volver a instalar el kernel de 0.66 con los módulos en su lugar, las cosas van a ser miel sobre hojuelas por un tiempo. No es necesario reiniciar, como en la solución anterior "forzar módulo ISO".
Y un reinicio no perderá nada, ya que no está instalado ningún kernel desafiado por Additions.
Pero de esta manera, el kernel seguirá estando en la lista "para actualizarse", y este mismo problema se presentará tarde o temprano.
De acuerdo, ahora puede hacer que surja en algún momento más apropiado de su elección, lo que podría valer bastante.
¡Solo reinicia!
Al reiniciar, se activará el núcleo .67 más reciente y todos sus módulos y encabezados estarán allí.
Entonces, después del reinicio, Guest Additions funcionará y la actualización "tomará".