如何为su或sudo设置LD_PRELOAD?

时间:2016-12-29 11:07:30

标签: linux centos glibc su

我正在使用CentOS 6.5。我的glibc的版本是2.14,我不小心将/lib64/libc.so.6链接到之前的glibc(libc-2.12.so)。

然后我运行su,大多数命令都可以执行,sudosu除外。运行sudo时,它会提供"分段错误" 。运行LD_PRELOAD时,它会提供" su:/lib64/libc.so.6:version`GLIBC_2.14'找不到(/lib64/libcrypt.so.1要求)"

如何为susudo设置var owl1 = $("#main-demo"); owl1.owlCarousel({ navigation: true, // Show next and prev buttons slideSpeed: 300, pagination:false, singleItem: true, transitionStyle: "fade", navigationText: ["", ""] });// Custom Navigation Events owl1.trigger('owl.play', 4500); ,或者我该如何恢复glibc?

2 个答案:

答案 0 :(得分:2)

没有办法,按设计。设置LD_PRELOAD允许在可执行文件中执行任意代码。在运行敏感的prvileged SUID程序时允许这样做是不明智的。

答案 1 :(得分:1)

  

我该怎样做才能恢复glibc?

这是一个系统管理员问题,更适合于serverfault,但一种恢复方法是:

  1. 从救援CD启动
  2. 将根分区安装到/ mnt
  3. 修复符号链接
  4. 重新启动