do-release-upgrade
を使用して13.10から14.04(現時点では開発者、数時間で安定)にアップグレードしていて、次の問題が発生しました。
Can not upgrade
Your python install is corrupted. Please fix the '/usr/bin/python' symlink.
少しいじって問題を解決したので、ここで解決策を共有したいと思います。これが誰かを助けることを願っています。
私の問題は、エラーメッセージに示されているように、変更された/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
これは正しいです:
Sudo update-alternatives --remove-all python
Sudo ln -sf /usr/bin/python2.7 /usr/bin/python
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
を使用できませんでした。
私のために働く。それもあなたのお役に立てば幸いです。
/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.10
を19.04
にアップグレードするときに必要でした。