Los permisos de Linux, es una parte
fundamental en su aprendizaje, ya que involucra el acceso, la seguridad, la
accesibilidad y la comodidad de los usuarios para ejecutar sus tareas de
acuerdo al nivel de acceso que éste posee en el sistema. Es importante por esto
aprender cómo funciona y cuál es la importancia del comando chmod, así como
saber también las posibles consecuencias de un mal uso o de una no-aplicación
de este último.
Nuestro sistema nos proporciona un mecanismo
conocido como permisos para proteger ficheros de usuarios del sistema, de la
manipulación de otros usuarios, ya que Linux como sabemos es multiusuario. Los
permisos están divididos en tres tipos:
1. Permisos de lectura, representado por la letra
"r".
2. Permisos de escritura, representado por la
letra "w".
3. Permisos de
ejecución, representado por la letra "x".
A su vez estos permisos pueden ser fijados
para tres clases de usuarios:
1. Dueño del archivo: u.
2. Grupo al que pertenece el archivo: g.
3. El resto de
usuarios: o.
Aquí
vemos un ejemplo en cuanto a permisos de un fichero: root@badclustering$ ls -l
/home/
drwxr-xr-x 27 juanito 3456 Jan 10 13:03 juanito permisos
prop. Grupo fecha nombre del fichero.
Hay
que tener en cuenta que los permisos de los archivos dependen de los permisos
del directorio en el que se encuentra, ya que, si no tenemos acceso al
directorio, no podemos tener acceso a los archivos que éste contiene.
El comando chmod
El
comando chmod es el que te va a permitir manipular todos los permisos a tu
gusto, consta de 3 operadores, veamos cuales son:
1.
"+" para agregar permisos.
2.
"-" para quitar permisos.
3. "=" para asignar
permisos.
Por
ejemplo, podríamos establecer para asignar permisos de ejecución a un fichero:
chmod +x fichero.
En
este caso estamos dándole permisos de ejecución, tanto para el usuario
propietario, el grupo y para el resto de usuarios.
¿Pero
qué sucede, si yo solo quiero que el propietario del sistema tenga permisos de
ejecución del fichero, y no todos los demás como lo acabo de hacer
anteriormente?
Análogamente
lo puedes hacer para darle permisos al grupo o al resto con las letras g y o
respectivamente.
Definiendo permisos con el sistema
Existe
otro método para definir permisos. Este sistema se llama: "sistema
octal". En este sistema los números representan permisos. Por ejemplo:
0001, 0100, 0400, 1000, etcétera.
Estos
se basan en la suma de los 3 valores: los de lectura, escritura y ejecución:
Ejecución
-> valor 1
Escritura
-> valor 2
Lectura
-> valor 4
La
combinación de estos, nos da números del cero al siete, de esta manera:
0 = sin permisos.
1 = ejecución.
2 = escritura.
3 = escritura y ejecución.
4 = lectura. 5 = lectura y ejecución.
6 = lectura y escritura.
7 = lectura, escritura y ejecución.
Esto
quiere decir que al propietario le estamos dando los permisos de lectura,
escritura y ejecución. Para el grupo los permisos de lectura y ejecución,
igualmente para el resto de usuarios, ya que ambos tienen el permiso 5.
Permisos Especiales
Existen además de los permisos ya
mencionados otros permisos, que los necesitarás en alguna oportunidad, y que es
necesario que sepas. Son los permisos de SUID, SGID y el sticky bit.
4000 Establece el número de
identificación de usuario al ejecutarse SUID.
2000 Establece el número de
identificación de grupo al ejecutarse SGID.
1000 Establece el bit adhesivo (sticky
bit).
No hay comentarios:
Publicar un comentario