/ usr / bin / sudo debe ser propiedad de uid 0 y tener el bit setuid establecido [duplicado]

57

He corrido siguiendo el comando accidentalmente

sudo chown [username] -hR /

Ahora sudo su obtiene error:

sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set

¿Cómo resolver esto?

    
pregunta Pandya 22.04.2014 - 14:14

8 respuestas

21

Haga una copia de seguridad de sus datos y vuelva a instalarlos.

Esto probablemente se ve extremo, pero esto no es solo sudo . Has destruido la estructura de permisos de todo tu sistema de archivos. Algunas de las otras respuestas pueden hacer que sudo funcione, pero ignorar todo el problema invita a un desastre posterior.

Podría intentar copiar a los propietarios de otra instalación, pero hay casos ( /var/ por ejemplo) que dependen en gran medida de lo que haya instalado realmente. Si desea obtener una escala del problema, en realidad tuve un gran problema al ayudar a alguien a solucionar este tipo de problema antes . La solución es manual, larga y podría dejar su sistema inseguro o roto fácilmente.

Recoger ese desastre va a llevar mucho más tiempo que una instalación limpia.

Esto ha tenido un par de drive-bys de personas que no entienden la gravedad de la situación aquí. Para ellos, parece una gran pila de trabajo innecesario, el tipo de cosa que un fontanero o mecánico deshonesto dice que te sacude para un trabajo más grande.

Si solo has cambiado los permisos en /usr/bin/sudo , por supuesto, solo corrige eso. Pero esta pregunta se trata de un cambio total en el sistema. Cada archivo (excepto los que solo son de tiempo de ejecución) ahora es propiedad del usuario. Todo lo que el usuario ejecuta (por ejemplo, navegadores, exploits del navegador ) podría sobrescribir los archivos del sistema, espiar a usted, extraer cualquier dato. Esto necesita ser corregido. Por encima, esto es difícil. La forma más fácil es una reinstalación.

Por favor, no seas perezoso acerca de esto. Los permisos del sistema de archivos lo ayudan a mantenerse a salvo, arréglenlo.

    
respondido por el Oli 22.04.2014 - 14:23
116

Como leerá en esta respuesta en SO , este problema es no como difícil como la gente lo está haciendo. Obtuve el comando sudo trabajando nuevamente sin una reinstalación siguiendo estos simples pasos:

  1. Cierre la sesión como usuario actual y vuelva a iniciarla como raíz.
  2. Ejecute chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
  3. Cierre sesión como root y vuelva a iniciar sesión como el usuario actual.

Esto hace el truco y es mucho más rápido y menos doloroso que la "opción nuclear" recomendada en otras respuestas.

En caso de que su contraseña de root no esté configurada. Debes arrancar en el Modo de recuperación de Ubuntu para hacer esto.

    
respondido por el user10962 24.05.2014 - 13:51
9
  1. vaya al modo de recuperación presionando Esc mientras arranca el sistema.

  2. seleccione la opción raíz en la lista larga que puede ver después de entrar en modo de recuperación (en realidad es el shell raíz)

  3. comando tipo - mount -o remount / (O en recuperación puede hacer clic en la opción grub. Esto me ayudó a obtener permisos de lectura y escritura en el sistema de archivos. Esto básicamente actualizaba el modo de lectura / escritura en el sistema de archivos ya que el comando wasn ' t trabajando para mí inicialmente)

    Remontará su sistema de archivos en modo de lectura y escritura.

  4. Comando
  5. - chown -R root:root /usr este comando cambiará la propiedad de "usuario" a raíz nuevamente de forma recursiva

  6. ahora todavía tenía un problema con el comando sudo , así que seguí de nuevo el paso 1,2,3 y ejecuté chmod 4755 usr/bin/sudo

Ahora, realmente creo que la reinstalación habría sido realmente una "opción nuclear"

    
respondido por el Hridaynath 18.11.2015 - 06:05
3

Lamentablemente, si no tiene una copia de seguridad completa, probablemente lo mejor que puede hacer en este momento es volver a instalarla.

Considere que ha cambiado la propiedad de todos los archivos al mismo usuario, desorientando por completo el paradigma de seguridad de su sistema ...

Si busca en este sitio, hay muchos problemas similares con chmod, como por ejemplo ¿Cómo puedo recuperarme de chmod -R a-wrx / command?

    
respondido por el Rmano 22.04.2014 - 14:26
3

Tenía el mismo problema en mi gotita en el océano digital.

sudo: /usr/bin/sudo debe ser propiedad de uid 0 y tener el setuid bit establecido. A continuación hay un comando que se ejecutará y se reiniciará después.

chown -R root:root /usr/bin/sudo
chmod -R a=rx,u+ws /usr/bin/sudo
chown -R root:root /usr/lib/sudo/sudoer.so
chmod -R a=rx,u+ws /usr/lib/sudo/sudoer.so

Espero que ayude.

    
respondido por el Marvee Lou Manriquez Ventures 27.09.2016 - 03:09
2

Los métodos anteriores no me funcionaron, porque no pude "volver a iniciar sesión como root" (contraseña desconocida) Pero obtuve un shell raíz editando

vi /etc/lightdm/lightdm.conf

autologin-user=root
greeter-show-manual-login=true

Después de reiniciar finalmente pude ejecutar

chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
    
respondido por el Anno2001 04.12.2014 - 13:40
1

No pude editar el archivo lightdm.conf en el sistema en ejecución. Arreglé cosas como esta:

  1. boot Ubuntu usb en vivo
  2. monte la partición raíz para acceder a /etc/lightdm/lightdm.conf en la instalación
  3. sudo -H gedit /mnt/etc/lightdm/lightdm.conf y agregue las siguientes líneas de Respuesta de Anno2001

    autologin-user=root
    greeter-show-manual-login=true
    
  4. reiniciar

  5. ejecutar comando:

    chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo
    
  6. Cambiar el usuario predeterminado en /etc/lightdm/lightdm.conf (no desea iniciar sesión como root cada vez, lo que sería muy inseguro y peligroso)

  7. reinicie, y mi sistema funciona bien de nuevo.
respondido por el DrackG 08.09.2015 - 21:19
-2

He cambiado / usr / lib / al propietario de la raíz, pero sudo solo se ejecuta con el inicio de sesión raíz en la terminal.

paso uno: su raíz paso dos: cd / usr / lib paso tres: chown -R root: root sudo

y eso es todo. Solo tenga en cuenta que debe ejecutar su raíz cada vez que quiera usar sudo.

    
respondido por el Cyprian Maina 04.05.2016 - 14:07

Lea otras preguntas en las etiquetas