我不小心删除了符号链接/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
在这之后,我可以使用ls
和ln ...
,但仍然不能使用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
。
我该如何解决? 谢谢〜
我通过使用已经在服务器的/ 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
),并做到了这一点。
只是几个具体的细节:
$ sudo apt-get install usb-gtk-creator
,我确定Windows有一个等效的usb启动器) ext4
和/dev/sdb1
$ mkdir /home/ubuntu/mnt
安装它,然后$ sudo mount-t ext4 /dev/sdb1 /home/ubuntu/mnt
$ cd /home/ubuntu/mnt
$ 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 /社区/启动修复