Permisos de archivos: chmod y chown
Cada archivo y directorio en Linux tiene un propietario, un grupo y tres conjuntos de permisos: para el propietario, para el grupo y para todos los demás. chmod cambia los permisos (el modo) y chown cambia el propietario y el grupo. ls -l muestra ambos.
1Lectura de permisos
En la salida de ls -l, -rw-r--r-- significa un archivo normal que el propietario puede leer y escribir, y los demás solo leer. r es lectura (read), w es escritura (write) y x es ejecución (execute); para un directorio, x permite entrar en él.
2Modos numéricos
Cada conjunto es un dígito: la lectura es 4, la escritura 2 y la ejecución 1, sumados entre sí. 644 (rw-r--r--) es típico para archivos, 755 (rwxr-xr-x) para directorios y programas, y 600 (rw-------) para archivos privados como las claves SSH.
3Cambiar el propietario
sudo chown user:group file establece el propietario y el grupo. Con -R tanto chmod como chown funcionan de forma recursiva a través de un árbol de directorios.
Cómo reparar los permisos de una carpeta web
- Comprobar el estado actual:
ls -l /var/www/site - Establecer el propietario:
sudo chown -R www-data:www-data /var/www/site - Establecer los directorios en 755:
sudo find /var/www/site -type d -exec chmod 755 {} + - Establecer los archivos en 644:
sudo find /var/www/site -type f -exec chmod 644 {} +
Precauciones
- Nunca use
chmod -R 777: permite que cualquier usuario y proceso modifique los archivos. - Un chmod o chown recursivo en la ruta incorrecta, como / o
/usr, puede dañar el sistema.
Artículos relacionados
- Claves SSHCómo funciona la autenticación mediante claves SSH, cómo crear una clave con ssh-keygen, instalarla en un servidor y protegerla.
- Búsqueda de archivos grandes y antiguos con findCómo usar find para listar archivos grandes o antiguos en Linux, previsualizarlos de forma segura y eliminar solo lo que haya revisado.
- /tmp y archivos temporalesPara qué sirven /tmp y /var/tmp, cuándo los limpia Linux y cómo systemd-tmpfiles controla sus límites de antigüedad.
Fuentes
- página del manual de chmod(1) man7.org
- página del manual de chown(1) man7.org
Última revisión: