Manjaro(Arch Linux)无法安装pip:文件获取失败问题求助
问题描述
尝试在Manjaro(Arch Linux)终端安装pip,执行命令:
sudo pacman -S python-pip
出现以下下载错误:
python-pip-22.3-1-any.pkg.tar.zst failed to download
Total (1/7) 3.9 MiB 80.0 KiB/s 00:50 [#######################################################################################] 100%
error: failed retrieving file 'python-pip-22.3-1-any.pkg.tar.zst' from mirrors.ustc.edu.cn : SSL connection timeout
error: failed retrieving file 'python-pip-22.3-1-any.pkg.tar.zst' from mirror.csclub.uwaterloo.ca : The requested URL returned error: 404
error: failed retrieving file 'python-pip-22.3-1-any.pkg.tar.zst' from mirror.tarnkappe.info : The requested URL returned error: 404
error: failed retrieving file 'python-pip-22.3-1-any.pkg.tar.zst' from mirrors.ucr.ac.cr : SSL connection timeout
error: failed retrieving file 'python-pip-22.3-1-any.pkg.tar.zst' from manjaro.ipacct.com : The requested URL returned error: 404
error: failed retrieving file 'python-pip-22.3-1-any.pkg.tar.zst' from mirror.alpix.eu : The requested URL returned error: 404
warning: failed to retrieve some files
error: failed to commit transaction (failed to retrieve some files)
Errors occurred, no packages were upgraded.
疑问:
- 如何解决该安装失败问题?
- pip为何未与Python一同打包?
解决方案
方案1:更新软件包索引并切换稳定镜像源
这是最常用的解决方法,步骤如下:
- 强制刷新本地软件包数据库,同步最新的仓库信息:
sudo pacman -Syy - 使用Manjaro镜像管理器选择国内低延迟镜像:
在弹出的界面中选择延迟最低的镜像,确认后重新执行安装命令:sudo pacman-mirrors -i -c China -m ranksudo pacman -S python-pip
方案2:手动下载并安装软件包
如果镜像源问题仍未解决,可以手动下载对应包文件安装:
- 找到适配你系统的
python-pip包(版本需与仓库索引一致) - 将包文件下载到本地后,执行本地安装命令:
注意替换sudo pacman -U /path/to/python-pip-xxx-any.pkg.tar.zst/path/to/为实际的文件路径。
pip未随Python打包的原因
Arch系发行版(包括Manjaro)遵循最小化、按需安装的设计原则:
- Python核心包仅保留运行基础代码的必要组件,pip作为第三方包管理工具被拆分出来,让用户自主选择是否安装
- 独立拆分后,pip可以单独更新版本,不受Python版本更新的绑定限制
- 减少系统默认安装的依赖数量,保持系统轻量化
内容的提问来源于stack exchange,提问作者Saksham Sahgal

