-->

Enlaces duros y enlaces simbólicos en Linux

Objetivo:

Diferenciar entre enlaces duros (hard links) y enlaces simbólicos (soft links) en Linux, aprendiendo a crearlos y comprender su comportamiento mediante el comando ln.

Escenario:

  • Herramientas: Terminal de Linux.
  • Conceptos clave: Inodos, enlaces duros vs. simbólicos (accesos directos), y vinculación de archivos/directorios.

Instrucciones:

Fase 1: Enlaces duros (Hard Links):

  • Crear un enlace duro entre dos archivos. Al editar uno, el otro se actualiza automáticamente:
ln archivo_original.txt archivo_enlazado.txt

Fase 2: Enlaces simbólicos (Soft Links):

  • Crear un enlace simbólico (equivalente a un acceso directo de Windows):
ln -s archivo_original.txt acceso_directo.txt

Fase 3: Enlaces a directorios:

  • Crear un acceso directo a una carpeta del sistema en una ubicación más accesible:
ln -s /etc/ carpeta_etc_en_escritorio

Verificación:

  • Modifica el contenido del archivo original y verifica que el enlace duro muestra los mismos cambios.
  • Elimina el archivo original y comprueba que el enlace duro sigue funcionando, pero el enlace simbólico (soft link) deja de ser útil (se rompe).

Preguntas de reflexión:

  1. ¿Por qué el enlace duro sigue funcionando si borramos el archivo original?
  2. ¿Cuál es la principal ventaja de usar enlaces simbólicos sobre enlaces duros al trabajar con carpetas?
  3. ¿Qué ocurriría si intentamos crear un enlace duro hacia un directorio (carpeta) en Linux?
  4. ¿Cómo identifica la terminal un enlace simbólico cuando ejecutamos ls -l?
Haz clic aquí para ver las soluciones y explicaciones

1. ¿Por qué el enlace duro sigue funcionando si borramos el archivo original?

Porque ambos archivos comparten el mismo inodo (el puntero a los datos en el disco). Mientras exista al menos un enlace duro apuntando a ese inodo, los datos seguirán existiendo en el sistema.


2. ¿Cuál es la principal ventaja de usar enlaces simbólicos sobre enlaces duros al trabajar con carpetas?

Son flexibles y permiten apuntar a directorios completos o incluso a archivos en otros sistemas de archivos (particiones distintas), actuando exactamente como un acceso directo.


3. ¿Qué ocurriría si intentamos crear un enlace duro hacia un directorio (carpeta) en Linux?

Por seguridad, los sistemas de archivos Linux restiden la creación de enlaces duros a directorios para evitar ciclos infinitos en la estructura de árbol del sistema.


4. ¿Cómo identifica la terminal un enlace simbólico cuando ejecutamos ls -l?

Los enlaces simbólicos aparecen con una l al principio de los permisos y muestran una flecha (->) que apunta a la ruta del archivo original al que están vinculados.


Ficha de Laboratorio: Enlaces Duros y Enlaces Simbólicos en Linux

Instrucciones de entrega:

  1. Rellena los campos y responde en este formulario desde tu navegador.
  2. Pulsa el botón de imprimir al final de la página.
  3. Selecciona "Guardar como PDF" en el diálogo de impresión.
  4. Entrega el archivo PDF en el aula virtual.

Alumno/a:      Fecha:      Grupo:


Completa la ficha respondiendo a las siguientes preguntas:

  1. Crea un fichero de texto de prueba y genera un enlace duro apuntando hacia él.
    Escribe el comando:

    Copia aquí la salida obtenida en el terminal:

    Explica el significado de la salida:
  2. Crea un enlace simbólico (o acceso directo) hacia un archivo de texto o directorio de trabajo.
    Escribe el comando:

    Copia aquí la salida obtenida en el terminal:

    Explica el significado de la salida:
  3. Comprueba los números de inodos y las diferencias en el contador de enlaces de los archivos creados utilizando el listado detallado.
    Escribe el comando:

    Copia aquí la salida obtenida en el terminal:

    Explica el significado de la salida:
  4. Verifica qué ocurre con el enlace duro y con el enlace simbólico si borras o mueves de ubicación el archivo original de origen.
    Escribe el comando:

    Copia aquí la salida obtenida en el terminal:

    Explica el significado de la salida: