web-dev-qa-db-fra.com

Pourquoi dois-je recharger les modules du noyau pour virtualbox après une mise à jour du noyau?

Après la dernière mise à niveau du noyau dans Ubuntu 12.10, j'ai dû recharger manuellement deux modules de noyau pour Virtualbox.

modprobe vboxdrv et modprobe vboxnetflt

Je ne connais pas assez le système pour dire s’il s’agit d’un bogue ou s’il est supposé être comme ça, mais c’est plutôt gênant. En tant que nouvel utilisateur d’Ubuntu, il était assez fastidieux de savoir ce qui devait être fait.

C'était une mise à jour automatique, qui m'a demandé de redémarrer à la fin. Après le redémarrage, les machines virtuelles ne fonctionnaient pas tant que je n'avais pas rechargé les modules.

Donc mes questions sont: est-ce normal? Cela se produira-t-il avec d'autres packages, ou simplement avec Virtualbox? Le programme de mise à jour est-il censé le faire automatiquement? Devrais-je déposer un rapport de bogue, et si oui, à qui?

10
Ammon

Les modules VirtualBox Host sont construits à partir du code source de votre machine. Les modules pour un noyau ne fonctionneront pas nécessairement (ou fonctionneront correctement) sur un autre noyau. Ils sont généralement recompilés après la mise à niveau du noyau.

Lorsque vous installez une nouvelle version du noyau, votre ancien noyau est toujours en cours d'exécution. Comme Javier Rivera dit , vous devez redémarrer pour utiliser le nouveau noyau.

Donc, si votre objectif est d’exécuter VirtualBox sur le nouveau noyau , vous devez redémarrer; les modules seront chargés quand vous le ferez (après avoir été reconstruit à partir de la source si nécessaire).

Toutefois, si votre objectif est d’utiliser les anciens modules avec l’ancien noyau, vous pouvez les recharger manuellement avec modprobe (comme vous l’avez fait).

Si vous pensez que les modules de VirtualBox ne fonctionnent pas pour le noyau en cours d'exécution avant le redémarrage, vous pouvez les signaler. Si vous utilisez la version de VirtualBox fournie officiellement dans Ubuntu (plutôt que la version provenant de la source logicielle d’Oracle), je vous recommande de le signaler contre VirtualBox en aval (c’est-à-dire contre VirtualBox d’Ubuntu). Veuillez lire ce guide attentivement au préalable. Vous trouverez également des informations utiles sur les rapports de bogues dans cette question .

Si vous pouvez produire cela avec la version amont de VirtualBox (, surtout si cela se produit sur des systèmes non Ubuntu, mais je ne pense pas que ce soit essentiel ici), je vous recommande de le signaler ( ou également en le signalant) en amont (recherche en premier).

Je recommande de ne pas accepter cette réponse immédiatement; peut-être que quelqu'un peut mieux expliquer pourquoi les modules sont déchargés.

2
Eliah Kagan

Si vous deviez exécuter '/etc/init.d/vboxdrv setup' après la mise à jour et avant de charger les nouveaux modules du noyau, assurez-vous que dkms est installé et mis à jour correctement. C'est le composant qui a recompilé les modules lorsque vous redémarrez après la mise à jour du noyau, il devrait également charger les modules une fois l'opération terminée. C'est la seule circonstance où je pourrais réussir à ce que mes tests échouent. Si ce n'est pas le cas, je suivrais le conseil d'Eliah et déposerais un rapport de bogue.

2
sean_m