Hay muchas cosas mundanas en Linux en las que muchos usuarios no piensan que son increíblemente útiles. Cuando los nuevos usuarios aprenden a usar estos pequeños trucos mundanos y aburridos, se convierten en mejores usuarios de Linux. Bind-mounts y Symlinks en Linux son un excelente ejemplo de esto. En este artículo, discutiremos exactamente qué es un enlace simbólico, cómo crear uno y para qué sirven. También veremos cómo crear monturas de vinculación, por qué son tan útiles e incluso mostraremos a los usuarios cómo reforzar sus monturas de vinculación con bindfs.

ALERTA DE SPOILER: Desplácese hacia abajo y vea el video tutorial al final de este artículo.

¿Qué es un enlace simbólico?

Un enlace simbólico o «enlace simbólico» es una referencia a otro archivo o carpeta en algún otro lugar del sistema de archivos. Por ejemplo, la mayoría de los desarrolladores, en lugar de duplicar bibliotecas en el sistema de un usuario, harán que su código cree enlaces simbólicos a carpetas de bibliotecas y archivos de programa. Esto permite que el programa tenga fácilmente todas las herramientas necesarias y los archivos de biblioteca que necesita para ejecutarse, sin crear un problema adicional.

  Cómo elegir la distribución de Linux adecuada

Los enlaces simbólicos también se utilizan al hacer referencia a archivos entre diferentes particiones y unidades. Por ejemplo: toda su biblioteca de música se almacena en el disco duro B y el tamaño de toda la biblioteca es de 500 GB. Debido a su tamaño, no es posible mover directamente la biblioteca de música al disco duro A (también conocido como la unidad del sistema).

Para resolver fácilmente este problema, los usuarios pueden crear un enlace simbólico y hacer referencia a cada archivo de la unidad B a la unidad A. De esa manera, el reproductor de música puede encontrar y acceder a todos los archivos de música fácilmente.

Usando Symlinks

Los enlaces simbólicos se pueden utilizar de dos formas: para enlazar un directorio completo o un solo archivo. He aquí cómo crearlos.

Enlace simbólico a un archivo

Para vincular simbólicamente un archivo, primero abra una terminal. A continuación, vaya al directorio con el archivo a vincular.

cd ~/path/to/file

Crea el enlace simbólico. Tenga en cuenta dónde debe ir el enlace.

ln -s original-file /path/where/link/goes

Enlace simbólico a una carpeta

ln -s /path/to/original/folder /path/where/linked/folder/goes

Eliminar un enlace simbólico

cd /path/where/symlink/is
rm symlinkname
unlink symlinkname

¿Qué es una montura de enlace?

Un bin-mount es una forma de mostrar el contenido de una carpeta en un lugar único en el sistema de archivos en un directorio diferente. Enlazar el montaje suena mucho enlazar unir simbólicamente una carpeta, pero es muy diferente. La montura de enlace es muy útil. Los administradores del sistema a menudo usan este método para agregar rápidamente más almacenamiento a una carpeta sobre la marcha cuando el sistema de archivos del sistema principal es de «solo lectura». Bind-mounts también se puede usar para vincular rápidamente un recurso compartido de red a un directorio local, sin la necesidad de configurar un punto de montaje en el archivo fstab, etc.

  Por qué Desktop Linux sigue siendo importante

Uso de Bind-mounts con el comando integrado del kernel de Linux

El kernel de Linux tiene un comando de vinculación integrado. Es por esto que los usuarios pueden montar fácilmente el contenido de los directorios en todo el sistema de archivos. He aquí cómo hacerlo.

Piense en un directorio que tiene archivos que le gustaría montar en otra ubicación. Cuando tenga la ubicación en mente, piense en el lugar donde le gustaría montarlo.

En este ejemplo, enlazaremos un directorio de música de un disco duro al otro.

sudo mount --bind /mnt/DataDrive/Music /home/user/Music

Desmonte el soporte de enlace con:

umount /home/derrik/Music

BindFS

Antes de realizar un montaje de enlace, deberá instalar bindfs. Es una herramienta que hace posible el montaje de enlaces y también agrega funcionalidad adicional (configuración de permisos, mejor duplicación, etc.). A continuación, le indicamos cómo obtenerlo en su distribución de Linux:

  Cómo habilitar Zswap en Linux para un mejor rendimiento

Ubuntu

sudo apt install bindfs

Debian

sudo apt-get install bindfs

Arch Linux

Bindfs no está en las fuentes oficiales del software Arch, desafortunadamente. Si los usuarios quieren utilizar bindfs, deberán instalar este paquete AUR en lugar.

Fedora

sudo dnf install bindfs

OpenSUSE

sudo zypper install bindfs

Otros Linux

Para obtener bindfs en la distribución de Linux de su elección, considere ir al sitio oficial sitio web de bindfs. Alternativamente, abra el administrador de paquetes en su PC con Linux, busque «bindfs» e instálelo.

Uso de Bindfs para montajes de enlace

Usar bindfs tiene sus ventajas. El comando bind integrado del kernel funciona en un instante, pero es muy básico y no permite algunas funciones avanzadas, como restringir el acceso a enlaces, etc. Aquí se explica cómo hacer uso de bindfs.

Hacer un montaje de enlace de solo lectura

bindfs --perms=a-w /path/to/the/original/directory/ /path/to/bind/to/

Hacer un montaje de enlace de lectura / escritura

bindfs /path/to/the/original/directory /path/to/bind/to

Desmontar una montura bindfs

sudo umount /path/to/bind/

Conclusión

Las operaciones mundanas como los enlaces simbólicos y los montajes de enlaces son probablemente el tema menos explorado en Linux debido al hecho de que no son muy interesantes y, por lo general, los usuarios generales no las utilizan. El hecho es que cuando aprende que los enlaces simbólicos le permiten acceder rápida y fácilmente a los archivos en cualquier lugar, o que los soportes de enlace pueden hacer que sea increíblemente fácil instalar almacenamiento adicional donde quiera, estos temas se vuelven mucho más interesantes.