AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 975318
Accepted
Erdnase
Erdnase
Asked: 2017-11-12 00:00:34 +0800 CST2017-11-12 00:00:34 +0800 CST 2017-11-12 00:00:34 +0800 CST

apt-get - 分段错误:错误处理包 libc-bin

  • 772

嗨,在过去的一个月里,我一直在努力解决这个问题。

sudo apt-get upgrade并sudo apt-get autoremove因以下错误而出错

E: Unmet dependencies. Try using -f.

当我运行时sudo apt-get install -f,错误如下。

Fetched 30.2 MB in 32s (928 kB/s)                                              
Preconfiguring packages ...
Setting up libc-bin (2.23-0ubuntu9) ...
Segmentation fault
/sbin/ldconfig.real: Can't stat /lib/i686-linux-gnu: No such file or directory
/sbin/ldconfig.real: Can't stat /usr/lib/i686-linux-gnu: No such file or directory
/sbin/ldconfig.real: Path `/usr/local/lib' given more than once
/sbin/ldconfig.real: Path `/usr/lib/x86_64-linux-gnu' given more than once
/sbin/ldconfig.real: Path `/lib/x86_64-linux-gnu' given more than once
/sbin/ldconfig.real: Path `/usr/lib/x86_64-linux-gnu' given more than once
Segmentation fault
dpkg: error processing package libc-bin (--configure):
 subprocess installed post-installation script returned error exit status 139
Errors were encountered while processing:
 libc-bin
E: Sub-process /usr/bin/dpkg returned an error code (1)

1)问题发布在这里链接。但提到的答案是特定于用户的。

2)正如这里提到的链接,我试过了sudo apt-get --reinstall install libc-bin。但这表明

E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

3)sudo dpkg --configure -a 错误如下

Errors were encountered while processing:
 libosmesa6:i386
 libgl1-mesa-dri:i386
 libglapi-mesa:i386
 libgl1-mesa-glx:amd64
 libgl1-mesa-glx:i386
 libegl1-mesa:amd64
 xserver-xephyr
 xserver-xorg-core
 libgl1-mesa-dev:i386
 libwayland-egl1-mesa:amd64

任何帮助都将受到高度赞赏,因为这是一台配置了我所有学术项目的机器,因此无法重新安装。

编辑:

4)sudo dpkg --configure -D 777 libc-bin给出以下输出:

D000001: ensure_diversions: new, (re)loading
D000001: process queue pkg libc-bin:amd64 queue.len 0 progress 1, try 1
D000040: checking dependencies of libc-bin:amd64 (- <none>)
D000400:   checking group ...
D000400:     checking possibility  -> libc6
D000400:       checking non-provided pkg libc6:amd64
D000400:       is installed, ok and found
D000400:     found 3
D000400:   found 3 matched 0 possfixbytrig -
D000400:   checking group ...
D000400:     checking possibility  -> libc6
D000400:       checking non-provided pkg libc6:amd64
D000400:       is installed, ok and found
D000400:     found 3
D000400:   found 3 matched 0 possfixbytrig -
D000040: ok 2 msgs >><<
D000040:     checking Breaks
D000400:       checking breaker locales:all virtbroken <none>
Setting up libc-bin (2.23-0ubuntu9) ...
D000002: fork/exec /var/lib/dpkg/info/libc-bin.postinst ( configure 2.23-0ubuntu9 )
Segmentation fault
/sbin/ldconfig.real: Can't stat /lib/i686-linux-gnu: No such file or directory
/sbin/ldconfig.real: Can't stat /usr/lib/i686-linux-gnu: No such file or directory
/sbin/ldconfig.real: Path `/usr/local/lib' given more than once
/sbin/ldconfig.real: Path `/usr/lib/x86_64-linux-gnu' given more than once
/sbin/ldconfig.real: Path `/lib/x86_64-linux-gnu' given more than once
/sbin/ldconfig.real: Path `/usr/lib/x86_64-linux-gnu' given more than once
Segmentation fault
dpkg: error processing package libc-bin (--configure):
 subprocess installed post-installation script returned error exit status 139
D000001: ensure_diversions: same, skipping
Errors were encountered while processing:
 libc-bin

编辑:

5)我正在尝试这里提到的解决方案链接。但sudo mv /usr/lib/x86_64-linux-gnu/libtic.so.5.9 /root给出了错误

mv: cannot stat '/usr/lib/x86_64-linux-gnu/libtic.so.5.9': No such file or directory

这是否意味着在我的情况下是其他一些库导致了这个问题?

编辑:我能够在此期间进行 stracesudo apt-get install -f并且日志可在此处获得;如果这对任何人都有帮助。

6) 我尝试增加此处提到的 APT 缓存限制。但这并没有帮助。

编辑:更新 对老极客建议的回答

7) 我用 memtest 测试了我的 ram,它没有显示任何错误。我还对我的硬盘驱动器(短)进行了 SMART 自检,显示“磁盘正常”。

8)我已经手动检查,并且该特定库/usr/lib/x86_64-linux-gnu/libtic.so.5.9不存在于该位置。(所以我相信我的系统中不存在这样的库,并且其他一些库导致了这个问题。)

9) 我的系统中没有路径/usr/lib/i686-linux-gnu。

10)有一个错字,我正在检查/etc/apt/sources.lst原始答案中提到的。我确实有一个sources.list.

这些是我可以在那里看到的条目。我没有看到那里提到的任何 ppa。

deb http://archive.canonical.com/ubuntu xenial partner
# deb-src http://archive.canonical.com/ubuntu trusty partner
deb http://archive.ubuntu.com/ubuntu xenial main universe restricted
deb http://security.ubuntu.com/ubuntu/ xenial-security main restricted universe
deb http://archive.ubuntu.com/ubuntu xenial-updates main restricted universe
deb http://archive.ubuntu.com/ubuntu xenial-backports main restricted universe

我也无法安装任何 ppa 管理器,因为 apt 本身已损坏并且我无法安装任何东西。

11) 附加信息:这原本是一个 14.04 系统,后来升级到 16.04。我在 14.04 中拥有的那些 ppa 在升级过程中被禁用。但是,这次升级发生在将近一年前,系统平稳运行了将近一年。

12)最后也是最重要的:我记得sudo apt-get dist-upgrade在所有问题开始出现之前执行了一段时间。这可能是导致问题的原因吗?

apt
  • 3 3 个回答
  • 4385 Views

3 个回答

  • Voted
  1. Best Answer
    Elder Geek
    2017-11-25T13:23:32+08:002017-11-25T13:23:32+08:00

    虽然分段错误通常与试图访问受限内存区域的编写不佳的代码有关,但我不认为这是您的问题的原因。虽然这并不常见,但这些故障也可能是由行为不端的硬件引起的。我将首先通过在您的系统上运行memtest来确保您拥有一个稳定的环境,并确保您的硬盘在使用交换时处于良好状态。如果您发现有故障的硬件,请更换它。

    无法统计

    表示文件或目录不存在,或者您的用户即使通过 sudo 也无权访问它。ls -l /lib/i686-linux-gnu您可以通过命令检查权限。因为/usr/lib/i686-linux-gnu我在 64 位版本的 Ubuntu 中找不到(假设基于Path /usr/lib/x86_64-linux-gnu given more than once)。

    根据您提供的信息,我的最佳评估是,其中几个错误的根本原因是您的软件源中的条目不正确。这些可以在/etc/apt/sources.lst文件或目录中的列表中找到/etc/apt/sources.list.d。您可能会开始尝试使用如何删除 PPA?

    如果您使用 GUI 运行桌面,您可能更喜欢Y PPA 管理器,它是此类任务的有用工具。

    如果此答案有任何令人困惑或不清楚的地方,请发表评论,我会尽力澄清。

    编辑:进一步评估以涵盖自最初编写此答案以来提出的其他要点。

    7)在没有故障硬件的情况下,我们需要更深入地挖掘

    8) 从第 5 点开始非常清晰。

    9)从第 4 点开始也很清楚。

    重新编辑10) 具有有效的 /etc/apt/sources.list 意味着您不需要替换它。

    11) 我的系统也从 14.04 升级到 16.04,我的 /etc/apt/sources.list 仍然完好无损,正如您现在报告的那样。

    12)基于此评论中甜点提到的错误,这似乎是可能的。

    在这一点上,选择是有限的。在这里,它们没有特定的顺序。随意选择一个看起来最不痛苦的。

    1)恢复到以前的备份

    2)备份用户数据(无论如何你都应该这样做)并从头开始安装

    3)修复您的安装。下载apt 及其所有依赖项并重新安装它们dpkg -i packagename

    • 3
  2. Marcio Mangar
    2020-07-04T17:23:44+08:002020-07-04T17:23:44+08:00

    我遇到了同样的问题并在巴西研究员的帮助下解决了(https://www.it-swarm.dev/pt/apt/dpkg-pacote-de-processamento-de-erros-libc-bin-configure/961032617/ )

    基本上:

    sudo rm /var/cache/ldconfig/aux-cache
    

    那么结束……

    /sbin/ldconfig
    
    • 0
  3. Alejandro Cardona Gaviria
    2022-06-23T12:53:49+08:002022-06-23T12:53:49+08:00

    这对我有用:

    sudo mv /var/lib/dpkg/info/libc-bin.* /tmp/
    sudo dpkg --remove --force-remove-reinstreq libc-bin
    sudo dpkg --purge libc-bin
    sudo apt install libc-bin
    sudo mv /tmp/libc-bin.* /var/lib/dpkg/info/
    

    来源: https ://www.codegrepper.com/code-examples/shell/installed+libc-bin+package+post-installation+script+subprocess+returned+error+exit+status+134

    • 0

相关问题

  • 如何编写 shell 脚本来安装应用程序列表?

  • 如何查看存档中可用的软件包的所有版本?

  • 是否可以说出我安装的哪些软件包不在原版安装中?

  • 如何删除 PPA?

  • 使用 apt-get upgrade 时如何强制安装内核更新?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve