Eu estava tentando liberar espaço e, sem noção, movi /usr/lib64/ para "/srv/maraba_ssd_scratch/apelin/root_files/usr_lib64". A próxima coisa que farei é criar um link simbólico em usr para lib64 para apontar para /srv/maraba_ssd_scratch/apelin/root_files/usr_lib64, mas rapidamente me deparei com problemas com ELF.
Meu maior problema é que eu estava usando o sudo para fazer tudo isso. Eu descobri com base em outras postagens como emitir comandos e posso fazer:
$ 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
No entanto, para restaurar /usr/lib64 eu preciso de privilégios de root. Eu tentei sudo, mas falhou:
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
Quando tento su também recebo um erro:
$ 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
Acredito que o erro su pode estar relacionado ao meu arquivo /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 está no diretório lib64 movido.
Além de uma inicialização usando um disco ativo, alguém mais tem alguma ideia? Não tenho o busybox.
PS deveria mencionar que tenho GUI através do vncserver. Existe alguma maneira de invocar comandos root da GUI? CentOS 7, Gnome2.