GNU/Linux >> Tutoriales Linux >  >> Linux

Enlaces duros y enlaces blandos en Linux:todo lo que necesita saber

El término vinculación en Linux se define como la creación de una ruta de archivo o URL de ubicación de archivo en su sistema de archivos. Hay dos tipos de enlaces en Linux, enlaces blandos y enlaces duros. La noción de enlaces blandos es muy común y fácil de entender. Si está familiarizado con el archivo de acceso directo de Windows, pensaría en el enlace suave como el acceso directo de un archivo específico. Los enlaces blandos no contienen el archivo completo, sino que solo contienen un nombre de archivo o detalles del archivo. Solo lleva el nodo de índice (inodo) del archivo para realizar el enlace interno con ese archivo en el sistema de archivos.

Enlaces duros y suaves en Linux

El enlace duro es el enlace o la ruta del archivo original con el tamaño real. Por otro lado, el enlace suave solo crea una URL de acceso directo o una ruta para un archivo o carpeta en el sistema. En esta publicación, veremos una explicación detallada de los enlaces blandos y duros y cómo funcionan los enlaces en Linux.

1. Enlace blando y duro con Inode

En los sistemas operativos Linux y similares a Unix, el enlace suave indica el enlace al archivo original. Si su archivo tiene un número de índice único, puede crear múltiples enlaces suaves para ese archivo original, y cada enlace suave se referirá al archivo principal.

En la mayoría de los casos, los enlaces blandos también se denominan enlaces simbólicos. Crear el enlace suave de un archivo es fácil con el shell de comandos del terminal. El comando mencionado a continuación lo guiará a través de la creación de un enlace suave.

$ ln -s targetFile SourceFiles

Estos enlaces flexibles se utilizan a menudo para hacer referencia a archivos dentro de un comando o indicar un nodo dentro de un comando. En la administración del servidor, los enlaces suaves y duros se usan a menudo en lugar de las rutas originales.

El enlace duro es un poco complejo de entender y usar. Como dije antes, es otro nombre para un archivo que contiene los metadatos y el número de índice original. Podemos poner el enlace duro en cualquier directorio. Con el siguiente comando de terminal, podemos crear un enlace fijo a un archivo.

$ ln hard_link_target  hard_link_output

Al hablar de vinculación en Linux, con el comando ln avanzado, podemos ver cuántos números de nodos de índice están vinculados con el archivo y los detalles del usuario. En los enlaces físicos, la cantidad de números de índice también indica la cantidad total de enlaces físicos de ese archivo.

El hecho interesante sobre los enlaces duros es que, si elimina el archivo original, el enlace duro seguirá estando en el sistema de archivos. La única forma de eliminar un archivo en Linux es asegurarse de que solo haya un número de inodo de ese archivo antes de eliminarlo.

Eliminar los enlaces suaves y duros no eliminará el archivo original del sistema de archivos de Linux. En algunos casos, el número de inodo puede ayudar a recuperar archivos borrados accidentalmente en Linux.

2. Datos sobre enlaces duros y enlaces blandos en Linux

En este paso, veremos algunos hechos y métodos de trabajo de enlaces blandos y enlaces duros en Linux. Comprender la noción de vinculación en Linux podría ayudarlo a crear mejores vínculos.

  • Los enlaces blandos o las URL simbólicas son los accesos directos de un archivo en el sistema Linux.
  • Si el archivo original se mueve o elimina, la ruta del enlace flexible no funcionará correctamente.
  • Puede usar el comando ls -l para mostrar los enlaces simbólicos.
  • Puede usar los enlaces blandos para ejecutar comandos, vincular a un directorio o usar dentro de un script.
  • Después de crear un enlace suave de un archivo, cuando cambie el nombre de ese archivo, también deberá actualizar el nombre del enlace suave. De lo contrario, el enlace suave no funcionará.
  • Los enlaces blandos se utilizan principalmente para interconectar archivos y directorios en el sistema.

Como hemos visto algunos datos sobre los enlaces simbólicos, también hay algunos datos sobre los enlaces duros que tal vez necesite saber.

  • Al igual que los enlaces suaves, puede usar el comando ls -l para mostrar la lista de enlaces duros en el sistema.
  • A diferencia de los enlaces suaves, los enlaces duros tienen el mismo archivo original. Si elimina cualquiera de ellos, el resto funcionará.
  • Eliminar enlaces duros no afectará el archivo principal en su sistema de archivos de Linux.
  • El tamaño del enlace duro es convencionalmente el mismo que el del archivo principal.
  • Puede crear enlaces duros para archivos, pero no puede crear enlaces duros para directorios en Linux y sistemas operativos similares a Unix.
  • El valor del nodo de índice del archivo original y el nodo de índice del enlace fijo siempre es el mismo y también se refieren al mismo archivo en el sistema de archivos.

3. Ventajas y desventajas de los enlaces blandos y duros

En los puntos mencionados anteriormente, hemos visto las características, metodología de trabajo y propiedades de cómo funcionan los enlaces duros y suaves en el sistema Linux. Aquí estamos a punto de descubrir los pros y los contras de estos dos sistemas de archivos.

Las principales ventajas del enlace suave o el enlace simbólico son que puede crear un enlace suave sin esfuerzo y no ocupa una gran cantidad de tamaño o bloque en el disco. Y además, el enlace suave también nos permite crear enlaces simbólicos para cualquier archivo y directorio.

La ventaja del vínculo físico es que tanto el archivo como el vínculo físico utilizan el mismo nodo de índice y ocupan la misma cantidad de espacio en el sistema, por lo que, en ese caso, mantenemos ambos archivos en el sistema de archivos. Por lo tanto, si accidental o intencionalmente elimina o elimina el archivo principal, el enlace físico seguirá siendo ejecutable.

Ahora, si observamos las desventajas del enlace blando y el enlace duro, podemos ver que ambos tienen algunas limitaciones. Para enlaces suaves, si elimina, cambia el nombre o elimina el archivo principal, el enlace suave ya no funcionará.

4. ¿Qué pasaría si eliminamos el archivo principal?

Es posible que haya estado pensando en lo que sucederá si voluntariamente o por error eliminamos el archivo principal; ¿seguirán funcionando los enlaces duros y blandos? Aquí, hemos creado un enlace suave para la carpeta de destino. Ahora, si eliminamos el directorio de destino principal, el sistema sugerirá eliminar el enlace suave de la papelera en la próxima ejecución de ese enlace suave.

Hemos utilizado el siguiente comando para crear un enlace suave del archivo 'objetivo'. Ahora, eliminaremos el archivo principal y veremos cómo impacta en el enlace simbólico.

ln -s target softlink

Y para los enlaces duros, la única desventaja es que no puede crear un enlace duro para ningún directorio en su sistema Linux. Además, tampoco le permite crear enlaces duros para diferentes sistemas de archivos.

Palabras finales

En toda la publicación, hemos visto una explicación detallada de cómo funcionan los enlaces blandos y duros en Linux. En caso de que tenga la intención de crear un enlace fijo a un directorio, tenga en cuenta que en las computadoras modernas, es casi imposible crear un enlace fijo de directorios. Pero puede crear enlaces suaves a directorios.

Espero que este post te haya sido de ayuda; en caso afirmativo, comparta esta publicación con sus amigos y la comunidad de Linux. También puede informarnos qué enlace le parece más útil o qué ha estado usando más en su sistema.


Linux
  1. Listas de control de acceso y unidades externas en Linux:lo que necesita saber

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

  3. Enlaces duros y enlaces blandos en Linux explicados

  4. Linux – ¿Todo es un archivo?

  5. Cómo crear enlaces blandos y duros en Linux

Todo lo que necesita saber sobre el sistema de archivos de Linux

Todo lo que necesita saber sobre el comando Chmod de Linux

Todo lo que necesita saber sobre el sistema operativo Linux Zorin

Todo lo que necesita saber sobre el sistema operativo Peppermint Linux

Todo lo importante que necesita saber sobre Hard Link en Linux

El comando ln en Linux:crear enlaces blandos y duros