Los sistemas operativos Unix y Linux asignan derechos de acceso a archivos y directorios utilizando uno de los tres tipos de acceso (lectura, escritura y ejecución) asignados a cada uno de los tres grupos (propietario, grupo y otros usuarios).
Si enumera los detalles de los atributos de un archivo utilizando el comando ls con el parámetro -l (por ejemplo ls -l filename ), obtendrá información que se parecerá a la de -rwe-rw-rw-r– , lo que equivale a leer, escribir y ejecutar privilegios para el propietario, privilegios de lectura y escritura para el grupo, y sólo acceso de lectura para el resto de usuarios.
Cada uno de los tipos de derechos de acceso tiene un valor numérico asociado que se enumera a continuación:
- Leer = 4
- Escribir = 2
- Ejecutar = 1
Los valores de los derechos de acceso para cada uno de los grupos se suman para obtener un valor entre 0 y 7 que se puede utilizar para asignar o modificar permisos utilizando el comando chmod (modo de cambio).
En el ejemplo anterior, los derechos de acceso para el archivo en cuestión se pueden asignar introduciendo chmod 764 nombre de archivo . El número 764 se deriva de:
- rwe = 4 (leer) + 2 (escribir) + 1 (ejecutar) = 7
- rw = 4 (leer) + 2 (escribir) = 6
- r = 4 (leer) = 4
Puede utilizar el comando chmod para asignar derechos de acceso a archivos y directorios. Tenga en cuenta que los comandos y nombres de objetos de Unix y Linux distinguen entre mayúsculas y minúsculas. Debe utilizar » chmod » y no CHMod o cualquier otra combinación de letras mayúsculas y minúsculas.
Cómo usar el comando chmod:
- Acceso total para todos: chmod 777 nombrearchivo
- Acceso completo para los privilegios de propietario y de grupo, pero otros usuarios sólo pueden leer y ejecutar: chmod 775 nombrearchivo
- Acceso completo para el propietario, pero restringiendo los privilegios de grupo y otros usuarios para que sólo lean y ejecuten los archivos en el directorio: chmod 755 dirname
- Acceso completo para el propietario sin derechos de acceso ni privilegios para nadie más: chmod 700 filename
- No hay acceso a los archivos en el directorio para el grupo u otros usuarios y propietario restringido a leer y ejecutar privilegios para evitar la eliminación accidental o la modificación de archivos en el directorio: chmod 500 dirname
- Permitir al propietario y al grupo el acceso de lectura y escritura a un archivo, permitiendo a otros miembros del grupo editar o eliminar el archivo, así como al propietario, pero sin acceso para otros usuarios: chmod 660 nombrearchivo