GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Lsb_release - Impossible de convertir la chaîne en flottant :'8.04 Lts' ?

Tout ce qui dépend de la lsb_release La commande ne fonctionne pas sur mon ordinateur.

exemple :

pip install numpy

raise subprocess.CalledProcessError(code, cmd, stdout, stderr) subprocess.CalledProcessError :la commande 'lsb_release -a' a renvoyé un état de sortie différent de zéro 1

Et en fait, lsb_release -a génère une erreur

File "/usr/bin/lsb_release", line 95, in <module>
    main()
  File "/usr/bin/lsb_release", line 59, in main
    distinfo = lsb_release.get_distro_information()
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 383, in get_distro_information
    distinfo = guess_debian_release()
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 281, in guess_debian_release
    get_distro_info(distinfo['ID'])
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 41, in get_distro_info
    RELEASES_ORDER.sort(key=lambda n: float(n[0]))
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 41, in <lambda>
    RELEASES_ORDER.sort(key=lambda n: float(n[0]))
ValueError: could not convert string to float: '8.04 LTS'

Je sais qu'en python '8.04 LTS' ne peut pas être converti en un float , mais pourquoi cela se produit-il.

J'ai essayé de réinstaller les deux lsb_release et python-pip mais cela ne résout pas le problème.

Je suis sur Ubuntu 16.04 LTS .
une aide ?

Réponse acceptée :

J'ai eu la même erreur sur l'une de mes VM, les 2 autres et l'hyperviseur allaient bien. Même version (16.04.3), pas la moindre idée de ce qui l'a causé. C'est un bogue connu.

J'ai un peu de soulagement ici

Modifiez le fichier /usr/share/pyshared/lsb_release.py ligne 41 de :

RELEASES_ORDER.sort(key=lambda n: float(n[0])) 

à :

RELEASES_ORDER.sort(key=lambda n: float(n[0].split()[0]))

Correction du problème pour moi. Crédit complet à SHIINA Hideaki (shiina) sur la barre de lancement des bogues d'Ubuntu. Je ne fais que le republier ici.


Ubuntu
  1. Lire un fichier orienté ligne qui ne se termine peut-être pas par une nouvelle ligne ?

  2. Comment passer une chaîne (pas un fichier) à Openssl ?

  3. Comment convertir un fichier son en Opus ?

  4. La restauration des sauvegardes échoue Ubuntu 16.04 ?

  5. Dans Bash, comment ajouter une chaîne après chaque ligne dans un fichier ?

Convertir les noms de fichiers en minuscules via la ligne de commande Ubuntu

Association de fichiers à une application non répertoriée ?

Ajouter une ligne à un fichier uniquement s'il n'existe pas déjà

ajouter une ligne à un fichier UNIQUEMENT s'il n'est pas déjà dans le fichier

comment restreindre la longueur de la chaîne présente dans une ligne en utilisant Linux

Convertir les fins de ligne Unix en Windows