WSL环境下通过VS Code安装pip及软件包失败求助
安装python3-pip时遇到404错误的排查与解决
问题场景
搭建本地开发环境时,执行sudo apt install python3-pip无法安装pip及依赖包,返回大量404 Not Found错误。
错误信息
Ign:1 <url> archive.ubuntu.com/ubuntu jammy-updates/main amd64 libc-dev-bin amd64 2.35-0ubuntu3.4 Ign:2 <url>archive.ubuntu<.com>/ubuntu jammy-updates/main amd64 linux-libc-dev amd64 5.15.0-89.99 Ign:3 <url>archive.ubuntu<.com>/ubuntu jammy-updates/main amd64 libc6-dev amd64 2.35-0ubuntu3.4 Ign:4 <url>archive.ubuntu<.com>/ubuntu jammy-updates/main amd64 libtiff5 amd64 4.3.0-6ubuntu0.6 Ign:5 <url>archive.ubuntu<.com>/ubuntu jammy-updates/main amd64 libc-devtools amd64 2.35-0ubuntu3.4 Ign:6 <url>archive.ubuntu<.com>/ubuntu jammy-updates/main amd64 libpython3.10-dev amd64 3.10.12-1~22.04.2 Ign:7 <url>archive.ubuntu<.com>/ubuntu jammy-updates/main amd64 python3.10-dev amd64 3.10.12-1~22.04.2 Err:1 <url>security.ubuntu<.com>/ubuntu jammy-updates/main amd64 libc-dev-bin amd64 2.35-0ubuntu3.4 404 Not Found [IP: 185.125.190.36 80] Err:2 <url>security.ubuntu<.com>/ubuntu jammy-updates/main amd64 linux-libc-dev amd64 5.15.0-89.99 404 Not Found [IP: 185.125.190.36 80] Err:3 <url>security.ubuntu<.com>/ubuntu jammy-updates/main amd64 libc6-dev amd64 2.35-0ubuntu3.4 404 Not Found [IP: 185.125.190.36 80] Err:4 <url>security.ubuntu<.com>/ubuntu jammy-updates/main amd64 libtiff5 amd64 4.3.0-6ubuntu0.6 404 Not Found [IP: 185.125.190.36 80] Err:5 <url>security.ubuntu<.com>/ubuntu jammy-updates/main amd64 libc-devtools amd64 2.35-0ubuntu3.4 404 Not Found [IP: 185.125.190.36 80] Err:6 <url>security.ubuntu<.com>/ubuntu jammy-updates/main amd64 libpython3.10-dev amd64 3.10.12-1~22.04.2 404 Not Found [IP: 185.125.190.36 80] Err:7 <url>security.ubuntu<.com>/ubuntu jammy-updates/main amd64 python3.10-dev amd64 3.10.12-1~22.04.2 404 Not Found [IP: 185.125.190.36 80] E: Failed to fetch <url>security.ubuntu<.com>/ubuntu/pool/main/g/glibc/libc-dev-bin_2.35-0ubuntu3.4_amd64.deb 404 Not Found [IP: 185.125.190.36 80] E: Failed to fetch <url>security.ubuntu<.com>/ubuntu/pool/main/l/linux/linux-libc-dev_5.15.0-89.99_amd64.deb 404 Not Found [IP: 185.125.190.36 80] E: Failed to fetch <url>security.ubuntu<.com>/ubuntu/pool/main/g/glibc/libc6-dev_2.35-0ubuntu3.4_amd64.deb 404 Not Found [IP: 185.125.190.36 80] E: Failed to fetch <url>security.ubuntu<.com>/ubuntu/pool/main/t/tiff/libtiff5_4.3.0-6ubuntu0.6_amd64.deb 404 Not Found [IP: 185.125.190.36 80] E: Failed to fetch <url>security.ubuntu<.com>/ubuntu/pool/main/g/glibc/libc-devtools_2.35-0ubuntu3.4_amd64.deb 404 Not Found [IP: 185.125.190.36 80] E: Failed to fetch <url>security.ubuntu<.com>/ubuntu/pool/main/p/python3.10/libpython3.10-dev_3.10.12-1%7e22.04.2_amd64.deb 404 Not Found [IP: 185.125.190.36 80] E: Failed to fetch <url>security.ubuntu<.com>/ubuntu/pool/main/p/python3.10/python3.10-dev_3.10.12-1%7e22.04.2_amd64.deb 404 Not Found [IP: 185.125.190.36 80] E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
已尝试的解决方法
sudo apt-get updatesudo apt update --fix-missing
以上操作均未解决问题。
问题定位
- 软件源索引过期:系统本地的软件包索引缓存中的版本号,已在Ubuntu官方源中被更新或移除,导致请求旧版本包时返回404。
- 源地址格式错误:错误信息中的源地址存在格式问题(如
<url>标签、.com前多余的<符号),可能是sources.list配置文件被篡改,导致apt无法正确解析源地址。 - 网络或DNS问题:虽然能解析到IP,但可能存在网络链路故障,无法正常连接到Ubuntu源服务器。
可行解决办法
1. 修复软件源配置文件
检查并修正/etc/apt/sources.list和/etc/apt/sources.list.d/目录下的文件:
- 打开配置文件:
sudo nano /etc/apt/sources.list - 删除所有包含
<url>、格式错误的行,替换为Ubuntu 22.04(Jammy)的官方源:deb http://archive.ubuntu.com/ubuntu jammy main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu jammy-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu jammy-backports main restricted universe multiverse deb http://security.ubuntu.com/ubuntu jammy-security main restricted universe multiverse - 保存退出(Ctrl+O,回车,Ctrl+X),然后执行
sudo apt update更新索引。
2. 强制清理并更新索引
执行以下命令彻底清理旧缓存并重新获取索引:
sudo apt clean sudo apt autoclean sudo apt update --fix-missing
3. 更换国内镜像源(如果官方源访问不畅)
将官方源替换为国内镜像,以提高访问稳定性:
- 备份原配置:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak - 修改
sources.list为清华源:deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse - 执行
sudo apt update后再尝试安装:sudo apt install python3-pip
4. 手动下载依赖包安装(临时方案)
如果上述方法无效,可以手动下载对应版本的deb包:
- 搜索缺失的包(如
libc-dev-bin_2.35-0ubuntu3.4_amd64.deb) - 下载后执行
sudo dpkg -i 包文件名.deb逐个安装,最后再安装pip:sudo apt install python3-pip
内容的提问来源于stack exchange,提问作者cas808
相关产品推荐
相关产品推荐

