web-dev-qa-db-fra.com

'mount: erreur lors du chargement des bibliothèques partagées: libudev.so.0: erreur de ce type de fichier ou de répertoire' lors du démarrage

J'essayais de charger une version de CGminer qui renvoyait une erreur de type libudev et suivais une solution supposée ici mais cela détruit mon système (semble-t-il).

J'ai chargé le système en mode de récupération à partir de GRUB, mais tout ce que j'ai fait est en fait de me dire ce que quelque chose ne fonctionne pas, je ne sais pas quoi faire ensuite.

Je pense que j'ai en quelque sorte associé un libudev.so.0 à 1 ou 1 à 0, je ne suis pas sûr de ce que j'ai fait et de la façon de le réparer.

4
user199551

Je vois que certaines des solutions affichées sur l'autre question écrasent libudev.so.0, à cause de l'option -f fournie à ln. Ceci n'est pas dû à une intention malveillante, mais au fait que ces solutions ont été conçues pour les versions plus récentes d'Ubuntu, dans lesquelles le paquetage libudev1 est utilisé. La solution crée libudev.so.0 lien symbolique. Mais dans 12.04, libudev0 est utilisé. Ainsi, le fichier de bibliothèque libudev.so.0 est écrasé par un lien symbolique brisé vers libudev.so.1 qui n'existe pas. Les solutions n'auraient pas dû inclure l'option -f pour ln dans la ligne de commande, ce qui écrase les fichiers.

Assez de l'explication, voici une solution:

Fondamentalement, le fichier de bibliothèque est remplacé par un lien symbolique brisé. Démarrez en mode de récupération et sélectionnez l'option Shell racine. Puis exécutez cette commande: apt-get install libudev0. Une fois que vous avez terminé, tapez exit et redémarrez. Si vous utilisez le WiFi, téléchargez le paquet libudev0 et copiez-le dans un lecteur USB. Ensuite, dans le shell racine en cours de récupération, branchez le lecteur USB et exécutez: (astuce: vous pouvez utiliser Tab pour compléter automatiquement de nombreux éléments, y compris les chemins d'accès aux fichiers)

Sudo mount -o remount, rw / # (re)mount the filesystem in read-write mode.
mkdir /media/usb
mount /dev/sdb1 /media/usb
dpkg -i /media/usb/path_to_package_file

Ensuite, redémarrez et si tout va bien votre système devrait fonctionner.

11
Ramchandra Apte