El comando ln en Linux
El comando ln en los sistemas operativos basados en el kernel de Linux se usa para crear enlaces físicos y simbólicos a archivos. Se requiere que el respete la sintaxis de la utilidad, para especificar las opciones correctas y la ubicación de los archivos. Hoy nos gustaría contar no solo sobre la acción de este comando, sino también describir en detalle los dos tipos de enlaces mencionados anteriormente, ya que son radicalmente diferentes y aplicables en determinadas situaciones. Por supuesto, no funcionará sin ejemplos de la herramienta ln .
Vinculación a un archivo en Linux
La mayoría de los s de computadoras se han encontrado con la plataforma Windows al menos una vez. Allí, los atajos actúan como punteros a los archivos. Después de acceder a dicho objeto, se redirige automáticamente al archivo original. En Linux, esto se hace mediante enlaces especiales creados manualmente por el . Se han desarrollado dos tipos de tales elementos: simbólicos y rígidos. Tienen diferencias significativas, por lo que vale la pena considerar cada tipo con más detalle.
Enlaces simbólicos
Un enlace simbólico es un archivo de cierto tipo que actúa como un enlace a otro objeto: un archivo de cualquier formato o un directorio específico. Estos objetos generalmente se denominan objetivos. A veces puede notar que este tipo de enlace se llama enlaces suaves o enlace simbólico. Dicho elemento no contiene los datos de destino, sino que solo actúa como un puntero, es decir, es una copia completa del directo de Windows. Dentro del enlace simbólico está solo el camino. Nadie le impide crear muchos enlaces similares con diferentes nombres, pero el mismo destino. La conexión entre los dos componentes se llama suave, porque cuando se elimina el enlace, el archivo de destino no sufre de ninguna manera. Sin embargo, cuando elimina el archivo, el vínculo se rompe. Se guarda en el disco, pero la ruta especificada en él conduce a un objeto inexistente.
En la imagen de arriba, puede ver una representación esquemática del funcionamiento de dicho circuito. El enlace hace referencia al archivo y el archivo ya proporciona a los datos almacenados en él. Es importante entender que este enlace se puede mover a cualquier parte de la computadora, su rendimiento no depende de él, ya que seguirá la misma ruta que se especificó durante la creación.
Enlaces duros
Los enlaces duros son un poco más complicados. De hecho, son sinónimos del archivo, pero no copias del mismo. Al crear un enlace físico, se generará otro puntero al elemento. En el sistema de archivos, dichos objetos se definen como otro archivo, por lo que cuando los crea en el mismo directorio, no puede especificar el mismo nombre para el destino. Todos los enlaces físicos a un archivo deben estar en el mismo sistema de archivos y no pueden asignarse a un directorio o un elemento inexistente. En la captura de pantalla a continuación, puede ver la interacción esquemática de dicho circuito.
Es importante tener en cuenta que el enlace tendrá exactamente el mismo inodo que el archivo de destino. Como sabe, todos los objetos tienen sus propios números únicos. Debido a esto, habrá una diferencia entre ellos solo en los nombres. Todos los derechos, propietario y fechas de cambios están reservados. Podemos decir que un enlace físico es otro nombre para un objeto. Cuando se elimina el archivo de destino, el enlace aún retendrá la información que estaba en él, ya que hay un puntero más al contenido.
Construcción de enlaces
Pasemos de la teoría a la práctica y hablemos del tema principal del artículo: el comando ln . Como ya sabes, se utiliza para crear dos tipos de enlaces. Sin embargo, debe tenerse en cuenta que algunos es de archivos tienen una función incorporada para agregar un enlace simbólico. Para hacer esto, haga clic derecho en un archivo o carpeta y seleccione «Crear enlace» , «Crear enlace» o «Crear enlace» . Luego, el enlace flexible se colocará en el mismo directorio y podrá moverlo a cualquier otra ubicación de la unidad.
Para empezar, vale la pena mencionar acciones adicionales que a menudo resultan útiles al realizar diversas acciones con archivos. Es importante conocer el camino hacia el objetivo o poder determinarlo. En cuanto a la definición, sucede así:
- Inicie el de archivos de cualquier manera conveniente, por ejemplo, yendo a su carpeta de inicio a través del icono en el escritorio.
- Aquí encuentre el archivo o carpeta requerido en los directorios, haciendo clic con el botón derecho del mouse, seleccione «Propiedades» .
- En la sección General encontrará la ubicación de la carpeta principal, agregue el nombre del elemento para obtener la ruta completa, por ejemplo
/home//folder/file_name
. - Si va a crear varios enlaces para archivos desde un directorio, le recomendamos que acceda a él a través de la «Terminal» . Esto se hace escribiendo
cd /home//folder
. Esta acción solo le permitirá especificar la ruta relativa al objeto.
Enlace simbólico
Veamos la utilidad ln en acción. Comencemos creando un enlace simbólico al archivo. Para hacer esto, use la consola estándar y siga estos pasos:
- Ingrese
ln -s file slink
donde archivo es el nombre o la ruta completa al archivo o directorio, y slink es el nombre del enlace. Se colocará en el mismo directorio que el objetivo. - Entrar y activar
ls -li
para ver información sobre los objetos del catálogo. El enlace simbólico se resalta en un color separado y su propósito se indica después de -> Como puede ver, el archivo y el enlace tienen diferentes identificadores y derechos. - Para mayor claridad, eliminemos el elemento de destino a través de
rm
. - Después de volver a ver la lista de contenidos, verá que el enlace simbólico ahora está roto y no funciona porque el objetivo ha sido eliminado.
Arriba, puede haber notado que se usó el comando ls estándar para ver el contenido de las carpetas . Si desea familiarizarse con su funcionamiento con más detalle, preste atención a nuestro material separado a continuación.
Lea también: Añadir s a un grupo en Linux
Enlace duro
La creación de un vínculo físico es muy similar al tipo que discutimos anteriormente. La única diferencia es la ausencia de la opción -s . Entonces todo el procedimiento se verá así:
- Entrar y activar
ln file hlink
. - Úselo nuevamente
ls -li
para asegurarse de que haya un vínculo físico y un vínculo de archivo. Como puede ver, tienen la misma identificación, derechos y otros metadatos. Solo los nombres son diferentes. - Cuando elimine el archivo en sí y vea el contenido, verá que el enlace sigue funcionando, pero falta el enlace.
- Utilice el comando
cat
para ver el contenido del enlace físico. La consola muestra la misma información que se almacenó originalmente en el archivo original.
La información estará disponible hasta que se eliminen todos los indicadores (el archivo original y todos los enlaces físicos). El comando cat utilizado en el último párrafo es responsable de ver el contenido de los archivos. Para obtener una descripción detallada de todas sus capacidades, consulte el artículo siguiente.
Lea también: Ejemplos del comando grep en Linux
Anteriormente, no solo estaba familiarizado con el comando ln estándar , sino que también aprendió sobre los dos tipos de referencias de objetos disponibles en Linux. Por supuesto, los vínculos simbólicos están involucrados con mayor frecuencia, pero los rígidos también a veces se vuelven útiles. Puede aprender sobre otros comandos populares en Linux en nuestro material separado.