Existen 2 tipos de links:
- Links Duros: Son enlaces a un archivo, ambos tienen el mismo valor de inodo y tamaño.
- Links Suaves (Simbólicos): Son accesos directos a un archivo original, tienen distinto inodo y tamaño, si se borra el archivo original el enlace suave pierde su contenido, si se restaura el archivo original, el link suave vuelve a tener contenido.
Ahora vamos a crear 2 enlaces, primero vamos a crear una carpeta en nuestro home llamada enlaces:
mi-usuario@maquina:~$ mkdir enlaces
mi-usuario@maquina:~$
Entramos a la carpeta enlaces y copiamos el archivo en la ruta /etc/passwd a nuestra carpeta enlaces, renombrandolo como passwd.backup
mi-usuario@maquina:~$ cd enlaces
mi-usuario@maquina:~/enlaces$ cp /etc/passwd passwd.backup
mi-usuario@maquina:~/enlaces$ ls
passwd.backup
Es importante copiar el archivo passwd, para trabajar con la copia y no con el original, recuerda que con los enlaces al realizar un cambio se ve reflejado en el archivo original.
Ahora vamos a hacer un enlace duro llamado passwd.hard haciendo tomando como referencia el archivo passwd.backup el cual esta dentro de nuestra carpeta enlaces.
mi-usuario@maquina:~/enlaces$ ln passwd.backup passwd.hard
mi-usuario@maquina:~/enlaces$
Vamos a listar el contenido de nuestra carpeta:
mi-usuario@maquina:~/enlaces$ ls -lih
total 8.0K
268975 -rw-r--r-- 2 mi-usuario mi-usuario 2.0K 2011-09-16 20:06 passwd.backup
268975 -rw-r--r-- 2 mi-usuario mi-usuario 2.0K 2011-09-16 20:06 passwd.hard
Como podrás observar ambos tienen el mismo peso (2.0K) y el mismo número de inodo (268975), se creo un archivo identico al original. Si realizaramos un cambio en cualquiera de los 2 archivos se vería reflejado automáticamente en el otro.
Ahora vamos a crear un enlace suave tomando como referencia el archivo passwd.backup
mi-usuario@maquina:~/enlaces$ ln -s passwd.backup passwd.soft
mi-usuario@maquina:~/enlaces$
Listamos el contenido de la carpeta enlaces
mi-usuario@maquina:~/enlaces$ ls -lih
total 8.0K
268975 -rw-r--r-- 2 mi-usuario mi-usuario 2.0K 2011-09-16 20:06 passwd.backup
268975 -rw-r--r-- 2 mi-usuario mi-usuario 2.0K 2011-09-16 20:06 passwd.hard
283727 lrwxrwxrwx 1 mi-usuario mi-usuario 13 2011-09-16 20:18 passwd.soft -> passwd.backup
Como puedes darte cuenta se creo un archivo que apunta al archivo passwd.backup, sin embargo, a difererencia de los enlaces duros, los enlaces suaves tienen distinto inodo y tamaño con respecto al archivo original.
Por último vamos a borrar el archivo passwd.backup.
mi-usuario@maquina:~/enlaces$ rm passwd.backup
mi-usuario@maquina:~/enlaces$
Listamos el contenido del achivo passwd.hard
mi-usuario@maquina:~/enlaces$ cat passwd.hard
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
- - El resto de la salida se omite - -
El contenido del enlace duro continua intacto, ahora vamos a listar el contenido del enlace passwd.soft
mi-usuario@maquina:~/enlaces$ cat passwd.soft
cat: passwd.soft: No existe el fichero o el directorio
mi-usuario@maquina:~/enlaces$ ls
passwd.hard passwd.soft
El intérprete nos dice que no existe el archivo aún cuando el link permanece ahí, sin embargo si volvemos a copiar el archivo a la carpeta, con el mismo nombre podrás ver que nuevamente el link suave tiene contenido.
mi-usuario@maquina:~/enlaces$ cp /etc/passwd passwd.backup
mi-usuario@maquina:~/enlaces$ cat passwd.soft
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
- - El resto de la salida se omite - -
No hay comentarios:
Publicar un comentario