Category Archives: Artículo

Permisos

MENSAJE #57166 Por Izto, Sab 18 de Ago de 2001 13:50 (CDT)
——-

Oh cielos.. se fijan lo que pasa cuando uno usa wizardcillos que hacen las
cosas automagicamente..? Para que vean que no todos los wizardcillos son
graficos y con botones de “Siguiente” y “Terminar”, ahi esta el ejemplo de la
capacidad de trabajar con simbolos del chmod.. asi que aqui va una pequenia
contribucion sobre los permisos de archivos en *nix:

En un sistema de archivos tipo Unix, todos los archivos tienen relacionados
con ellos 12 bits de permisos, separados en 4 grupos:

xxx xxx xxx xxx
Especial Duenio Grupo Otros

Los bits menos significativos (duenio, grupo, otros) son los que todo el mundo
conoce -bueno, mas o menos- y representan (en cada grupo de tres) permisos de

lectura (r), escritura (w) y ejecucion (x) ==> Para archivos normales
lectura (r), escritura (w) y exploracion (x) ==> Para directorios

Lectura y escritura deben ser claros para todo el mundo. Ejecucion es la forma
en que se le indica al sistema operativo que este archivo se debe tratar como
un programa (de hecho, se le indica al shell) y que aquellos que tienen
permiso de ejecucion (usuarios, esto es) pueden utilizarlo.

El bit “x” para los directorios significa eXploracion, o sea que el usuario
con ese permiso puede entrar a ese directorio. Un directorio puede no tener
permisos de lectura ni de escritura para un usuario o grupo pero si de
exploracion, lo cual permite ciertas situaciones interesantes, como que aunque
no puedas ver el listado de archivos del directorio (no tienes permiso de
lectura) si puedes entrar a ese directorio y ejecutar o leer un archivo que
este ahi, siempre y cuando tengas permiso de exploracion.

Una nota sobre el significado de “duenio, grupo, otros”: todo archivo en el
sistema debe pertenecer a algun usuario y a algun grupo. Los grupos de bits de
duenio especifican que puede hacer el duenio del archivo con el, y lo mismo
aplica para los de grupo respecto de lo que pueden hacer los usuarios en ese
grupo con el. Los permisos de “Otros” dicen lo que pueden hacer aquellos
usuarios que no son ni el duenio ni pertenecen al grupo del archivo.

Ahora, con los bits de permisos especiales. Son los 3 bits mas significativos
(los que estan mas a la izquierda) de los 12 bits de permisos, y su
significado es:

Establecer ID de usuario, Establecer ID de grupo y Salvar imagen
(Archivos normales)

Para directorios, el bit de “Salvar imagen” actua distinto: un directorio con
ese bit establecido permite que solo el usuario que creo un archivo pueda
borrarlo (asumiendo que tenia permiso de crearlo en primer lugar, desde
luego).

Establecer ID de usuario (Set User ID o Set UID) tiene efecto solo en archivos
con el bit de ejecucion establecido. Significa que al ejecutarse el programa
el proceso generado tendra los mismos privilegios que el duenio del archivo,
aun cuando sea ejecutado por alguien mas. Varios programas usan esta tecnica
en su sistema, pueden encontrarlos con este comando:

find / -perm +1000 -exec ls -l {} \;

Establecer ID de grupo (Set Group ID o Set GID) tiene el mismo efecto del
SUID, pero aplicable al grupo al que pertenece el archivo en lugar del duenio.

Finalmente, el archivo de “Salvar imagen” (Save text-image o Sticky
bit==>pegajoso). En un archivo ejecutable significa que el sistema va a
guardar en un buffer en memoria el codigo ejecutable del programa la primera
vez que lo ejecutas, de forma que la siguiente vez que lo ejecutes no tenga
que ser leido nuevamente del disco. Esto es bueno para comandos ejecutados
frecuentemente como “ls”. Sin embargo, esta es una especificaicion antigua y
no todos los sistemas lo implementan (no estoy seguro de que Linux lo haga,
por ejemplo).

En directorios, el “Sticky bit” ya explique lo que hace. Si alguien puede
excribir en un directorio, nadie mas puede borrar sus archivos, aun si esas
otras personas tienen permiso de escritura para el directorio. Un ejemplo esta
en el directorio /tmp de muchas distribuciones: ls -l /tmp

AHORA, todo comenzo porque muchos de ustede estan acostumbrados a trabajar
simbolicamente con el chmod, pero eso los llevo a mucha confusion. Mi
sugerencia es entonces que en lugar de hacerlo simbolicamente, le digan al
chmod exactamente como quieren los permisos ahora que ya saben de donde salen.
Recuerden que son 12 bits, si los dividen en 4 grupos de 3 bits entonces
pueden representarlos con 4 digitos en octal. Ejemplos:

Lectura/escritura para duenio, solo lectura para grupo y otros:

-rw-r–r– 1 izto users 0 Aug 18 14:18 archivo
110100100 –> 110 100 100 –> 644 –> chmod 644 archivo

Lec/esc/ejecucion para duenio y grupo, nada para otros:

-rwxrwx— 1 izto users 0 Aug 18 14:18 archivo
111111000 –> 111 111 000 –> 770 –> chmod 770 archivo

Igual que el anterior, pero con SUID:

-rwsrwx— 1 izto users 0 Aug 18 14:18 archivo
111111000 (con bits especiales 100) –> 100 111 111 000 -> 4770->chmod 4770

Ahora con SGID:

-rwsrws— 1 izto users 0 Aug 18 14:18 archivo*
111111000 (con bits especiales 110) –> 110 111 111 000 -> 6770->chmod 6770

Espero que esto haya aclarado para alguien como estan organizados y como se
manipulan los bits de permisos. Si no, su libro favorito de Unix se los
explicara con toda claridad 😉

Busqueda semantica -Introducción-

La búsqueda semántica se ha descrito en diversas formas, en este momento se denotará como una manera de extraer información oportuna de una gran cantidad de datos existentes en la WEB.

En muchas ocasiones nos hemos encontrado con usuarios que navegan con intención de obtener información para su vida cotidiana así como para documentar procesos laborales, sin embargo, cuando entran a los motores de búsqueda los resultados no son los esperados, por lo que regularmente nos viene a la cabeza el dicho: “Busco, busco, pero no me busco”; esto significa que la información que necesita el usuario existe pero no se encuentra segmentada adecuadamente.

La mayoría de los buscadores de información ya han iniciado la incorporación de algunos algoritmos necesarios en la recolección de datos segmentados bajo los criterios de la búsqueda semántica donde radica su importancia como ante sala de la Web 3.0. Quizás aún estemos lejos de tener una Web Semántica, donde existan elementos tan ricos en información, que cuando pusiéramos en un buscador las palabras como por ejemplo “autor Octavio Paz” los resultados deberían de tratar sobre los escritos donde está definido como autor y no los que hablen sobre él.

¿Cómo podemos hacer uso de éstas nuevos algoritmos en los buscadores? Lo primero que se debe considerar es utilizar un lenguaje más natural enriqueciendo nuestros documentos con más sinónimos, ya que la búsqueda semántica nos agrupa las palabras con el mismo origen y genera un peso más acertado para encontrar lo que se necesita.

Adicionalmente es indispensable apoyarse de las herramientas tecnológicas que se tienen a nuestro alcance. Una forma de realizarlo es mediante la utilización de microformatos(1) los cuales no afectan el contenido del documento y permiten que los buscadores ofrezcan resultados más concisos. Los microformatos permiten la representación de eventos, información de contacto, relaciones sociales, direcciones, ubicaciones (coordenadas), etc.;

Cuando se realicen enlaces a otros documentos en Internet (archivos, imágenes, etc.), es indispensable ser más explícitos en cómo escribe la referencia; por ejemplo, es algo común leer sitios web donde para desplegar más información en una reseña de un evento solo tenemos una instrucción con un enlace que dice: “Dé clic aquí” sin que le dé al lector o usuario más pistas sobre lo que pasará al dar clic.

Unos cuantos cambios sutiles en nuestros documentos publicados en Internet, permiten enriquecer la experiencia de nuestros lectores y mejorar el posicionamiento entre los buscadores lo cual se puede reflejar en el aumento de las visitas a nuestro sitio web. Podemos concluir que un uso adecuado de la búsqueda semántica es indispensable para posicionarnos adecuadamente en la mayoría de los buscadores más utilizados en la época.

1Un microformato (a veces abreviado con μF o uF) es una forma simple de agregar significado semántico a un contenido legible por el humano y que para la máquina es sólo texto plano.