Entré chmod -R 777 /usr/biny ahora sudo no funciona.
Dice sudo must be setuid root.
Algunos consejos en línea dicen que se ejecute chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo.
Al ingresar chown root:root /usr/bin/sudomuestra un opened in readonly modeerror.
permissions
sudo
root
chmod
Manoj Kumar
fuente
fuente

pkexecmétodo en mi respuesta (que has marcado como aceptado) resolvió este problema por ti? Me he convencido de que, como han comentado Damien Roche y Oli, este método no funciona realmente después de que unsudo chmod -R 777 /usr/bincomando se haya completado con éxito. Al igualsudo,pkexectiene que ser setuid root para que funcione. (No estoy seguro de por qué, ya que usa el servicio polkit , pero lo hace). Sin embargo, creo que he oído a otras personas decir que esto les ha funcionado, ¡lo cual es curioso! ¿Había presionado Ctrl + C antes de que777terminara el comando chmod?sudo chmod -R 777 /usr/bin, pero solo después de iniciar sesión en larootcuenta.Respuestas:
En un sistema de escritorio de Ubuntu, PolicyKit se instala, por lo que
pkexecse puede utilizar para reparar una fracturasudoejecutable osudoersarchivo . No necesita iniciar en modo de recuperación y no necesita iniciar desde un CD en vivo. Ni siquiera necesita reiniciar.En este caso, ejecute los siguientes comandos:
Vea esta pregunta para más información.
fuente
pkexec must be setuid root! ¡Qué pesadilla!pkexecexactamente la misma situación quesudo. Normalmente es setuid y vive adentro/usr/bin. Lo he probado y esto simplemente no funciona despuéschmod -R 777 /usr/bin.pkexectiene que ser setuid root para que funcione (¿no funciona a través del demonio polkit como otros procesos no setuid?), Pero lo necesita. He comentado la pregunta para ver si el OP (que aceptó esto) puede arrojar luz sobre lo que, si es que hay algo, es correcto o útil sobre esta respuesta. Y agregué un banner temporal en la parte superior de esta publicación para no engañar más. Si esta respuesta continúa existiendo, su forma mejorada probablemente incorporará alguna información actualmente en ese banner.su, que se encuentra debajo de / bin/usr/binrequiere privilegios de root, pero no puede rootearsuen la mayoría de los sistemas Ubuntu porque los inicios de sesión root están deshabilitados de forma predeterminada. A diferencia desudoypkexec, cuando utilizasuun shell de root o ejecuta un comando como root, debe proporcionar la contraseña de root, no la suya. Pero root no tiene contraseña por defecto en Ubuntu (lo que quiere decir que la autenticación basada en contraseña para root siempre fallará, no que ingresar una contraseña en blanco funcionaría). Ver RootSudo para más detalles.Incluso cuando se ejecuta desde el CD / Pendrive en vivo, debe anteponer su
chmodcomando consudo. Entonces sus pasos serán los siguientes:sudo chmod 0755 <path>para ajustar los permisosCómo averiguar dónde está montado su disco: desde una ventana de terminal, ejecute
mount(sin argumentos). Esto enumerará todos los dispositivos montados. Verifique lo quetypeaparece en la lista: puede omitir todo lo que no esté utilizando un "sistema de archivos real" (su disco probablemente usa ext3 o ext4; puede saltear cosas como proc, sysfs y similares). Si algo suena prometedor (parece/dev/sda1 on /media/sda1 type ext3), verifique su contenido usandols /media/sda1para ver si es eso.Si no se monta, se puede comprobar con las
/deventradas en las que el disco podría ser (utilizandols /dev/ |grep '/dev/sdpara comprobar si hay dispositivos disponibles; el disco debe ser similar/dev/sdaX,/dev/sdbXo similar -, siendo X un número). Compare esto con la lista de dispositivos montados. Si no está allí, intente montarlo y verifique su contenido (como se muestra arriba). Para montarlo, primero cree un punto de montaje, por ejemplosudo mkdir /mnt/mydisk, luego intente montar el dispositivo usandomount /dev/sda1 /mnt/mydisky verifique su contenido usandols /mnt/mydisk.Una vez que el disco allí, se puede ir a cambiar los permisos de vuelta en su directorio usr:
sudo chmod 0755 /mnt/mydisk/usr.Ahora todavía podría estar en problemas si originalmente ejecutó el
chmodcomando de forma recursiva, utilizando el-Rparámetro. En ese caso, puede intentar arreglar cada entrada manualmente, o puede ir directamente a una nueva instalación ...fuente
mount /dev/sda /mnt/mydiskdesderoot@Ubuntu:/dev#mkdir -p /mnt/mydisk && mount /dev/sda1 /mnt/mydisk(no creo que tengas particiones/dev/sda, así que debes haber perdido también el número de partición. Asegúrate de especificar el dispositivo correcto (o el montaje fallará).Creo que Mat está en lo correcto, debes ser root para agregar el bit a / usr / bin, pero por supuesto sudo está roto. Si tiene una contraseña de root, puede usarla para iniciar sesión como root y luego corregir los permisos con el comando anterior. Sin embargo, si no lo hace (y yo tampoco), probablemente sería mejor:
Root siempre es el número de usuario 0, por lo que root en cualquier sistema puede realizar cambios permitidos en otros sistemas de archivos.
fuente
No tengo mucho conocimiento Pero estos pasos resolvieron mi problema incluso sin reiniciar mi máquina. Sigue estos pasos:
fuente
root, que no es la configuración predeterminada de Ubuntu.En un intento de establecer permisos para mis scripts locales, rompí el permiso de sudo y cambié de propietario, por error. Pude volver a cambiar la propiedad de sudo a root haciendo lo siguiente:
Paso 1: cambia al modo de recuperación de ubuntu . Si no conoce el proceso, puede consultar una respuesta aquí: /ubuntu//a/172346/223901
Paso 2: una vez en el modo de recuperación, seleccione root - Soltar al indicador de shell de root
Paso 3: haz los siguientes comandos
Espere a que su sistema arranque normalmente y verá la propiedad de sudo de nuevo a la raíz.
fuente