2

我不小心删除了符号链接 /lib64/libc.so.6 -> /lib64/libc-2.12.so

$ sudo rm libc.so.6

然后我不能使用任何东西,包括ls命令。我输入的任何命令都会出现错误

ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

我试过了

$ export LD_PRELOAD=/lib64/libc-2.12.so

在此之后我可以使用lsand ln ...,但仍然不能使用sudo ln ...or sudo -E ln ...。我总是犯这个错误

sudo: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

这是一个远程服务器,所以我不能使用 live CD。我现在有一个 ssh bash 会话,但无法建立新会话。我有 sudo 权限,但没有 root 密码。

所以目前我的问题是我需要运行sudo sln -s libc-2.12.so libc.so.6重新创建符号链接libc.so.6,但sudo没有libc.so.6.

我该如何解决?谢谢~

4

3 回答 3

2

我通过使用已经在服务器 /sbin 中的静态链接版本的“ln”解决了这个问题。

例如,这为我的配置恢复了它:/sbin/sln /lib64/libc-2.5.so /lib64/libc.so.6

于 2016-10-14T12:19:57.080 回答
0

我会在@wilfo 答案中添加更多内容,因为我也发生了同样的情况[意外删除 lib.so.6 并且在启动时 /sbin/init 缺少 libc.so.6]。在 Windows 中创建 liveUSB(使用 UNetbootin 等 [http://unetbootin.sourceforge.net/])或 @wilfo 建议的 ubuntu 中。从 liveUSB 启动,我选择了“体验 ubuntu 而不安装它”并且很高兴应用 wilfo 的方法直到第 6 步,然后我找不到 ext3/4 类型的硬盘分区。都是 nftf/fat/extended 的东西。

所以我通过点击此链接https://help.ubuntu.com/community/Boot-Repair恢复了以前的 ubuntu(缺少 libc.so 的那个)

确保遵循所有必要的步骤并备份您的 ubuntu 分区。您可以在 /mnt/boot-sav/wubi1/home 中看到您以前的 ubuntu 文件从此处备份到您的 Windows 分区 /mnt/boot-sav/sda... 并按照此处的剩余程序https://help.ubuntu .com/community/启动修复

于 2014-02-19T19:32:52.610 回答
0

有点尴尬 :) 但它也发生在Ubuntu 12.04.3上(不是 CentOS 6.4,但我认为这可能仍然有帮助)。

因为我的 Ubuntu 无法启动,所以我使用 liveUSB 启动,然后安装了我的硬盘驱动器并创建了符号链接(我确实有文件本身libc-2.15.so)并且做到了。

只是一些具体的细节:

  1. 我请一个好朋友用他的电脑半小时
  2. 我从这里下载了我的确切 Ubuntu iso(12.04.3,如果你在;你缺少符号链接,它可能是任何版本,以至于它可以安装驱动器):链接
  3. 我确保他的 Ubuntu 有 usb-creator-gtk ($ sudo apt-get install usb-gtk-creator我确信 Windows 有一个等效的 USB 引导创建器)
  4. 使用 usb-creator-gtk 创建了 liveUSB
  5. 用它启动我的电脑(您可能需要更改 BIOS 设置以允许首先启动外部 USB)
  6. 一旦我从现场 USB 启动,我通过运行 Ubuntu 分区工具(现场 USB 有一个)来确定我的硬盘分区在哪里 - 我的类型ext4/dev/sdb1
  7. 我通过做$ mkdir /home/ubuntu/mnt然后安装它$ sudo mount-t ext4 /dev/sdb1 /home/ubuntu/mnt
  8. 然后我继续到那个文件夹$ cd /home/ubuntu/mnt
  9. 然后我从那个位置创建了符号链接$ sudo ln -s lib/x86_64-linux-gnu/libc-2.15.so lib/x86_64-linux-gnu/libc.so.6

重启后我很好。

希望它可以帮助你(或某人..)

于 2013-12-25T09:29:10.247 回答