Gestión de archivos

Cómo crear enlaces duros en Linux?

Cómo crear enlaces duros en Linux?

La vinculación es una característica interesante en Linux. En los sistemas operativos tipo UNIX, todo es un archivo. Un archivo es fundamentalmente un enlace a un inodo, un tipo especial de estructura de datos que almacena todo sobre un determinado archivo excepto su nombre original y su contenido real.Esta es la característica que aprovecha los enlaces. Crear un enlace es crear otro archivo que apunte al mismo inodo subyacente que otro archivo. En muchas situaciones, es un método increíblemente útil.

Vea cómo crear enlaces físicos en Linux.

Enlaces duros en Linux

Antes de profundizar, hablemos un poco sobre los enlaces duros y blandos. Hay algunas diferencias fundamentales entre ellos. En el caso de un enlace físico, solo puede existir en el mismo sistema de archivos, mientras que el enlace simbólico persistirá entre sistemas de archivos. Además, solo se puede realizar en archivos normales. Tampoco puede crear enlaces duros de directorio, por lo que no crea un bucle de directorio.

Si se elimina un archivo del enlace físico, elimina el enlace del inodo subyacente.

El comando ls puede imprimir el inodo de un archivo / directorio de destino.

$ ls -li

Creando enlaces duros

Generar un enlace físico es bastante simple. Para crear enlaces, ln es la herramienta dedicada disponible en casi todas las distribuciones de Linux.

Utilice la siguiente estructura de comando para crear un vínculo físico. Tenga en cuenta que el destino debe estar dentro del mismo sistema de archivos. La bandera "-v" es para el modo detallado.

$ ln -v


Verifica el resultado.

$ ls -li


En cuanto a la vinculación dura de directorios, no está permitido. Hipotéticamente, todavía es posible crear, pero la mayoría de las distribuciones de Linux deshabilitan esa función, incluso si ejecuta la acción con privilegios de root. Para vincular directorios, use enlaces suaves.

Enlaces blandos

Los enlaces suaves se denominan comúnmente enlaces simbólicos. Los enlaces suaves pueden ser entre sistemas de archivos. Por definición, no es un archivo estándar, sino un archivo que apunta a un archivo existente. Aquí, el archivo de enlace suave tendrá un valor de inodo diferente, pero apunta al archivo original.

Al igual que crear enlaces físicos, usaremos la herramienta ln. Para declarar la creación de un enlace flexible, agregue la marca "-s".

$ ln -vs


Verifica el resultado.

$ ls -li

Si ya existe un enlace, puede actualizarlo usando la marca "-f" que obliga a ln a actualizar el enlace sin ninguna confirmación. Alternativamente, puede utilizar la marca "-i" para la creación de enlaces interactivos.

$ ln -sf


No olvide verificar el resultado.

$ ls -li

Encontrar enlaces

Suponiendo que hay varios enlaces al mismo archivo, hacer un seguimiento de ellos puede resultar difícil. En tal situación, utilice este método para averiguar todos los enlaces.

Para esto, necesitamos el valor de inodo del archivo original. Utilice el siguiente comando para averiguar el número de inodo.

$ ls -li


Ahora, use el número de inodo para encontrar todos los enlaces a ese archivo. Aquí, el directorio activo actual debería ser el directorio donde se encuentra el archivo original.

$ encontrar . -inum

Eliminando enlaces

Si desea deshabilitar un enlace físico, la forma de hacerlo es eliminando el archivo vinculado.

$ rm

Pensamientos finales

La vinculación es una herramienta poderosa que puede utilizar en muchas situaciones. Si bien tiene sus propias limitaciones, puede ofrecer excelentes beneficios en muchos escenarios.

Interesado en más información sobre el comando ln? Vea cómo usar el comando ln.

Computación feliz!

Cómo desarrollar un juego en Linux
Hace una década, no muchos usuarios de Linux predecían que su sistema operativo favorito algún día sería una plataforma de juegos popular para videoju...
Puertos de código abierto de motores de juegos comerciales
Las recreaciones gratuitas, de código abierto y de motores de juegos multiplataforma se pueden usar para jugar títulos de juegos antiguos y también al...
Los mejores juegos de línea de comandos para Linux
La línea de comandos no es solo su mayor aliado cuando usa Linux, también puede ser la fuente de entretenimiento porque puede usarla para jugar muchos...