¿Cómo puedo recursivamente chmod todo dentro de una carpeta?
Por ejemplo, tengo una carpeta llamada var
que contiene muchas subcarpetas y archivos.
¿Cómo puedo aplicar chmod 755 recursivamente a esta carpeta y a todo su contenido?
Consulte el manual ( man chmod
):
-R, --recursive
change files and directories recursively
chmod -R 755 /path/to/directory
realizaría lo que quieras.
Sin embargo…
Por lo general, no desea 755 todos los archivos ; estos deben ser 644, ya que a menudo no necesitan ser ejecutables. Por lo tanto, solo puede hacer find /path/to/directory -type d -exec chmod 755 {} \;
para cambiar los permisos de directorio. Use -type f
y chmod 644
para aplicar los permisos a los archivos.
Esto sobrescribirá los permisos existentes. No es una buena idea hacerlo /var
: esa carpeta ya tiene los permisos correctos configurados por el sistema. Por ejemplo, algunos directorios /var
requieren permisos 775 (por ejemplo, /var/log
).
Entonces, antes de hacerlo sudo chmod
, particularmente en las carpetas del sistema, haga una pausa y piense si eso es realmente necesario.
[augo]+X
se admite mayúsculas para agregar solo + x si el objeto ya es ejecutable.+X
antes: es muy útil con varios archivos, ya sea desde-R
una máscara de archivo o en el procesamiento de archivos encontrados confind
. Un consejo realmente útil.