공간을 확보하려고 시도하고 /usr/lib64/를 "/srv/maraba_ssd_scratch/apelin/root_files/usr_lib64"로 옮겼습니다. 다음으로 내가 한 일은 /srv/maraba_ssd_scratch/apelin/root_files/usr_lib64를 가리키도록 usr에 lib64에 대한 심볼릭 링크를 만드는 것이었지만 곧 ELF의 문제를 발견했습니다.
내 가장 큰 문제는 이 모든 작업을 수행하기 위해 sudo를 사용한다는 것입니다. 다른 게시물을 기반으로 명령을 실행하는 방법을 알아냈으며 다음을 수행할 수 있습니다.
$ LD_LIBRARY_PATH=/srv/maraba_ssd_scratch/apelin/root_files/usr_lib64 /srv/maraba_ssd_scratch/apelin/root_files/usr_lib64/ld-linux-x86-64.so.2 /usr/bin/echo a
a
bash: /usr/bin/basename: /lib64/ld-linux-x86-64.so.2: bad ELF interpreter: No such file or directory
하지만 /usr/lib64를 복원하려면 루트 권한이 필요합니다. sudo를 시도했지만 실패했습니다.
LD_LIBRARY_PATH=/srv/maraba_ssd_scratch/apelin/root_files/usr_lib64 /srv/maraba_ssd_scratch/apelin/root_files/usr_lib64/ld-linux-x86-64.so.2 /usr/bin/sudo /usr/bin/ln -s /srv/maraba_ssd_scratch/apelin/root_files/usr_lib64 lib64
/usr/bin/sudo: error while loading shared libraries: /usr/bin/sudo: cannot open shared object file: Permission denied
bash: /usr/bin/basename: /lib64/ld-linux-x86-64.so.2: bad ELF interpreter: No such file or directory
su를 시도하면 오류도 발생합니다.
$ LD_LIBRARY_PATH=/srv/maraba_ssd_scratch/apelin/root_files/usr_lib64 /srv/maraba_ssd_scratch/apelin/root_files/usr_lib64/ld-linux-x86-64.so.2 /usr/bin/su root
su: Module is unknown
bash: /usr/bin/basename: /lib64/ld-linux-x86-64.so.2: bad ELF interpreter: No such file or directory
su 오류가 내 /etc/pam.d/su 파일과 관련이 있을 수 있다고 생각합니다.
#%PAM-1.0
auth sufficient pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth sufficient pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth required pam_wheel.so use_uid
auth substack system-auth
auth include postlogin
account sufficient pam_succeed_if.so uid = 0 use_uid quiet
account include system-auth
password include system-auth
session include system-auth
session include postlogin
session optional pam_xauth.so
bash: /usr/bin/basename: /lib64/ld-linux-x86-64.so.2: bad ELF interpreter: No such file or directory
pam_rootok.so는 이동된 lib64 디렉터리에 있습니다.
라이브 디스크로 부팅하는 것 외에 다른 아이디어가 있는 사람이 있나요? 비지박스가 없습니다.
PS에서는 vncserver를 통해 GUI가 있다는 점을 언급해야 합니다. GUI에서 루트 명령을 호출하는 방법이 있습니까? CentOS 7, Gnome2.