WSL重新安装Ubuntu后无法更新/升级的问题求助
问题描述
我之前在WSL上成功完成过Ubuntu的更新和升级操作,后来注销了两个Ubuntu版本并重新安装了一个新的,结果现在无法正常更新/升级。我尝试用以下命令排查:
grep -nvr "^#" /etc/apt/ | grep impish
得到的反馈是:
grep: /etc/apt/trusted.gpg.d/ubuntu-keyring-2012-cdimage.gpg: binary file matches
grep: /etc/apt/trusted.gpg.d/ubuntu-keyring-2018-archive.gpg: binary file matches
我的解答
看起来你的问题大概率是重新安装后APT源里残留了旧版本(Impish是Ubuntu 21.10,已经停止支持)的配置,而且grep命令因为碰到二进制密钥文件才出现了提示。给你几个实用的排查解决思路:
先精准排查源配置文件
之前的grep命令被二进制密钥文件干扰了,换这条命令只扫描文本格式的源配置文件,找出残留的Impish引用:grep -nvr "^#" /etc/apt/ --include="*.list" --include="*.conf" | grep impish找到对应的文件后,把里面的
impish替换成你当前Ubuntu版本的代号(比如22.04是jammy,20.04是focal)。确认当前Ubuntu版本代号
不确定自己装的是哪个版本?运行这条命令就能直接看到:lsb_release -cs密钥文件无需删除,有验证问题再修复
你看到的那两个二进制密钥文件是Ubuntu官方的正常文件,不用删除。如果后续更新时碰到密钥验证错误,可以重新导入官方密钥:sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32 871920D1991BC93C最后尝试更新升级
改完源配置后,执行下面的命令重新更新源列表并完成升级:sudo apt update && sudo apt upgrade -y如果还有报错,把具体的错误信息贴出来,就能更精准地定位问题啦。
备注:内容来源于stack exchange,提问作者yundong zr

