apt-get 升级段错误!

apt-get 升级段错误!

我安装了 ubuntu server 10.04 并且正常启动。

过了一段时间,我启动了服务器并尝试使用以下命令安装新包/升级现有包:

sudo apt-get upgrade
sudo aptitude safe-upgrade
sudo apt-get install ntp
Reading package lists... Done
Segmentation faulty tree... 50%

我检查了系统日志/var/log/messages并发现了以下条目:

kernel: [ 5586.184028] apt-get[3864]: segfault at 7fb5e078477b ip 00007fb5da82223c sp 00007fffa943b430 error 6 in libapt-pkg-libc6.10-6.so.4.8.0[7fb5da7e1000+c5000]
kernel: [ 5682.494467] aptitude[3973]: segfault at 7f06d4c4d77b ip 00007f06d063723c sp 00007fff5feb8540 error 6 in libapt-pkg-libc6.10-6.so.4.8.0[7f06d05f6000+c5000]
kernel: [ 5991.238428] apt-get[4181]: segfault at 7f809c17e77b ip 00007f809621c23c sp 00007fff740deb30 error 6 in libapt-pkg-libc6.10-6.so.4.8.0[7f80961db000+c5000]

另外,我在尝试使用时遇到了同样的错误aptitude safe-upgrade,这从日志文件中可以清楚地看出。

不重新安装系统的情况下如何修复此问题?

答案1

首先,以 root 身份尝试此命令(从终端):

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

然后重试apt-get upgrade。如果问题仍然存在,您可能发现了一个错误。转到启动板漏洞并报告您的问题。记得包含 Ubuntu 服务器版本等详细信息或任何其他相关信息。

谢谢!

答案2

首先我尝试

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

正如刚才提到的。

然后当我尝试安装/删除某些东西时,仍然会崩溃。无论是使用 apt-get 还是 aptitude。

这始终是一个段错误libapt-pkg-libc6.10-6.so.4.8.0

结果是,一个内存模块已损坏(使用 memtest86 检查)。

修复该问题之后,我仍然遇到相同的段错误,因此:

  1. 获取apt_0.7.25.3ubuntu9.7_i386.deb/tmp

  2. 提炼

    cd /tmp
    ar xv apt_0.7.25.3ubuntu9.7_i386.deb 
    
  3. 将正确的文件移动到正确的位置

    cd /tmp/usr/lib
    mv -vi libapt-pkg-libc6.10-6.so.4.8* /usr/lib/
    

现在好了。

答案3

修复 aptitude 问题(segmentationault):

  1. 我的电脑运行的是 debian wheezy,运行 aptitude 时出现分段错误
  2. /etc/apt/source.list
  3. 复制一条来源,并改正 sid(复制一条来源,把 wheezy改成sid保存)
  4. apt-get 更新
  5. apt-get 安装 aptitude
  6. 我的资质还可以。

相关内容