首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何恢复libz.so.1?

我如何恢复libz.so.1?
EN

Ask Ubuntu用户
提问于 2018-05-14 02:17:43
回答 3查看 21.3K关注 0票数 6

当我试图修复Python的一个问题时,我意外地通过在libz.so.1上进行符号链接而把我的二进制文件吹走了。现在有很多东西,包括apt-get都不能用。损害仅限于libz.so.1 (它指向libz.so.1.2.8),因此我应该能够通过找到x86_64二进制文件并将其放回原处来修复它,但我所能找到的只是源代码,但无法编译它。我在使用Xenial。在哪里可以找到编译好的二进制文件?

EN

回答 3

Ask Ubuntu用户

回答已采纳

发布于 2018-05-14 08:44:27

解决此问题的正确方法是手动下载所需的包,然后将其安装或解压到系统中。当然,您可以从LiveCD/LiveUSB执行这样的操作。

如何解决这些问题:

  1. 访问packages.ubuntu.com
  2. 在搜索中输入丢失的文件名(在本例中为libz.so.1.2.8),指定目标分布(在本例中为xenial)和CPU体系结构(amd64):
  1. 单击Search,它将显示结果页面
  1. 然后单击zlib1g链接
  2. 在下载部分,单击amd64
  1. 在打开的页面上选择最近的镜像,(通过浏览器复制链接或下载deb文件)

wget http://mirrors.kernel.org/ubuntu/pool/main/z/zlib/zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb

  1. 尝试将下载的包安装到系统上: sudo dpkg -i zlib1g_1.2.8.dfsg-2 ubuntu4_amd64.deb-如果它不能工作-将其直接解压缩到文件系统: sudo -x zlib1g_1.2.8.dfsg-2 ubuntu4_amd64.deb/
  2. 然后肯定地用apt重新安装它: sudo apt-get install - reinstall zlib1g
票数 8
EN

Ask Ubuntu用户

发布于 2018-07-13 03:27:11

诺伯特指示的一个扩展,如果在活动会话中这样做,请确保将包解压缩到已损坏的Ubuntu的根目录,而不是活动会话本身的根(它不会解决任何问题,并将在重新启动时消失)。

从活动会话的POV中,您失败的安装将被安装在类似于/media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f的位置(不是实际值,而是一些类似于此的长哈希)。您可能必须在文件资源管理器中浏览到它,才能使文件夹出现。

因此,在活动会话中,可以使用如下命令进行提取:

代码语言:javascript
复制
sudo dpkg -x zlib1g_1.2.8.dfsg-2ubuntu4_amd64.deb /media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f/

一旦丢失的libz.so.1恢复到/media/ubuntu/ae7r0-9s90s-ejf8d-d9d9f/lib/x86_64-linux-gnu/,您应该能够重新启动,在tty1中运行sudo apt-get install --reinstall zlib1g,然后重新引导到工作的系统中。

票数 3
EN

Ask Ubuntu用户

发布于 2018-05-14 02:40:24

好吧,因为我把原始文件吹走了,所以我不能apt,甚至不能解压缩,也不能使用rpmalien。我能够找到一个RPM的版本,但我无法获得二进制文件,因为依赖压缩的工具都没有工作。因此,我将RPM上传到转换,并将其转换为tar,下载并提取它,并将其放回属于它的地方。

嘿,吸取的教训,小心那些分享的谎言!

票数 -1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1035916

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档