Linux 在CentOS 6.4中意外删除了符号链接libc.so.6。如何获得sudo特权来重新创建它?
我不小心用删除了符号链接/lib64/libc.so.6->/lib64/libc-2.12.soLinux 在CentOS 6.4中意外删除了符号链接libc.so.6。如何获得sudo特权来重新创建它?,linux,centos,Linux,Centos,我不小心用删除了符号链接/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=/lib
$ 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
在此之后,我可以使用ls
和ln…
,但仍然不能使用sudo-ln…
或sudo-eln…
。我总是犯这个错误
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
,但是没有libc.So.6
,我无法运行sudo
我怎样才能修好它?谢谢~有点尴尬:)但在Ubuntu 12.04.3上也发生了同样的事情(虽然不是CentOS 6.4,但我认为这可能还是有帮助的)
由于我的Ubuntu无法启动,我使用liveUSB启动,然后安装硬盘并创建了符号链接(我确实有文件本身libc-2.15.so
),就这样做了
只是一些具体细节:
$sudo apt get install usb gtk creator
,我确信Windows有一个等效的usb启动creator)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 answer中添加更多内容,就像我在启动时意外删除lib.so.6并得到/sbin/init missing libc.so.6一样。 在windows中创建liveUSB后(使用UNetbootin等)[http://unetbootin.sourceforge.net/])或者像@wilfo建议的那样在ubuntu中。 从liveUSB启动时,我选择了“体验ubuntu而不安装它”,并很高兴应用wilfo的方法,直到第6步,然后我找不到ext3/4类型的硬盘分区。所有这些都是nftf/脂肪/扩展材料 因此,我通过以下链接恢复了以前的ubuntu(缺少libc.So的ubuntu) 确保遵循所有必要的步骤并备份ubuntu分区。 您可以在/mnt/boot-sav/wubi1/home中看到以前的ubuntu文件 从这里备份到您的windows部件/mnt/boot sav/sda。。。
然后按照此处剩余的过程进行操作我通过使用服务器的/sbin中已经存在的静态链接版本“ln”解决了这个问题 例如,这为我的配置恢复了它:
/sbin/sln/lib64/libc-2.5.so/lib64/libc.so.6@OlegMikheev不,或者
$su
或者$sudo su
也许你可以尝试将同一版本的libc.so.6从不同的机器复制到你的机器上……从不同的映像(可能是一张live CD)启动。在返回libc.so.6
之前,无论出于何种目的,您都无法运行任何命令,因此您必须找到一种运行O/S的方法来替换符号链接。您不必安装O/S;您只需要运行足够长的时间,就可以挂载正常O/S的根文件系统并修复符号链接。@JonathanLeffler我甚至无法获得sudo权限来重新启动机器…@rakib是的,但不是root拥有的文件我想添加的东西:使用fdisk定位要挂载的分区。如果你没有像我一样的BIOS访问权限-有一个解决办法-你可以使用grub启动USB。Ubuntu:在grub中按“c”。列出根目录并切换到USB(在我的例子中是hd2)。如果您只是在获取根目录方面有问题,那么也可以从grub加载具有根目录权限的bash。因此,或多或少linuxes并不像ppl认为的那样安全:)