De alguna manera, me las arreglé para chmod y chown my ~ en el olvido.
Cuando intento iniciar sesión a través del shell, obtengo
bash: ~/.bashrc : Permission denied
Incluso después ( como root ) he corrido
chown -hR nroach44 /home/nroach44
y
chmod -R 666 /home/nroach44
o ( como nroach44 )
chmod -R 644 /home/nroach44
Ninguno de estos comandos devuelve errores.
También:
ls -la /home/nroach44
Devuelve muchos
drw-rw-rw- 1 nroach44 nroach44 4096 --date-- ti:me foldername
¿Alguna ayuda?
permissions
chmod
chown
NRoach44
fuente
fuente
/home
debe serdrwxrwxr-x
yroot:root
, y/home/user
rw rw -- or r-
dependiendo de si quiere que otros usuarios puedan leer sus archivos de los usuarios. Directorios y archivos ejecutables conx
. El mismouser
directorio interno no será un problema si tiene el grupo = usuario (nroach44: nroach44) como parece tener (solo daría permisos 0 (---) en otros).Respuestas:
o
Esto hará que todos los archivos en su directorio de inicio no sean ejecutables. No fue una buena idea;)
No sé cómo limpiar este desastre, como una solución rápida que puedes intentar hacer como root:
Este comando otorgará permisos de ejecución a todos los archivos en su carpeta de inicio. Debería resolver sus problemas inmediatos, pero podría ser una pesadilla de seguridad.
La mejor solución es abrir otra cuenta de usuario y transferirle archivos y configuraciones uno por uno.
fuente
Los directorios deben tener el bit de ejecución establecido para permitirle descender al directorio. Llanura
666
es malo, incluso si se está ejecutando como root. Les da a todos permisos de escritura.Para hacer los archivos más seguros, ejecute:
Para hacer que las carpetas sean descendibles nuevamente, ejecute:
Nota: Elegí para xx0 porque algunos archivos pueden ser confidenciales y otros no pueden leerlos. Solo para guardar, elimine los permisos de lectura / escritura / ejecución para el mundo.
fuente
Como parece que tiene permisos suficientes en ~, debe
/home
tener permiso x para otros (sudo chmod +rx /home
) y verificar si los permisos están bien en el/home/nroach44/.bashrc
archivo.Otro punto, los directorios deben tener permisos x para permitir ingresarlos, por lo que para solucionarlos, debe ejecutar
sudo chmod -R +X /home/nroach44
.fuente
X
+1X
es muy útil y también me alegró descubrirlo ... ¡¡¡después de mucho tiempo usando find !!Esto se debe a que ha desordenado los permisos de todos los archivos en su carpeta HOME. Tenga mucho cuidado al jugar con permisos de archivos, use chmod y chown con mucho cuidado o puede terminar con un desastre.
Creo que cambió los permisos de todos los archivos en su directorio de inicio, por lo que también se modificó el permiso de bashrc.
Los permisos predeterminados del script ~ / .bashrc son
Para explicarlo, debe tener permisos de lectura y escritura en el archivo, otros usuarios del grupo de usuarios deben poder leerlo y todos los demás también pueden leerlo.
Así que ahora cambie los permisos del script bashrc usando chmod a 644
si los comandos anteriores dan permiso denegado. luego
ejecutar chown primero como sudo
reemplace user1 con su nombre de usuario y usergrp con su grupo de usuarios predeterminado.
Ahora otra vez
ahora tendrá permisos para el script basrc, ahora intente iniciar sesión y verifique si obtiene otros errores :)
fuente
Los directorios necesitan un conjunto de x bits (para que el directorio se vea como bit de búsqueda) para abrir. Así que uso el árbol para poder obtener solo el conjunto de carpetas y evitar la pesadilla de tener todos los archivos configurados como ejecutables (la opción para el árbol es
-d List directories only.
):¡¡¡Advertencia!!! deberías tener esto en consideración:
el uso de chmod o chown recursive en el
/
directorio raíz o en los directorios del sistema destruirá su sistema operativo (en realidad, cualquier cosa recursiva en el/
directorio o directorios del sistema es peligrosa)esta no es una buena práctica de seguridad para establecer permisos masivos como ese
fuente