如何在Ubuntu系统中将Python 3.8.12安装至/usr/bin路径下
你当前把Python安装到Download文件夹是因为源码编译时没有指定安装前缀,默认将编译产物生成在当前操作目录导致的,以下针对你的三个问题逐一解答:
问题1:所有Python版本都必须存放在/usr/bin路径下吗?
不是。/usr/bin是Ubuntu系统包管理器(apt)管理的系统级二进制文件的默认存放路径,仅用于存放系统自带、或通过apt官方源安装的软件二进制。
自行编译、手动安装的Python版本可以放在任意路径,常见可选路径包括/usr/local/bin(全局用户可用的非系统管理软件路径)、用户目录下的~/.local/bin(仅当前用户可用),只要将对应路径添加到PATH环境变量中,就能在终端直接调用对应Python版本。
问题2:我是否需要手动将安装文件复制到/usr/bin路径下?
绝对不要这么操作。/usr/bin下的文件受apt管理,手动修改该路径下的内容可能会覆盖系统默认Python版本,导致依赖系统Python的apt、桌面组件等功能异常,严重时会造成系统故障。
如果需要全局使用你安装的Python 3.8.12,有两种更安全的方案:
- 重新编译安装时指定安装前缀:执行
./configure时添加参数--prefix=/usr/local,后续执行make install时会自动将二进制文件安装到/usr/local/bin路径下,该路径默认已经在系统PATH中,不会和系统自带Python冲突。 - 建立软链接:执行
ln -s /path/to/your/Download/python3.8.12/bin/python3.8 /usr/local/bin/python3.8,将你存放在Download目录下的Python二进制软链接到/usr/local/bin即可。
问题3:有没有办法通过apt-get命令安装python 3.8.12?
官方Ubuntu源不会保留Python的所有历史小版本,因此默认apt源无法直接安装精确到3.8.12的版本。你可以通过添加第三方PPA源的方式实现:
- 执行
sudo add-apt-repository ppa:deadsnakes/ppa添加维护Python各版本的第三方源 - 执行
sudo apt update刷新源缓存 - 执行
apt list -a python3.8查看源中提供的3.8系列所有可用版本,如果有3.8.12对应的版本号,直接执行sudo apt install python3.8=对应版本号即可安装。
如果PPA中也没有对应3.8.12的版本,只能通过源码编译的方式安装。
内容的提问来源于stack exchange,提问作者Boom
相关产品推荐
相关产品推荐

