Un enlace duro es una entrada de directorio que asocia un nombre con un archivo en un dispositivo de almacenamiento. Los enlaces duros se pueden utilizar para conectar archivos que están almacenados físicamente en diferentes lugares. Cuando se crea un enlace duro, el enlace y el archivo original apuntan a los mismos datos en el dispositivo de almacenamiento. La creación de un enlace duro no copia el archivo; sólo crea un nuevo nombre para un archivo existente. ¿El enlace duro crea un nuevo inodo? No. Un enlace duro comparte el mismo inodo que el archivo original.
¿Por qué usamos soft link y hard link en Linux?
Hay dos tipos de enlaces que se pueden crear en Linux: enlaces duros y enlaces blandos (también llamados enlaces simbólicos).
Los enlaces duros son esencialmente copias idénticas de un archivo. Si tienes dos enlaces duros a un archivo, y eliminas uno de los enlaces, el otro enlace seguirá apuntando al archivo y el archivo seguirá existiendo.
Los enlaces blandos son diferentes. Un enlace blando es como un acceso directo. Apunta al archivo original, pero si borras el enlace blando, el archivo original seguirá existiendo.
¿Qué es un enlace duro en Unix?
Un enlace duro es una entrada de directorio que asocia un nombre con un archivo en un sistema de archivos tipo Unix. Los enlaces duros son una parte importante del sistema de archivos Unix porque permiten que varios nombres se refieran al mismo archivo subyacente. Esto puede ser útil para crear alias o accesos directos, y para mantener múltiples copias de un archivo en diferentes lugares.
Los enlaces duros son diferentes de los enlaces simbólicos (o "blandos"), que también son entradas de directorio que asocian un nombre con un archivo. La diferencia clave es que un enlace simbólico contiene la ruta al archivo de destino, mientras que un enlace duro simplemente contiene el número de inodo del archivo de destino. Esto significa que los enlaces duros sólo pueden usarse para enlazar con archivos en el mismo sistema de archivos, mientras que los enlaces simbólicos pueden usarse para enlazar con archivos en cualquier sistema de archivos. ¿El enlace duro crea un nuevo inodo? No, un enlace duro no crea un nuevo inodo. El enlace duro crea una entrada en el directorio que apunta a un inodo ya existente.
¿Qué es un enlace blando en Unix? Un enlace blando es un enlace simbólico. Es un tipo especial de archivo que apunta a otro archivo. La principal diferencia entre un enlace blando y un enlace duro es que un enlace blando no contiene los datos del archivo de destino. Sólo contiene una referencia al archivo de destino.