WSL 18.04上的APT出现故障。

我在我的WSL Ubuntu 18.04安装中遇到了apt问题。每当我尝试使用apt安装软件包时,我都会得到以下错误提示:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required: [...]

E: Could not read response to hello message from hook [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt 2>/dev/null || true: Success
E: Could not read response to hello message from hook [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt 2>/dev/null || true: Success

我相信snapd/snappy是罪魁祸首,但我一直没有找到解决办法。据我所知,WSL不支持snapd,并且我猜它是在更新中被安装的。
我希望能找到一个解决方案,而不需要重新安装整个系统并花费数小时重新设置所有内容。
提前感谢您的帮助。
编辑:原始输出来自apt --versionapt 1.6.8 (amd64)。升级到1.7.0 (amd64)似乎没有解决这个问题。

1相关链接:https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1776218 应该已经修复了... - Melebius
我已经阅读了那个帖子,但它并没有对我有任何实质性的帮助。这个问题最近才出现在我身上(在使用wsl安装了4-5个月之后)。 有没有办法更新apt本身(而不是通过apt upgrade)? - 173467321476C
是的,你可以使用 dpkg。从 https://packages.ubuntu.com/ 下载所需的软件包,然后手动安装它。你还应该将 apt --version 的输出添加到你的问题中。 - Melebius
1好的,它输出了 apt 1.6.8 (amd64),所以我下载并升级到了 apt 1.7.0 (amd64),在解决了依赖问题之后,我仍然遇到了一些困难。 - 173467321476C
1个回答

如果你想要一个快速而简单的解决办法,你可以通过输入以下命令来移除有问题的apt钩子:
sudo rm -rf /etc/apt/apt.conf.d/20snapd.conf

2快速而简单,但却达到了目的。 - 173467321476C
干得好。它运行得非常顺利。 - sathya
3在删除之前,不要忘记备份您的文件。 - JPR
2如果你能稍微解释一下,比如你在做什么,那就更好了。文件里有什么内容之类的东西,这样理解起来会容易得多。不过还是谢谢,问题已经解决了,给你一个赞+1。 - Arnab Nandy
3按照JPR的建议,先复制文件sudo cp 20snapd.conf 20snapd.conf~,然后安装abd,并将复制的文件重命名为原始文件sudo mv 20snapd.conf~ 20snapd.conf - greg
我在Ubuntu 20.04上也遇到了这个问题,而且这个方法解决了它。sudo mv 20snapd.conf 20snapd.conf-removed - Phil Gilmore