python3 问题升级 20.04 -> 20.10

python3 问题升级 20.04 -> 20.10

因此,我尝试将 Xubuntu 从 20.04 升级到 20.10,但是在开始时就停止了:

Checking for a new Ubuntu releaseGet:1 Upgrade tool signature [819 B] 
Get:2 Upgrade tool [1,338 kB] 
Fetched 1,339 kB in 0s (0 B/s) 
authenticate 'groovy.tar.gz' against 'groovy.tar.gz.gpg' 
extracting 'groovy.tar.gz'
Reading cache
Checking package manager
Can not upgrade 
Your python3 install is corrupted. Please fix the '/usr/bin/python3' 
symlink.

我搜索了一下,发现这可能是由于 python3 没有指向你的发行版最初所属的 python 版本所致。但我的版本确实指向了(差不多)。

$ /usr/bin/python3 --version
Python 3.8.5

当然是 3.8.5 而不是 3.8.2,但这点差别重要吗?我真的必须降级吗?

我正在使用 update-alternatives,但只安装 3.8.5 3.8。

$ ls -l /usr/bin/python3
lrwxrwxrwx 1 root root 25 Jun 3 21:21 /usr/bin/python3 -> /etc/alternatives/python3
$ sudo update-alternatives --config python3
There is only one alternative in link group python3 (providing /usr/bin/python3): /usr/bin/python3.8
Nothing to configure.

请指教...谢谢!

答案1

是的,差异(3.8.5 与 3.8.2)很重要。

升级工具是针对python3随发行版安装的版本编写并测试的。

如果python3版本发生变化,结果可能不可信或失败(全部测试如果python3发生变化,则需要使用您安装的版本执行;该工具是已测试仅限提供的版本)。

guiverc@d960-ubu2:~$  rmadison python3
 python3 | 3.2.3-0ubuntu1   | precise          | all
 python3 | 3.2.3-0ubuntu1.2 | precise-updates  | amd64, armel, armhf, i386, powerpc
 python3 | 3.4.0-0ubuntu2   | trusty           | amd64, arm64, armhf, i386, powerpc, ppc64el
 python3 | 3.5.1-3          | xenial           | amd64, arm64, armhf, i386, powerpc, ppc64el, s390x
 python3 | 3.6.5-3          | bionic           | amd64, arm64, armhf, i386, ppc64el, s390x
 python3 | 3.6.7-1~18.04    | bionic-updates   | amd64, arm64, armhf, i386, ppc64el, s390x
 python3 | 3.8.2-0ubuntu2   | focal            | amd64, arm64, armhf, i386, ppc64el, riscv64, s390x
 python3 | 3.8.6-0ubuntu1   | groovy           | amd64, arm64, armhf, i386, ppc64el, riscv64, s390x
 python3 | 3.8.6-0ubuntu1   | hirsute          | amd64, arm64, armhf, i386, ppc64el, riscv64, s390x
 python3 | 3.8.6-1          | hirsute-proposed | amd64, arm64, armhf, i386, ppc64el, riscv64, s390x

答案2

这可以关闭。

事实证明,问题不在于我使用的是 python 3.8.5 而不是 3.8.2。相反,问题在于 update-alternatives 对 /usr/bin/python3 的符号链接。删除链接的符号链接并直接链接到 /usr/bin/python3.8(就像没有 update-alternatives 那样)解决了 20.10 升级问题,即使 python 仍然是 3.8.5 并且最终仍然引用相同的二进制文件。

我不需要更改 Python 版本,现在使用的是 Xubuntu 20.10。

相关内容