CentOS 6.5에서 작업 중입니다. 내 glibc의 버전은 2.14이며 실수로 /lib64/libc.so.6를 이전 glibc (libc-2.12.so)에 연결합니다.su 또는 sudo에 대해 LD_PRELOAD를 설정하는 방법은 무엇입니까?
그런 다음 export LD_PRELOAD=/lib64/libc-2.14.so
을 실행하고 대부분의 명령은 su
과 sudo
을 제외하고 실행할 수 있습니다. su
을 실행하면 "세그먼트 오류"이 발생합니다. sudo
을 실행하면 "su : /lib64/libc.so.6 : 버전 GLIBC_2.14 '을 찾을 수 없습니다 (/lib64/libcrypt.so.1에서 필요)".
su
및 sudo
에 대해 LD_PRELOAD
을 설정하는 방법 또는 glibc를 복구하려면 어떻게해야합니까?
'LD_PRELOAD =/lib64에/libc-2.14.so sudo를 -i' 트릭을 할해야 맞죠? – hek2mgl
Stack Overflow는 프로그래밍 및 개발 관련 질문을위한 사이트입니다. 이 질문은 프로그래밍이나 개발에 관한 것이 아니기 때문에 주제와는 거리가 먼 것처럼 보입니다. 도움말 센터에서 [여기에서 내가 질문 할 수있는 항목은 무엇입니까?] (http://stackoverflow.com/help/on-topic)를 참조하십시오. 아마도 [Super User] (http://superuser.com/) 나 [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/)가 더 나은 곳이 될 것입니다. 또한 [Dev Ops에 관한 질문은 어디에 게시합니까?] (http://meta.stackexchange.com/q/134306) – jww
이 질문에 혼란 스럽습니다. libc.so.6 심볼릭 링크를 2.14 glibc로 바꾸는 방법을 묻고 있습니까? 이것은 ln으로 쉽게 할 수 있습니다. 패키지를 다시 설치하는 것이 좋습니다. su/sudo 비트를 따르지 않습니다.이 프로그램은 setuid이며 로더는 권한이없는 사용자에 의해 실행되는 경우 env var을 무시합니다. 즉 실제 문제를 해결해야합니다. –