在CentOS 6.4中意外删除了symlink libc.so.6。 如何获得sudo特权重新创build它?

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

$ sudo rm libc.so.6 

那么我不能使用任何东西,包括ls命令。 这个错误出现在我input的任何命令上

 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 

在这之后,我可以使用lsln ... ,但仍然不能使用sudo ln ...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会话,但不能build立新的会话。 我有sudo特权,但没有root密码。

所以目前我的问题是我需要运行sudo sln -s libc-2.12.so libc.so.6来重新创build符号链接libc.so.6 ,但是我不能在没有libc.so.6情况下运行sudo

我该如何解决? 谢谢〜

Solutions Collecting From Web of "在CentOS 6.4中意外删除了symlink libc.so.6。 如何获得sudo特权重新创build它?"

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

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

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

因为我的Ubuntu无法启动,我用一个liveUSB启动,然后挂载我的硬盘驱动器,并创建符号链接(我有文件本身libc-2.15.so ),并做到了这一点。

只是几个具体的细节:

  1. 我问了一个好朋友用了半个小时的电脑
  2. 我从这里下载了我的确切的Ubuntu iso(12.04.3,如果你正在使用;缺少符号链接,它可能是任何版本,以至于它可以挂载驱动器): link
  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

重新启动后,我很好。

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

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

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

确保遵循所有必要的步骤,并备份你的Ubuntu分区。 你可以在/ mnt / boot-sav / wubi1 / home里面看到你以前的ubuntu文件,从这里到你的Windows分区/ mnt / boot-sav / sda …并按照这里的其他程序https://help.ubuntu .COM /社区/启动修复