web-dev-qa-db-ja.com

「pythonインストールが破損している」の修正方法は?

do-release-upgradeを使用して13.10から14.04(現時点では開発者、数時間で安定)にアップグレードしていて、次の問題が発生しました。

Can not upgrade 

Your python install is corrupted. Please fix the '/usr/bin/python' symlink.

少しいじって問題を解決したので、ここで解決策を共有したいと思います。これが誰かを助けることを願っています。

34
4ae1e1

私の問題は、エラーメッセージに示されているように、変更された/usr/bin/pythonシンボリックリンクのみが原因であることが判明しました。 update-alternatives/usr/bin/pythonを使用していたので、/etc/alternatives/pythonを指していました。 do-release-upgradeはこのシンボリックリンクでは非常に厳密であり、update-alternativesでpython2.7を選択するだけでは十分ではないことが判明したため、最終的に元の状態に強制しました。

Sudo ln -sf /usr/bin/python2.7 /usr/bin/python

そしてそれは問題を解決しました。

これがうまくいかない場合は、pythonインストールが完全に破損していると思います。お勧めします

Sudo apt-get install --reinstall python
52
4ae1e1

これは正しいです:

Sudo update-alternatives --remove-all python
Sudo ln -sf /usr/bin/python2.7 /usr/bin/python
14
Vitaliy Kulikov

Ubuntu 18.10でも同じ問題があります。

/ usr/bin/pythonは古いバージョンにリンクされています。 2.7以降でも利用可能ですが、この超スマートなプロセスは(18.10で!)P 2.7を要求しています。だから私はそれを与え、受け入れられました。

これは私のためにそれを解決しました:

1)Sudo rm /usr/bin/pythonを実行して/ usr/bin/pythonを削除します

2)新しいリンクを作成Sudo ln -sf /usr/bin/python2.7 /usr/bin/python

18.10では、Sudo update-alternatives --remove-all pythonまたはSudo apt-get install --reinstall pythonを使用できませんでした。

私のために働く。それもあなたのお役に立てば幸いです。

3
opinion_no9

/usr/bin/python3に関してこれに遭遇した場合:

Sudo update-alternatives --remove-all python3
Sudo ln -sf /usr/bin/python3.6 /usr/bin/python3

python3.6ではなく、3.7をシンボリックリンクしてください。少なくともUbuntu 18.1019.04にアップグレードするときに必要でした。

0
Jana