我有一个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,一切正常,所以我怀疑问题是由于某些软件包的删除脚本造成的。
有谁知道可能会发生什么?
答案 0 :(得分:1)
事实证明,由于安装了一些软件包,因此在yum更新期间启用了selinux。结果,它搞砸了一些链接。解决方案是在yum更新后立即禁用selinux。