Con el comando "ls -l" se pueden conocer los permisos de cada archivo o
directorio.
La primera columna define el tipo de archivo y los más comunes son:
moises@tonatiuh% ls -l /
Dentro de forma simbólica se usan las siguientes abreviaturas:
r - lectura w - escritura x - ejecución
= - igual a + - añade - - resta
Veamos los permisos de acceso del archivo hi:
moises@tonatiuh% ls -l hi
moises@tonatiuh% chmod a=r hi
moises@tonatiuh% ls -l hi
moises@tonatiuh% chmod ugo+wx hi
moises@tonatiuh% ls -l hi
moises@tonatiuh% chmod go-wx hi
moises@tonatiuh% ls -l hi
Veamos los permisos de nuestro archivo de prueba:
moises@tonatiuh% ls -l ht.org
moises@tonatiuh% chmod 444 ht.org
moises@tonatiuh% ls -l ht.org
u (rwx) = 4 + 2 + 1 = 7
o,g (r-x) = 4 + 1 = 5
moises@tonatiuh% chmod 755 ht.org
moises@tonatiuh% ls -l ht.org
Una de las características del Unix es la flexibilidad de crear grupos
de trabajo, para compartir información, recursos, etc. Para esto el
sistema define tres divisiones:
Además define tres tipos de acceso al sistema de archivos para
cada división, que son:
El usuario define los permisos de acceso a su información para el mismo
(u), para el grupo al que pertenece (g) y para los usuarios
restantes (o).
d Directorio
b Archivo especial (bloque)
c Archivo especial (caracteres)
l Liga simbólica
p Archivo especial (FIFO o pipe)
s Socket
- Archivo común
Las siguiente columnas define los permisos "rwx" para cada
división "ugo", ejemplo:
total 1597
lrwxrwxrwx 1 root root 9 Mar 7 1996 bin -> ./usr/bin/
drwxr-xr-x 2 root nobody 512 Sep 4 11:51 cdrom/
drwxrwxr-x 16 root sys 6656 Dec 18 01:47 dev/
. . .
Para cambiar los permisos de acceso se usa "chmod" y tiene dos
formas de uso, la primera es de forma simbólica y la segunda
numérica.
u - usuario g - grupo o - otros a - todos
Ejemplo:
-rw-r----- 1 moises atec 1209 Dec 9 15:56 hi
Cambiemos los permisos para que todos puedan leer únicamente:
-r--r--r-- 1 moises atec 1209 Dec 9 15:56 hi
o para que todos puedan también modificar y ejecutar:
-rwxrwxrwx 1 moises atec 1209 Dec 9 15:56 hi*
aquí se quitan los permisos de escritura y ejecución para el
grupo y otros, quedando solo el de lectura:
-rwxr--r-- 1 moises atec 1209 Dec 9 15:56 hi*
La otra manera de usar el comando es con la ayuda de lo siguiente.A cada posición de "rwx" se le relaciona un binario, dependiendo
de cual posición este en uso, dando como resultado un número:
BINARIO DECIMAL
r w x
______________________________________________
0 0 1 1
0 1 0 2
1 0 0 4
Para definir los permisos, solo se realizarían las sumas correspondientes a cada división, ejemplos:
-rw-r--r-- 1 moises atec 270 Apr 8 12:30 ht.org
Definamos para "ugo" permisos de lectura (4) únicamente:
-r--r--r-- 1 moises atec 270 Apr 8 12:30 ht.org
Definamos permisos de "rwx" para el usuario y de "rx" para el
grupo y otros, respectivamente:
-rwxr-xr-x 1 moises atec 270 Apr 8 12:30 ht.org