web-dev-qa-db-fra.com

Impossible d'installer les ajouts d'invité: type de système de fichiers inconnu 'iso9660'

Exécuter Ubuntu 14.04 sur Oracle VirtualBox 4.3.24 et s’arrêter complètement avec l’ajout d’invités de montage. J'ai passé pas mal de temps à chercher une solution en ligne, mais rien ne m'a aidé ...

enter image description here

Comme suggéré ci-dessous, j'ai essayé de monter manuellement et de télécharger ISO depuis le Web (version correspondant à VirtualBox). La même erreur:

enter image description here

MODIFIER:

Maintenant, certains dossiers sont devenus "en lecture seule", ce qui pose de gros problèmes. Même installer de nouvelles images Ubuntu 14.04 n'aide pas ... Donc, la réinstallation de VirtualBox elle-même ...

26
Oleg Shirokikh

J'ai pu résoudre le problème de montage en réinstallant l'image Linux:

Sudo apt-get install --reinstall linux-image-$(uname -r)

BTW, tout a commencé avec la mise à niveau de VirtualBox. Le Presse-papiers bidirectionnel a cessé de fonctionner. J'ai donc essayé de réinsérer l'image ISO des ajouts d'invités. Cela a provoqué des choses ci-dessus. Maintenant, les ajouts d'invités sont montés à l'arrière, mais le presse-papiers ne fonctionne pas ...

42
Oleg Shirokikh

TL; DR cela peut être rapidement corrigé en redémarrant . Ensuite, le CD-ROM fonctionnera et les ajouts d’invités pourront être installés:

 Sudo reboot

La "meilleure" séquence pour mettre à jour le noyau sur VirtualBox avec Additions est la suivante:

 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

(L'ancien noyau le plus récent ne sera peut-être pas automatiquement supprimé pour des raisons de sécurité, afin de vous permettre de "revenir en arrière").

Comment est-ce arrivé? (réponse longue précédente)

Exactement ce genre de problème se posera si vous:

  • mettre à jour le noyau (par exemple de .66 à .67)
  • lancez apt-get autoremove et en quelque sorte supprimez le noyau en cours d’exécution, ou supprimez manuellement le "vieux" noyau, supprimant ainsi tous les modules de /lib/modules/kernel.66
  • ne redémarrez pas, gardant ainsi le "vieux" noyau .66 en marche. Les modules chargés restent en mémoire et tout fonctionne, mais , aucun nouveau module ne peut être chargé car les modules .66 ont été supprimés.
  • essayez de faire tout ce qui nécessite le chargement d'un module qui n'était pas encore chargé

Le module demandé ne peut plus être chargé automatiquement, car le noyau en cours d'exécution (.66) ne trouve rien dans /lib/modules/kernel.66. Le module existe , mais il se trouve dans /lib/modules/kernel.67, dont le noyau actuel ne connaît rien (et il n'est pas recommandé de charger un module incompatible). .

La réinstallation du noyau uname'd va bien sûr réinstaller les modules du noyau en cours d’exécution, rendant ainsi à nouveau disponible ../.66/.../isofs.ko et rendant inutile un redémarrage. Il s'agit d'une rétrogradation du noyau installé et le problème de la mise à jour restera (voir ci-dessous).

Autrement dit, lorsque vous exécutez le CD d’additions, il s’installera pour le noyau en cours d’exécution .66, et non . le noyau mis à jour .67 (qui n'est toujours pas en cours d'exécution).

Si vous êtes dans une telle situation, vous pouvez également certainement le réparer en redémarrant (le nouveau noyau .67 en cours de fonctionnement trouvera ses modules), et probablement en chargeant le module appartenant au nouveau noyau (isofs est assez stable), qui, à moins d'une mise à niveau importante du noyau, sera toujours compatible (, cela n'est toujours pas recommandé! ):

# mount /dev/cdrom /mnt
mount: unknown filesystem type 'iso9660'

Ceci est l’erreur racine que vous obtenez ("type de système de fichiers inconnu").

# uname -a
Linux virtual 3.13.0-66-generic ...

Nous vérifions donc quelle version des modules est installée. Il devrait être 0,66:

# ls /lib/modules
3.13.0-67-generic

... mais il n'y a qu'un seul répertoire et il est .67 (le répertoire .66 peut être là, mais vide; dans ce cas, du -sh /lib/modules/* indiquera combien d'espace est pris par les divers répertoires, ce qui permet de distinguer entre les répertoires vides et les répertoires complets) .

Réinstaller l'ancienne image du noyau sans re-grub ne résoudra pas le vrai problème

Vous réinstallez le noyau .66 avec ses modules et en-têtes. Vous avez maintenant les deux noyaux, avec grub défini pour charger le nouveau .67.

Le CD-ROM ISO peut être monté (car le module est maintenant présent) et les modules de la VBox seront compilés (car les en-têtes ont été installés).

Il compilera les modules pour le noyau .66 en cours d’exécution, et ils fonctionneront ... pendant un certain temps.

Lors du premier redémarrage, vous vous retrouverez avec un noyau .67 sans aucun ajout à VirtualBox.

Réinstaller l'ancienne image du noyau avec re-grub et re-boot ne résoudra pas non plus le problème

Comme ci-dessus, vous redémarrez et vous vous retrouvez avec un noyau déclassé. Très bientôt, Ubuntu va essayer de le mettre à jour et vous serez de retour à votre point de départ (voir ci-dessous: "downgrading kernel").

Les correctifs dans le module ISO ne résoudront pas non plus le vrai problème

Il est fort probable que nous pouvons forcer le chargement du module ISO9660 de la même manière, puisqu’aucun travail n’a été effectué entre les noyaux 66 et 67 et que le fichier binaire est essentiellement inchangé. Nous essayons donc:

# insmod /lib/modules/3.13.0-67-generic/kernel/fs/isofs/isofs.ko

Aucune erreur. Ça a marché. Noyau .66 module chargé à partir du noyau .67. Essayons à nouveau de monter le CD-ROM:

# mount /dev/cdrom /mnt
mount: block device /dev/sr0 is write-protected, mounting read-only

Cela n’aide toujours pas, car le CD en cours d’installation est VirtualBox Additions, ce qui nécessite l’installation des en-têtes du noyau en cours d’exécution . Si les modules du noyau en cours ne sont plus là, il est probable que les en-têtes du noyau ne le seront pas non plus.

De plus, les modules Virtualbox nouvellement compilés n'auront nulle part où aller, car le répertoire des modules .66 a été nettoyé.

Mais disons que vous corrigez tout cela: vous avez essentiellement effectué une rétrogradation du noyau coûteuse (et partielle), et les ajouts seront perdus lors de la mise à niveau suivante avec le reste du noyau .66, exactement comme dans le cas précédent.

Rétrograder le noyau fonctionnera ... pendant un moment

Si nous supprimons le noyau .67 et réinstallons le noyau .66 avec des modules à la place, les choses seront heureuses pendant un moment. Aucun redémarrage nécessaire, comme dans la solution "Force ISO module" ci-dessus.

Et un redémarrage ne perdra rien, puisqu'un noyau non sollicité par Additions n'est installé.

Mais de cette façon, le noyau sera toujours dans la liste "à mettre à jour", et ce même problème se posera forcément tôt ou tard.

Certes, vous pouvez maintenant le faire apparaître à un moment plus approprié de votre choix, qui pourrait valoir beaucoup.

Il suffit de redémarrer!

En redémarrant, le plus récent noyau .67 sera activé et tous ses modules et en-têtes sont là.

Ainsi, après le redémarrage, Guest Additions fonctionnera et la mise à niveau "prendra".

13
LSerni

Selon d'autres réponses, cela peut généralement être corrigé par un redémarrage.

Le module "iso9660" n’a pas été chargé. depmod analyse tous les modules et crée des dépendances de modules.

Sudo depmod -a
Sudo mount /dev/sr0 /mnt
ls -l /mnt

cela résoudra le problème.

4
Arul

J'ai résolu ce problème (sous Ubuntu 16.04) en mettant à jour les paquets et en redémarrant:

Sudo apt-get update
Sudo apt-get upgrade
Sudo reboot
1
Johannes Hoff

Dans mon cas, la solution suivante a aidé:

en invité Ubuntu

Sudo apt-get install virtualbox-guest-additions-iso

Je pense que certaines dépendances qui ont été installées résolvent le problème

1
Lostboy

Essayez de le monter manuellement:

  • Ouvrez un terminal.
  • Tapez les commandes suivantes:

    Sudo mount /dev/sr0 /mnt
    ls -l /mnt
    
  • Ensuite, si le contenu du CD est affiché, ouvrez/mnt dans Nautilus (gestionnaire de fichiers a.k.a) et intégrez les ajouts d’invités.

Si ces étapes ne fonctionnent pas, essayez ceci:

  • Téléchargez l'ISO des ajouts invités à partir de la VM (via le site Web de virtualbox).
  • Faites un clic droit dessus -> Ouvrir avec ... -> Monteur d'image disque.
  • Ouvrez le disque nouvellement monté.
0
Helio