¿Qué hacer si el propietario de /usr/bin/* cambia a no root?

¿Qué hacer si el propietario de /usr/bin/* cambia a no root?

¡Sería correcto decir que me equivoqué!

Accidentalmente, cambié el propietario de todos los archivos en /usr/bin a 'dev' desde 'root'. ¡Ahora sudo no funciona! Si uso sudo con cualquier comando, obtengo:

sudo: effective uid is not 0, is sudo installed setuid root?

No puedo usar chownel comando para cambiar el propietario a 'root'. ¡Este es un gran retroceso!

Como se trata de una máquina virtual, no puedo acceder a la consola de recuperación. De hecho, incluso el rebootcomando necesita que el usuario tenga acceso "root".

Expertos, ayúdenme a controlar el sistema operativo sin tener que volver a crear la imagen.

¡Gracias!

PD: Posiblemente unduplicarpero volver a publicar como solución fue empezar de nuevo.

Más información -

su - rootsiempre dice contraseña incorrecta. Desafortunadamente, el propietario de sutambién es 'dev'.

Puedo crear un nuevo usuario usando la GUI. Aceptó la contraseña de root. ¿Cómo le otorgo al nuevo usuario acceso root sin usar visudo?

Respuesta1

La seguridad física es seguridad. Tienes tres opciones:

  1. Inicie sesión como root, ya sea desde la consola o por ssh.
  2. Arranque en modo de usuario único, que tradicionalmente no necesita la contraseña de root (pero sí podría hacerlo en su sistema).
  3. Monte la imagen del disco desde otro sistema operativo.

Cualquiera de estos le dará la posibilidad de cambiar la propiedad de cualquier archivo en el disco. Si ninguna de ellas es una opción para ti, no tienes suerte, pero tampoco tienes el control: pueden suceder otras cosas, que no son errores, que requieran acceso a la consola.

Respuesta2

No puedo decir nada con seguridad sin encender una VM e imitar su situación, pero lo que probablemente haría es, si puede hacer que un archivo actúe como medio externo para su VM, inicie una distribución Live CD/USB ( Knoppix, o el archiso predeterminado, o el CD de instalación de Gentoo, o Porteus) y luego hacer algo como montar el sistema de archivos con el /usr/bin roto (tal vez usando cd /; mkdir /backup; cp /mnt/centos/usr/bin /backup, copiando los archivos binarios que desea guardar y chown -hR 0 /backup; chmod 755ellos o lo que haya elegido privilegios para /usr/bin son, luego eliminar el /usr/bin ensololas cosas rotas (si el fs a reparar estuviera montado en /mnt/centos, el comando a usar para la última instrucción sería rm -r /mnt/centos/usr/bin) entonces algo entre las líneas de cp /backup /mnt/centos/usr/binY eso podría funcionar. Sin embargo, no hagas esto todavía, ya que todavía no he activado una máquina virtual para probarlo. Si ustedno poderhacer que un archivo actúe como un medio de arranque externo, entonces creo que debes reinstalarlo, después de hacer una copia de seguridad de todos los archivos que deseas guardar. Espero que esta respuesta te sirva bien.

información relacionada