如何在 RedHat 上更新 libc.so.6 的符号链接?



我正在尝试更新符号链接libc.so.6。它正确地指向 libc-2.17.so。我需要指出 libc-2.18.so。我试图做一个符号链接的rm,但没有任何效果。我还尝试取消符号链接。

如何更新符号链接?我看到过多个问题,但没有任何效果(包括ldconfig(。

我希望有人有答案。

如何更新符号链接?

您需要了解 GLIBC 由数百个文件组成,并且必须一次更新所有文件的符号链接。

如果更新libc.so.6符号链接,但不同时更新ld-linux*,则所有动态链接的程序将无法运行。同上,libpthread.solibdl.so等。

在这里犯错最可能的最终结果是系统无法启动,必须使用救援盘或完全重新安装来恢复。

执行此操作的最佳方法是让包管理器执行此操作。

如果你不能做到这一点,那么你最好的办法是从备用磁盘启动,将你的根文件系统挂载到例如/mnt并做make install DESTDIR=/mnt.

首先,您必须执行 ls -l/lib64/libc* 以查看所有链接和 libc 库

然后做:

cd /lib64
unlink libc.so.6
/sbin/sln /lib64/libc-2.18.so /lib64/libc.so.6

这应该可以做到。

请记住,当您取消链接libc.so.6时,您的服务器上没有任何内容可以正常工作。没有ls,没有cp,甚至没有ln。所以你必须使用 sln 代替(sln 是 ln的静态链接版本(

最新更新