|
Page 1 of 2 En linux, los permisos son algo muy importante. Todos los archivos tienen dueño, pertenecen a un grupo y cuentan con protecciones enfocadas a lectura, escritura y ejecución. Podemos utilizar la orden ls para ver los permisos actuales de los archivos:
[aramirez@nopalitux ~]$ ls -l
Con ello obtendremos una lista con varias columnas separadas por espacios. Ejemplo:
drwxr-xr-x 2 aramirez aramirez 4096 oct 5 15:22 Desktop
en donde la tercera y la cuarta columna nos indican dueño y grupo para el archivo en cuestión (para el directorio Desktop en nuestro ejemplo).
En Red Hat podemos usar ls -Z para checar el contexto de seguridad agregado a los archivos por parte de SELinux.
Regresando a la salida proporcionada por la orden ls -l, podemos separar la primera columna (en este caso la formada por drwxr-xr-x) en dos partes: el primer caracter nos indica el tipo de archivo ("-" para un archivo como tal, "d" para un directorio, "b" para un dispositivo y "l" para un enlace) y los restantes 9 (rwxr-xr-x en nuestro ejemplo) son los que nos hablan de los permisos:
| segundo a cuarto (Ej. rwx) |
Permisos de acceso por parte del dueño del archivo. |
| quinto a séptimo (Ej. r-x) |
Permisos de acceso por parte del grupo al que pertenece el archivo. |
| octavo a décimo (Ej. r-x) |
Permisos de acceso al archivo para el resto de usuarios |
chmod, chown y chgrp
Para modificar los permisos de un archivo utilizamos la orden chmod. Existen dos formas de hacerlo:
- Por medio del uso de los caracteres. Con r (que significa lectura), w (que significa escritura) o x (que significa ejecución). Así, para agregar permisos a un usuario usamos tres símbolos: la "u" (de usuario), el "+" y el símbolo del permiso que queremos agregar. De manera análoga para el caso de asignación a un grupo (usando "g" como primer símbolo). Como ejemplo, podemos agregar permisos de escritura sobre "Desktop" a todo el grupo:
chmod g+w Desktop
o si queremos agregar permisos de ejecucion tanto para dueño como para grupo y el resto de usuarios al archivo test.sh,podemos omitir el primer símbolo:
chmod +x test.sh
- Por medio del uso de máscaras binarias. Asignamos un "1" cuando queremos el permiso y asignamos un "0" en caso contrario. Así, obtenemos para cada grupo de permisos una forma binaria. Por ejemplo, la forma binaria de los permisos rwx es 111, la forma binaria de los permisos r-x es 101, etc. Una vez que contamos con tal forma, sabemos que 111 binario es igual a 1+2+4=7 decimal, o 101=1+4=5 decimal, es decir, podemos asignar permisos rwxr-xr-x a Desktop con:
chmod 755 Desktop
Para modificar usuario y grupo al que pertenece un archivo utilizamos chown y chgrp respectivamente:
chown root Desktop
cambia como dueño de "Desktop" al usuario "root", y
|