我的笔记本电脑上运行着 Ubuntu 20.04,其中有以下版本的 Python:
python2
python3.10
python3.9
python3-pasteurize
python2.7
python3.8
python3-config
python-argcomplete-check-easy-install-script
python3
python3.8-config
python3-futurize
python-argcomplete-tcsh
我知道 Ubuntu 依赖其中一些,我可以安全地删除哪些?
编辑:
正如评论中所要求的,这里是输出ls -l /usr/bin/python[23]* /usr/local/bin/python[23]*
:
ls: cannot access '/usr/local/bin/python[23]*': No such file or directory
lrwxrwxrwx 1 root root 9 Mar 13 2020 /usr/bin/python2 -> python2.7
-rwxr-xr-x 1 root root 3674216 Mar 8 2021 /usr/bin/python2.7
lrwxrwxrwx 1 root root 9 Mar 12 2021 /usr/bin/python3 -> python3.8
-rwxr-xr-x 1 root root 5454136 Oct 5 00:09 /usr/bin/python3.10
-rwxr-xr-x 1 root root 5490488 Sep 28 18:10 /usr/bin/python3.8
lrwxrwxrwx 1 root root 33 Sep 28 18:10 /usr/bin/python3.8-config -> x86_64-linux-gnu-python3.8-config
-rwxr-xr-x 1 root root 5405872 Sep 10 01:20 /usr/bin/python3.9
lrwxrwxrwx 1 root root 16 Mar 13 2020 /usr/bin/python3-config -> python3.8-config
-rwxr-xr-x 1 root root 384 Mar 28 2020 /usr/bin/python3-futurize
-rwxr-xr-x 1 root root 388 Mar 28 2020 /usr/bin/python3-pasteurize
答案1
以下两点很重要:
lrwxrwxrwx 1 root root 9 Mar 13 2020 /usr/bin/python2 -> python2.7
lrwxrwxrwx 1 root root 9 Mar 12 2021 /usr/bin/python3 -> python3.8
任何以 python2 开头的程序都需要 python 2.7。python3 也是如此:它需要 python3.8。为了安全起见:也保留 python2.7;它可能不需要,但删除它可能会破坏系统。
所有其他版本都是手动添加的。删除这些版本将使系统保持运行,但会删除与其相关的所有软件。因此,在删除apt purge
或安装时请检查软件包apt remove
。如果您也计划删除 2.7,请特别注意系统将同时删除哪些内容。
答案2
您还可以运行apt rdepends --installed python3.9
来找出所依赖的包python3.9
。
apt rdepends --installed python3.8
这是我的计算机上安装的版本的示例输出:
python3.8
Reverse Depends:
python3.8-minimal
python3.8-minimal
python3-uno
rhythmbox-plugins
python3.8-minimal
python3
python3-uno
xviewer-plugins
答案3
Ubuntu 20.04 中的默认 Python 版本是 Python 3.8。所有其他版本都是您自己安装的(或您安装的某些版本的依赖项)。
因此系统只依赖于 3.8,但您的其他应用程序或项目可能依赖于其他版本(包括 Python 2/2.7)。