Hay dos tipos de enlaces simbólicos, enlaces duros y enlaces suaves. El comando ln se puede utilizar para crear enlaces tanto físicos como blandos.
Enlaces duros:
Estos son solo otro nombre para el mismo archivo. También puedes llamarlo un alias. Los enlaces físicos tienen el mismo número de inodo que el archivo original. Por lo tanto, no son realmente diferentes del archivo original, otro nombre tiene un nombre diferente.
Los enlaces duros tienen algunas limitaciones.
- No se pueden crear enlaces duros para directorios. Solo se puede crear para archivos.
- El enlace duro de un archivo que reside en un sistema de archivos no se puede crear en un sistema de archivos diferente.
- El enlace físico que reside en una partición no se puede crear en una partición o dispositivos de almacenamiento diferentes.
Enlaces suaves:
Los enlaces blandos básicamente superan las limitaciones de los enlaces duros. Puede crear enlaces suaves de archivos y directorios. Los enlaces suaves pueden apuntar a archivos y directorios que residen en diferentes sistemas de archivos. Los enlaces suaves también pueden apuntar a archivos y directorios que residen en diferentes particiones y diferentes dispositivos de almacenamiento, incluso montajes de red.
A diferencia de los enlaces duros, los enlaces blandos tienen sus propios números de inodo. Por lo tanto, son archivos o directorios diferentes a los archivos o directorios originales.
La desventaja de los enlaces blandos es que, si el archivo o directorio original se cambia de nombre, se mueve o se elimina, el enlace se rompe. En este caso, deberá rehacer el enlace manualmente.
El comando ln está disponible en todas las distribuciones de Linux de forma predeterminada. Entonces, no tiene que instalarlo por separado.
En este artículo, le mostraré cómo usar el comando Linux ln para crear enlaces simbólicos duros y blandos. También le mostraré cómo administrar enlaces simbólicos duros y blandos creados con el comando ln. Entonces empecemos.
Creación y eliminación de un vínculo simbólico duro:
Para hacer un vínculo físico de un archivo (digamos prueba.TXT), ejecute el siguiente comando:
$ ln prueba.txt test_hl.TXT
NOTA: Aquí, test_hl.TXT es un enlace duro al archivo prueba.TXT.
Ahora, si comprueba el número de inodo (33577665 en mi caso) de los archivos prueba.TXT y test_hl.TXT, encontrará que ambos archivos tienen los mismos números de inodo. Esto se espera ya que hemos creado un enlace fijo del archivo prueba.TXT. Entonces, el archivo de enlace test_hl.TXT también tiene el mismo número de inodo que el prueba.TXT expediente.
$ ls -li
El número 2 aquí se asemeja al número total de archivos con el mismo número de inodo. En nuestro caso, tenemos 2 archivos con el mismo número de inodo.
Si lo desea, puede poner el enlace duro a un directorio diferente de la siguiente manera:
$ ln prueba.txt / dir1 / dir2 / test_hl.TXTPara eliminar el enlace duro test_hl.TXT, ejecute el siguiente comando:
$ unlink test_hl.TXT
Como puede ver, el test_hl.TXT el enlace duro ya no está en la lista.
Creación y eliminación de enlaces blandos:
Para crear un enlace suave del archivo prueba.TXT, ejecute el siguiente comando:
prueba $ ln -s.txt test_sl.TXT
Como puede ver, el enlace suave test_sl.TXT de la prueba de archivo.txt se crea. En el listado de ls, el enlace suave usa -> firmar para mostrar el enlace al archivo original. Además, tenga en cuenta que los números de inodo del archivo original prueba.TXT (33577665) y el enlace suave test_sl.TXT (33577676) es diferente.
También puede crear enlaces suaves de directorios.
Por ejemplo, para hacer un enlace suave del directorio / etc, ejecute el comando ln de la siguiente manera:
$ ln -s / etc config
Como puede ver, el enlace suave config del directorio / etc es creado.
También puede poner el enlace suave de un archivo o directorio en otro directorio. Para hacer eso, ejecute el comando ln de la siguiente manera:
prueba $ ln -s.txt / dir1 / dir2 / test_sl.TXTO
$ ln -s test_dir / dir1 / dir2 / test_dir_slPuede eliminar el enlace suave test_sl.txt de la siguiente manera:
$ unlink test_sl.TXT
Actualización de enlaces blandos:
A veces, puede terminar eliminando el archivo o directorio original sin eliminar el enlace suave. Esto dejará el enlace suave roto. O puede haber hecho un enlace suave a un archivo o directorio incorrecto por error.
En ambos casos, puede actualizar el enlace de software muy fácilmente con el -F opción del comando ln.
Digamos que desea actualizar el enlace suave test_sl.TXT y vincularlo a un nuevo archivo Hola.TXT.
Para hacer eso, ejecute el siguiente comando:
$ ln -sf hola.txt test_sl.TXTComo puede ver, el enlace suave se actualiza.
De la misma manera, puede actualizar enlaces suaves a un directorio o archivos en otro directorio.
Entonces, así es como usa el comando Linux ln para hacer enlaces simbólicos suaves y duros. Gracias por leer este artículo.