visudo usuario permisos hat etc dar agregar linux centos

linux - usuario - Accidentalmente eliminado symlink libc.so.6 en CentOS 6.4. ¿Cómo obtener privilegios de sudo para volver a crearlo?



dar permisos de root a un usuario red hat (3)

Accidentalmente borré el enlace de símbolo /lib64/libc.so.6 -> /lib64/libc-2.12.so con

$ sudo rm libc.so.6

Entonces no puedo usar nada, incluido el comando ls . El error aparece para cualquier comando que escriba

ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

He intentado

$ export LD_PRELOAD=/lib64/libc-2.12.so

Después de esto puedo usar ls y ln ... , pero todavía no puedo usar sudo ln ... o sudo -E ln ... Siempre me sale esto mal

sudo: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

Es un servidor remoto, así que no puedo usar un CD en vivo. Ahora tengo una sesión ssh bash viva pero no puedo establecer nuevas. Tengo el privilegio de sudo, pero no tengo la contraseña de root.

Así que actualmente mi problema es que necesito ejecutar sudo sln -s libc-2.12.so libc.so.6 para volver a crear el enlace simbólico libc.so.6 , pero no puedo ejecutar sudo sin libc.so.6 .

¿Cómo puedo arreglarlo? Gracias ~


Un poco vergonzoso :) pero me pasó a mí también en Ubuntu 12.04.3 (que no es CentOS 6.4, pero pensé que esto todavía podría ayudar).

Debido a que mi Ubuntu no se iniciaba utilicé liveUSB para iniciar y luego monté en mi disco duro y creé el enlace simbólico (yo tenía el archivo en sí libc-2.15.so ) y eso lo hizo.

Solo algunos detalles específicos:

  1. Le pedí a un buen amigo que usara su computadora durante media hora
  2. He descargado mi iso exacta de Ubuntu (12.04.3, si está ausente; falta el enlace simbólico, podría ser cualquier versión tanto que pueda montar unidades) desde aquí: enlace
  3. Me aseguré de que su Ubuntu tuviera usb-creator-gtk ( $ sudo apt-get install usb-gtk-creator , estoy seguro de que Windows tiene un creador de arranque usb equivalente)
  4. Creado el liveUSB usando usb-creator-gtk
  5. Arranqué mi computadora con él (probablemente deba cambiar la configuración de su BIOS para permitir que se inicie primero el USB externo)
  6. Una vez que arranqué desde el USB vivo, pensé dónde estaba mi partición del disco duro ejecutando la herramienta de partición de Ubuntu (el USB en vivo tiene uno) - el mío era del tipo ext4 y en /dev/sdb1
  7. Lo monté haciendo $ mkdir /home/ubuntu/mnt y luego $ sudo mount-t ext4 /dev/sdb1 /home/ubuntu/mnt
  8. Luego procedí a esa carpeta $ cd /home/ubuntu/mnt
  9. Desde esa ubicación, creé el enlace simbólico por $ sudo ln -s lib/x86_64-linux-gnu/libc-2.15.so lib/x86_64-linux-gnu/libc.so.6

Después de reiniciar, estaba bien.

Espero que te ayude a ti (o a alguien ...)


Agregaría algo más a la respuesta de @wilfo ya que también pasó conmigo [borré accidentalmente lib.so.6 y estaba obteniendo / sbin / init faltando libc.so.6 en el inicio]. Después de crear liveUSB en Windows (usando UNetbootin, etc. [http://unetbootin.sourceforge.net/]) o en ubuntu como se sugirió @wilfo. Arrancando desde liveUSB, seleccioné "experience ubuntu sin instalarlo" y me sentí feliz aplicando el método de wilfo hasta el paso 6 y luego no pude encontrar la partición del disco duro de tipo ext3 / 4. Todos eran nftf / fat / extended stuff.

Así que recuperé Ubuntu anterior (el que faltaba libc.so ...) siguiendo este enlace https://help.ubuntu.com/community/Boot-Repair

asegúrese de seguir todos los pasos necesarios y hacer una copia de seguridad de su partición Ubuntu. puedes ver tus archivos ubuntu anteriores en / mnt / boot-sav / wubi1 / home, haz una copia de seguridad desde aquí a tus particiones de Windows / mnt / boot-sav / sda ... y sigue el procedimiento restante aquí https: //help.ubuntu .com / comunidad / Boot-Repair


Resolví el problema utilizando una versión estáticamente vinculada de "ln" que ya estaba en / sbin del servidor.

Por ejemplo, esto lo restauró para mi configuración: / sbin / sln /lib64/libc-2.5.so /lib64/libc.so.6