我正在使用 Ubuntu 18.04。
当我使用 apt 运行任何命令时,都会出现分段错误。
Segmentation faulty tree... 50%
(有时会显示Segmentation faulty tree (Core dumped)
)
我尝试了论坛中列出的许多解决方案,但都没有用。
我尝试过的命令是:
sudo rm /var/cache/apt/*.bin
sudo rm -rf /var/cache/apt/*.bin
它们运行时没有显示任何错误,但是分段错误仍然存在。
Ctrl + C
当我尝试使用 apt 安装 aptitude 时按下 ,这个错误就开始了。
答案1
当普通应用程序(如 apt)开始出现段错误时,而且似乎没有任何可能导致问题的改变,请尝试重新安装该软件包。
sudo apt install --reinstall the_package_name
在这种情况下,由于 apt 是问题所在,因此您无法执行此操作。相反,请使用dpkg
重新安装 apt。
这通常很容易:
- 原始的 .deb 包位于 /var/cache/apt/archives 中
dpkg
当简单地告知--install时,将自动用较新的软件包文件覆盖较旧的软件包文件(因此您不需要为dpkg指定--reinstall)。
因此,在您的文件系统中寻找 .deb 文件,然后您就会得到...
sudo dpkg --install /var/cache/apt/archives/exact_name_of_the_deb_file.deb
但是,在这种情况下,还有一个额外的问题:有时人们会从他们的 /var/cache 中删除 deb 文件!他们通常不是故意的 - 他们只是不太明白 apt 是如何工作的,也许不太明白他们输入的魔法 shell 咒语。
(建议:不要输入魔法咒语。在运行命令之前,花点时间了解命令的作用。这可能会使情况变得更糟。)
您可以使用网络浏览器从以下网址下载软件包来解决此问题http://packages.ubuntu.com。不要巧妙地从最新版本下载最新的软件包(这会导致新的问题)。只需下载适合您的 Ubuntu 版本的软件包即可。
将 .deb 包保存到您可以找到的位置。然后:
sudo dpkg --install /full/path/to/the/package.deb
如果这不能解决段错误问题,那么您还遇到了其他问题(例如错误发布的软件包),简单的重新安装无法解决。