GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo crear un enlace simbólico en Linux usando el comando Ln

El enlace simbólico se conoce comúnmente como enlace suave o enlace simbólico , que es un tipo especial de archivo que hace referencia a otro archivo o directorio.

En esta guía, aprenderá cómo crear un enlace simbólico en Linux usando el comando ln para crear enlaces entre archivos.

Tipos de enlaces

En Linux, tenemos 2 tipos de enlaces:enlaces blandos y enlaces duros.

Enlaces duros: Un enlace duro es una réplica de un archivo original. Da acceso a los datos en el archivo de destino. Un usuario no puede crear un vínculo físico para un directorio, solo para un archivo. Además, los archivos vinculados tienen un número de inodo común. Cuando se elimine o elimine el archivo original, el vínculo fijo seguirá funcionando y contendrá el contenido del archivo eliminado. También es importante tener en cuenta que los enlaces físicos no se extienden a través de diferentes sistemas de archivos.

Enlaces blandos: A diferencia de un enlace físico, un enlace suave es simplemente un puntero a un nombre de archivo y no contiene el contenido de otro archivo o el archivo de destino al que se hace referencia. Si el archivo de destino se elimina o elimina, el enlace flexible deja de existir. El lado bueno de los enlaces blandos es que se pueden usar para enlazar a un archivo o directorio y pueden abarcar diferentes sistemas de archivos.

Cómo usar el comando ln

El comando ln se usa para hacer enlaces entre archivos. El comando, de forma predeterminada, crea un vínculo físico. Para crear un vínculo suave, simplemente agregue la -s opción ( --simbólico ).

Sintaxis:

ln [OPTION] TARGET LINK_NAME

Para evitar confusiones, utilice la ruta absoluta (ruta relativa) del archivo de origen y de destino al crear un enlace simbólico.

Cómo crear un enlace simbólico a un archivo

Para crear un enlace simbólico a un archivo, ejecute el siguiente comando:

$ ln -s { OPTIONS } file symlink

Cuando tanto el archivo como el enlace simbólico están definidos, el comando ln crea un enlace desde el archivo que es el primer argumento del archivo definido en el segundo argumento enlace simbólico .

Por ejemplo, para crear un enlace simbólico a un archivo, use la sintaxis,

$ ln -s  original_file symlink

Nota:ln no devuelve ningún resultado en caso de éxito.

En el comando, reemplace el archivo_original con el archivo existente para el que desea crear el enlace simbólico y el enlace simbólico con el enlace simbólico.

Veamos un ejemplo real:

$ ln -s  file1.txt   sample_link.txt

El comando anterior crea un enlace simbólico llamado 'sample_link.txt' al archivo existente 'file1.txt' en el directorio actual.

Para verificar la creación del enlace, simplemente use el comando ls como se muestra:

$ ls -l sample_link.txt

Su salida debe parecerse a lo que tengo a continuación:

lrwxrwxrwx 1 winnie  winnie 9 Jul 12 23:43 sample_link.txt -> file1.txt

En los permisos, el l bandera indica que este es un enlace simbólico, y el carácter - > indica que el enlace simbólico apunta al archivo file1.txt .

A veces, los enlaces simbólicos no funcionan debido a problemas con la ruta, sugiera usar la ruta completa:

# absolute (full path)
ln -s /path/to/originals/originalfile1.txt backup/copy.txt

# relative
cd backup
ln -s ../originals/originalfile1.txt copy.txt

Cómo crear enlaces simbólicos a un directorio

Crear un enlace simbólico a un directorio es tan fácil como crear uno a un archivo. La sintaxis sigue siendo prácticamente la misma. El primer argumento toma el nombre del directorio mientras que el enlace simbólico se especifica como segundo argumento.

La siguiente sintaxis es un ejemplo de cómo lo haría:

$ ln -s  /path/to/directory  ~/directory

Por ejemplo, para crear un enlace simbólico desde el directorio /Descargas/musica/ a ~/mi_música ejecuta el comando:

$ ln -s  /Downloads/music  ~/my_music

Cómo sobrescribir un enlace simbólico

Sobrescribir enlaces simbólicos simplemente invocando el comando ln sin argumentos adicionales siempre le dará un error como se muestra:

Por ejemplo, si intenta ejecutar el siguiente comando nuevamente:

$ ln -s  file1.txt   sample_link.txt

Obtendrá el error que se muestra:

ln: failed to create symbolic link 'sample_link.txt': File exists

Una solución a este problema es introducir otra opción -f o --fuerza para sobrescribir la ruta de destino del enlace simbólico como se muestra:

$ ln -sf  file1.txt   sample_link.txt

Esta vez, sobrescribir el enlace suave no producirá ningún error.

Cómo eliminar enlaces simbólicos

Para deshacerse de los enlaces simbólicos de Linux o los enlaces simbólicos, puede usar el comando rm o unlink dominio. Y es bastante fácil. Para desvincular comando, utilice la siguiente sintaxis para eliminar los enlaces simbólicos:

$ unlink symlink_to_be_removed

La eliminación de un vínculo suave con el comando rm es igual que cuando elimina o elimina un archivo normal:

$ rm symlink_to_be_removed

¿Son importantes los enlaces simbólicos?

Por lo general, es una buena idea crear un enlace simbólico a un archivo si desea lograr algo de lo siguiente:

  1. Tener acceso a archivos desde varias ubicaciones sin crear copias duplicadas que necesariamente pueden ocupar mucho espacio en disco.
  2. Si desea conservar las versiones originales del archivo y asegurarse de que el enlace apunte a la última versión del archivo. Esto funciona porque el enlace simbólico permanecerá activo incluso después de haber reemplazado el archivo con un archivo diferente con el mismo nombre de archivo.

Los programas de Linux usan enlaces simbólicos, como alias para que los usuarios no tengan que saber qué versión de código se usó.

# which python
/usr/bin/python
# ls -l /usr/bin/python
lrwxrwxrwx. 1 root root 7 Feb 21 13:38 /usr/bin/python -> python2

Conclusión

Los enlaces simbólicos y los accesos directos estándar son similares, pero existen algunas diferencias entre los dos.

Un acceso directo estándar, como el que encontraría en Windows, es simplemente un archivo normal que apunta a un determinado directorio, archivo o aplicación. Este acceso directo suele aparecer como un icono que se puede crear en cualquier ubicación y, cuando se hace clic en él, se abre el archivo, el directorio o la aplicación original.

Un enlace simbólico en realidad representa el archivo original en un sentido funcional. Es un sustituto directo de un objeto como un archivo. Su sistema Linux lee el enlace simbólico de Linux como si fuera el objeto de destino. Un atajo ordinario simplemente hace referencia a un archivo o directorio, y no hace nada más.

Eso es todo acerca de cómo crear un enlace simbólico en Linux y para obtener más información, consulte ln man. Espero que hayan disfrutado de la lectura y por favor dejen sus comentarios y sugerencias.


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

  2. Cómo crear un script de un comando de Linux

  3. Cómo crear instantáneas del sistema de archivos usando Snapper Command en Linux

  4. Cómo dividir iso o archivo usando el comando 'dividir' en Linux

  5. ¿Cómo adjuntar un archivo usando el comando de correo en Linux?

Cómo crear un alias en Linux

Linux ln:cómo crear un enlace simbólico en Linux [Ejemplo de comando Bash]

Cómo crear un archivo en Linux usando Terminal

Cómo bloquear un archivo de texto en Linux usando el comando flock

Cómo crear un archivo en Ubuntu Linux usando comando y GUI

¿Qué son los enlaces simbólicos en Linux? ¿Cómo crear enlaces simbólicos?