Autor: @jantoniorobledo
¿Qué es eso que sale
cuando listo con detalle un directorio?
Esto es lo puedo ver cuando hago
un listado de archivos en un directorio con el comando “ls -la”:
Vamos a ver con detalle que
información aparece:
El primer dato que devuelve el
comando es “total 32”. Esto nos indica el espacio en bloques de 1KB (1024
Bytes) que ocupan todos los archivos que están en este directorio.
El resto de líneas nos muestran
la información detallada de los directorios o ficheros existentes.
Vamos a usar como ejemplo la
tercera línea: el fichero filtrado.txt.
-rw-rw-r-- 1 lubuntu lubuntu 6515 jun
4 11:26 filtrado.txt
La primera parte, que es ese
montón de letras sin aparente sentido son los atributos o permisos del archivo.
Lo veremos en detalle después, vamos primeramente a ver cosas más sencillas.
Seguidamente tenemos un número,
en nuestro ejemplo el valor es 1, que indica el número de enlaces que existen a
este fichero.
A continuación, tenemos el nombre del usuario y el nombre
del grupo propietario del fichero, en este caso usuario lubuntu, grupo lubuntu.
Pensar que un fichero puede ser propiedad de un grupo al que no pertenece el
usuario, por ejemplo, usuario lubuntu, grupo root. Esto afecta a la gestión de
seguridad de acceso del fichero en cuestión.
Después nos encontramos otro
número: 6515. Es el tamaño en bytes del fichero. Os recomiendo usar el
parámetro “-h” (Human readable) junto a nuestro “ls -la” para que la
información de tamaño, sobre todo en el caso de archivos de gran tamaño, sea
más fácilmente legible. Este es un ejemplo de como se ve una lista de
directorio con y sin -h con archivos de cierto tamaño:
Como podéis observar, usar -h nos
evita contar el número de dígitos para leer el tamaño correctamente.
Seguimos con nuestra línea. Ahora
tenemos la fecha y la hora de última modificación del archivo: “jun 4 11:26”. Veréis que el año no aparece por que
ha transcurrido menos de ese periodo de tiempo desde la última modificación.
¿Qué ocurrirá el 4 de junio de de 2017 a las 11:27 de la mañana?: pues que si
no se ha modificado el fichero desde la fecha que vemos hoy, el comando nos
mostrará “jun 4 2015”, es decir, tendremos precisión de hasta
minutos en esta información durante un año, después se considera que con saber
el día de la última modificación es más que suficiente J!
No es necesario explicar que el
último dato que aparece es el nombre del fichero: filtrado.txt
Ahora los atributos
Pues vamos al meollo del post,
ver que significan y que información nos aportan los atributos de seguridad de
un archivo.
Vemos que es una lista de 10
caracteres que indican lo siguiente:
·
Primer carácter. En el ejemplo veréis valores
diferentes (d, l, -). Puede tener otros valores, pero estos son los 3,
llamémoslo, principales. ¿Que nos indica?: el tipo de objeto que es:
o
d: indica que es un directorio. Sí, eso del
punto y los dos puntos también son “punteros” a directorios: el punto es un
puntero al propio directorio que estáis mostrando y los dos puntos al
directorio padre, es decir el directorio jerárquicamente anterior en el árbol
de directorios.
o
l: nos dice que es un enlace (link) a otro archivo.
En nuestro ejemplo veréis que hay un archivo readme.sll.txt que apunta al
fichero /usr/share/doc/ssl-cert/README. Esto nos permite actuar sobre el
fichero apuntado (el /usr/share/…/README) usando nuestro enlace (readme.sll.txt),
para por ejemplo visualizar su contenido o editarlo. Cuando hacemos nano
readme.sll.txt, realmente estoy editando el fichero README en /usr/share/. ¿Y
qué pasa si borro con un rm el enlace?, pues eso, que borro el enlace, no el
fichero enlazado.
o
-: un sencillo guion nos indica que lo que
estamos viendo es ni más ni menos que un simple archivo.
Los 9 caracteres
siguientes son 3 grupos de 3 atributos y vamos a verlos así.
- El primer grupo de 3 indica que permisos tiene el usuario, en este caso lubuntu, sobre el fichero. Cada carácter indica una cosa y siempre están en el mismo orden:
o
r: tenemos permiso de lectura (Read) sobre el
fichero. Si aparece un guion indica que no tenemos ese permiso.
o
w: indica que tenemos permiso de escritura
(Write) sobre el fichero. Como en el caso anterior si aparece un guion indica
que no tenemos ese permiso.
o
x: tenemos permiso de ejecución (eXecution)
sobre el fichero, y como anteriormente si aparece un guion indica que no
tenemos ese permiso.
- El segundo grupo de 3 caracteres indica que permisos tiene el grupo, también en este caso el grupo se llama lubuntu sobre el fichero. Los valores que podremos ver son los mismos que en el caso anterior
- Y por último, el tercer grupo nos indica que permisos tiene el resto de usuarios/grupos. Tambien puede tener los mismos valores.
Ahora vamos a analizar nuestro
ejemplo: el archivo filtrado.txt tiene los atributos -rw-rw-r—
El primero, “-“, nos dice que es un archivo.
El grupo de permisos de usuario es “rw-“: el usuario lubuntu
tiene permisos de lectura y escritura.
El grupo de permisos del grupo es también “rw-“, por tanto todos
los usuarios que pertenezcan al grupo “lubuntu” también tendrán permisos de
lectura y escritura sobre el archivo.
Por último, tenemos el grupo de permisos de otros, que en este
caso es “r—“, lo que indica que cualquier usuario que no sea lubuntu o
pertenezca al grupo lubuntu solo podrá leer el archivo.
Como veis no es posible ejecutar el archivo para ningún usuario
ni grupo por no tener el atributo “x” de ejecución activo.
Y esto es todo por hoy, en
próximos post veremos cómo actuar sobre los permisos de los archivos y muchas
más cosas.
No hay comentarios:
Publicar un comentario