apt 和 aptitude 每次都会出现段错误

apt 和 aptitude 每次都会出现段错误

突然间,aptitude 和 apt 都因段错误而崩溃;这似乎与缓存有关,因为在 aptitude 中,我在它死机之前看到了“正在加载缓存”的消息:

Ouch!  Got SIGSEGV, dying..

从 apt-get 更新:

Ign http://archive.ubuntu.com trusty/universe Translation-en_US                
Fetched 3,438 kB in 27s (125 kB/s)                                             
Segmentation fault
E: Problem executing scripts APT::Update::Post-Invoke-Success 'test -x /usr/bin/apt-show-versions || exit 0 ; apt-show-versions -i'
E: Sub-process returned an error code

从 aptitude 运行后的 syslog 中:

Oct  8 10:28:22 etown kernel: [ 4807.432466] aptitude[5868]: segfault at 7f13ee640fc4 ip 00007f13f21180d7 sp 00007fff1d7ce6a0 error 6 in libapt-pkg.so.4.12.0[7f13f2029000+144000]

从 apt-get update 运行后的 syslog 中:

Oct  8 11:01:48 etown kernel: [ 6814.538186] apt-show-versio[6794]: segfault at 7f56ef3cdfc4 ip 00007f56f04310d7 sp 00007ffd2bb5e060 error 6 in libapt-pkg.so.4.12.0[7f56f0342000+144000]

我尝试增加配置文件中的缓存限制,但无济于事:

APT::Cache-Limit "10000000000";

大师们,有什么想法我可以尝试吗?

答案1

ubuntu 错误报告,需要在后面追加一个新行/etc/apt/apt.conf.d/70debconf

APT::Cache-start 200000000;

这可以解决这个问题。我不明白为什么我需要告诉 APT 分配超过默认数量的内存来阻止它出现段错误,但我确实这么做了!这里某处有一个错误。

非常感谢@LittleByBlue 和@Sagar 通过关注为我指明了正确的方向libapt-pkg.so.4.12.0

答案2

以上评论对我有用:

rm -rf /var/cache/apt/*.bin

如果这不行,你也可以尝试

rm -rf /var/cache/apt/*

请注意,此段错误非常具体,因此在您的情况下可能不起作用。

相关内容