加载共享库libc.so.6时出现mingetty错误

时间:2013-09-26 16:55:38

标签: linux centos yum libc

我有一个64位的CentOS 5.5盒子,我最近升级到5.6。在升级过程中,我删除了不必要的32位软件包(i * 86架构软件包),因为它们对64位计算机并不是真正有效。同样,我删除了一些仅用于开发机器的其他软件包。

删除的部分32位软件包包括:

glib2      glibc    libgcc     libstdc++

删除的64位软件包包括:

boost-devel       cpp                gcc               gcc-c++
gdb               glibc-devel        glibc-headers     libstdc++-devel

以下是一些剩余的软件包:

# rpm -qa | grep libc
libcap-1.10-26
glibc-common-2.5-58.el5_6.4
glibc-2.5-58.el5_6.4

但是,现在我重新启动时出现以下错误:

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

每个终端重复此日志多次,然后INIT暂停5分钟,因为它的重生速度太快。

因此,我无法登录到控制台,但仍然可以通过SSH连接到该框。

我已经确认存在libc.so.6:

# ls -lrt /lib64/libc[\.-]*
-rwxr-xr-x 1 root root 1716720 Jun 27  2011 /lib64/libc-2.5.so
lrwxrwxrwx 1 root root      11 Sep 20 19:16 /lib64/libc.so.6 -> libc-2.5.so

那个小小的指向它:

ldd /sbin/mingetty 
    linux-vdso.so.1 =>  (0x00007fffb7ffc000)
    libc.so.6 => /lib64/libc.so.6 (0x00002adf73cb2000)
    /lib64/ld-linux-x86-64.so.2 (0x00002adf73a94000)

如果我使用这些相同的软件包执行全新安装的CentOS 5.6,一切正常,所以我怀疑问题是由于某些软件包的删除脚本造成的。

有谁知道可能会发生什么?

1 个答案:

答案 0 :(得分:1)

事实证明,由于安装了一些软件包,因此在yum更新期间启用了selinux。结果,它搞砸了一些链接。解决方案是在yum更新后立即禁用selinux。