Permiso denegado para 'sudo' después de 'sudo chmod 666 /usr'

Permiso denegado para 'sudo' después de 'sudo chmod 666 /usr'

He cometido un gran error y ahora no puedo hacer nada en mi puesto de trabajo. Intenté iniciar VirtualBox y me quejé de que /usr tenía acceso de ejecución. Luego ejecuté, erróneamente, sudo chmod 666 /usr y ahora ya no puedo ejecutar 'sudo'.

Le pregunté a nuestro departamento técnico y me dijeron que Ubuntu no tiene contraseña para root, por lo que no pueden ver ninguna solución para mi error, pero reinstalan Ubuntu nuevamente, lo que significa que perdería todo mi trabajo.

Espero que alguno de ustedes pueda pensar en una solución para este problema porque. ¿Qué crees que debería hacer para obtener acceso nuevamente en /usr o convertirme en usuario root?

Respuesta1

Si lo acaba de hacer, sudo chmod 666 /usrentonces las cosas no están tan mal, ya que eso habrá cambiado los permisos solo en el /usrdirectorio principal, no en ninguno de los archivos de los subdirectorios dentro de él.

Sin embargo, si agregó el indicador recursivo -R, es casi seguro que será mejor que reinstale el sistema. Aún así,no debería haber ninguna razón para perder datos: puede iniciar desde un USB o DVD en vivo y hacer una copia de seguridad de sus archivos importantes desde allí primero.

Sisolo hizo un análisis no recursivo sudo chmod 666del /usrdirectorio y tiene acceso físico a la máquina, entonces la solución más simple debería ser

  1. Inicie en modo de recuperación a través del menú avanzado de grub y seleccione 'Soltar al shell raíz'
  2. Vuelva a montar el sistema de archivos en modo lectura-escritura

    mount -o remount,rw /
    
  3. Ejecutar el comando

    chmod 755 /usr
    

    Noagregue cualquier otra opción de línea de comando ynoutilice comodines de shell.

  4. Escriba exitpara continuar arrancando normalmente


Tenga en cuenta chmodque /binlos /usr/binpermisos de /usr. Si (por ejemplo) cambiara los bits de permiso en el /bindirectorio, o en el /directorio mismo, entonces este método no sería apropiado ya que no podría ejecutar chomddesde el modo de recuperación; la mejor opción en ese caso probablemente sería ser arrancar un CD/DVD/USB en vivo de cualquier distribución de Linux disponible (no es necesario que sea Ubuntu); identificar y montar el dispositivo raíz del sistema averiado (en /mntel sistema activo, por ejemplo); y luego ejecutar chmod 755 /mnt/usrdesde el sistema en vivo.

Respuesta2

Es posible que su comando haya eliminado el bit SUID de /usr/bin/sudo. Los permisos correctos deberían ser:

-rwsr-xr-x 1 root root 136808 Aug 17 15:20 /usr/bin/sudo

Debería obtener un CD de recuperación, como se menciona en los comentarios anteriores y seguir los pasos de la sección "encontrar su partición raíz". Después de montarlo exitosamente, configure el SUID-Bit con: chmod 4755 /usr/bin/sudo

información relacionada