Búsqueda de sitios web

Cómo crear enlaces duros y simbólicos en Linux


En sistemas operativos tipo Unix como Linux, “todo es un archivo” y un archivo es fundamentalmente un enlace a un inodo (una estructura de datos que almacena todo lo relacionado con un archivo aparte de su nombre y contenido real).

Un enlace físico es un archivo que apunta al mismo inodo subyacente, como otro archivo. En caso de que elimine un archivo, elimina un enlace al inodo subyacente. Mientras que un enlace simbólico (también conocido como enlace suave) es un enlace a otro nombre de archivo en el sistema de archivos.

Lea también: Cómo realizar la gestión de archivos y directorios

Otra diferencia importante entre los dos tipos de enlaces es que los enlaces físicos sólo pueden funcionar dentro del mismo sistema de archivos, mientras que los enlaces simbólicos pueden atravesar diferentes sistemas de archivos.

Cómo crear enlaces duros en Linux

Para crear enlaces físicos en Linux, usaremos la utilidad ln. Por ejemplo, el siguiente comando crea un vínculo físico llamado tp al archivo topprocs.sh.

ls -l
ln topprocs.sh tp
ls -l

Al observar el resultado anterior, usando el comando ls, el nuevo archivo no se indica como un enlace, se muestra como un archivo normal. Esto implica que tp es simplemente otro archivo ejecutable normal que apunta al mismo inodo subyacente que topprocs.sh.

Para convertir un enlace físico directamente en un enlace suave, use el indicador -P como este.

ln -P topprocs.sh tp

Cómo crear enlaces simbólicos en Linux

Para crear enlaces simbólicos en Linux, usaremos la misma utilidad ln con el modificador -s. Por ejemplo, el siguiente comando crea un enlace simbólico llamado topps.sh al archivo topprocs.sh.

ln -s ~/bin/topprocs.sh topps.sh
ls -l topps.sh

En el resultado anterior, puede ver en la sección de permisos de archivos que topps.sh es un enlace indicado por l:, lo que significa que es un enlace a otro nombre de archivo.

Si el enlace simbólico ya existe, es posible que obtenga un error. Para forzar la operación (eliminar el enlace simbólico saliente), utilice la opción -f.

ln -s ~/bin/topprocs.sh topps.sh
ln -sf ~/bin/topprocs.sh topps.sh

Para habilitar el modo detallado, agregue el indicador -v para imprimir el nombre de cada archivo vinculado en la salida.

ln -sfv ~/bin/topprocs.sh topps.sh
$ls -l topps.sh

¡Eso es todo! Consulte los siguientes artículos relacionados.

  1. fdupes: una herramienta de línea de comandos para buscar y eliminar archivos duplicados en Linux
  2. 5 comandos útiles para administrar tipos de archivos y hora del sistema en Linux

En este artículo, hemos aprendido cómo crear enlaces físicos y simbólicos en Linux. Puede hacer cualquier pregunta o compartir sus opiniones sobre esta guía a través del formulario de comentarios a continuación.