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 /usr
entonces las cosas no están tan mal, ya que eso habrá cambiado los permisos solo en el /usr
directorio 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 666
del /usr
directorio y tiene acceso físico a la máquina, entonces la solución más simple debería ser
- Inicie en modo de recuperación a través del menú avanzado de grub y seleccione 'Soltar al shell raíz'
Vuelva a montar el sistema de archivos en modo lectura-escritura
mount -o remount,rw /
Ejecutar el comando
chmod 755 /usr
Noagregue cualquier otra opción de línea de comando ynoutilice comodines de shell.
Escriba
exit
para continuar arrancando normalmente
Tenga en cuenta chmod
que /bin
los /usr/bin
permisos de /usr
. Si (por ejemplo) cambiara los bits de permiso en el /bin
directorio, o en el /
directorio mismo, entonces este método no sería apropiado ya que no podría ejecutar chomd
desde 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 /mnt
el sistema activo, por ejemplo); y luego ejecutar chmod 755 /mnt/usr
desde 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