Rain WikiWindows · Linux · Android

Permisos de archivos: chmod y chown

Herramienta de línea de comandosTodas las distribuciones Linux

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

  1. Comprobar el estado actual: ls -l /var/www/site
  2. Establecer el propietario: sudo chown -R www-data:www-data /var/www/site
  3. Establecer los directorios en 755: sudo find /var/www/site -type d -exec chmod 755 {} +
  4. 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.

Fuentes

  1. página del manual de chmod(1) man7.org
  2. página del manual de chown(1) man7.org

Última revisión: