Avatar of admin

by

Enlaces duros en Unix y/o Linux

21/10/2009 in Manchegox

En informática, un enlace duro (en inglés, hard link) es una referencia o puntero a un archivo (al dato físico) en un sistema de archivos.

El nombre asociado a un archivo es simplemente una etiqueta almacenada en una estructura de directorio que referencia el sistema operativo al sistema de archivos. Por lo cual, más de un nombre puede ser asociado al mismo archivo. Cuando se accede a través de diferentes nombres, cualquier cambio hecho afectará el mismo archivo. Los enlaces duros sólo pueden referenciar datos que existen en el mismo sistema de archivos. En la mayoría de los sistemas de archivos, todos los archivos son enlaces duros.

Aunque se llamen de distinta forma, tanto los enlaces duros como el archivo original (enlace original) ofrecen la misma funcionalidad. Al modificar los datos apuntados por cualquiera de ellos, se cambian los datos reales almacenados en disco, quedando modificados para todos por igual. Al crearlos, debido a su naturaleza, los enlaces duros sólo pueden apuntar a datos que estén en el mismo sistema de archivos que el archivo (enlace) a partir del cual se creen, al ser en realidad una copia de la misma referencia a datos físicos pero apuntada por otra etiqueta.

Cada enlace duro aplica unos permisos de acceso a los datos referenciados. La creación de enlaces duros adicionales permite crear enlaces con distintos permisos o propietarios para acceder a los mismos datos. De esta forma, por ejemplo, un enlace puede permitir acceso de escritura, mientras que otro ofrezca sólo de lectura, pudiéndose crear distintas combinaciones para distintos grupos o usuarios. Asimismo, al ser indistinguibles de los archivos, se pueden utilizar enlaces duros para ofrecer acceso a datos desde entornos chroot sin necesidad de duplicar los datos en disco.

El proceso de eliminación de un enlace, desvincula un nombre de los datos reales. Los datos todavía estarán accesibles mientras quede algún enlace. Cuando se elimina el último enlace duro, el espacio que ocupaban los datos se considera disponible. Existe un procedimiento de recuperación de archivos borrados, que permite la reconstrucción de un enlace a datos que ya no estén asociados con un nombre. Sin embargo este proceso no está disponible en todos los sistemas y a menudo no es seguro que funcione.

En la mayoría de los sistemas de archivos que permitan enlaces duros, se almacena un valor entero con cada sección física de los datos, a esto se le llama contador de enlaces. Este número entero representa el número total de los enlaces duros que apuntan a los datos. Cuando se crea un nuevo enlace, este valor aumenta en uno. Cuando se quita un enlace, el valor disminuye en uno. El mantenimiento de este valor ayuda a los usuarios a prevenir las pérdidas de datos. Es también la manera más simple para que el sistema controle el uso del disco duro, pues cuando el valor es cero indica que el espacio esta libre y los valores distintos a cero indican que el espacio está en uso.

Fuente: Wikipedia.

1 response to Enlaces duros en Unix y/o Linux

  1. [New] Enlaces duros en Unix y/o Linux – via @twitoaster http://www.manchegox.org/enlaces-duros-e...

Leave a reply

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>