Entiendo lo que es un directorio de trabajo lógico. Cuando crea un enlace simbólico a un directorio y luego cd
a ese directorio usando el enlace simbólico, su directorio de trabajo lógico se convierte enel camino del enlace simbólico + el enlace simbólico en sí! Por ejemplo:
$ pwd
/home/john/this_is_a_symbolic_link
Pero, ¿cuál es exactamente el beneficio de un directorio de trabajo lógico?
Respuesta1
Un caso de uso algo complicado:
En algunos sistemas, los directorios personales de los usuarios pueden, por ejemplo, montarse mediante unmontador automático(como en Solaris).
Deel artículo de Wikipedia "Automounter":
El automontador tiene el propósito de conservar los recursos del sistema local y reducir el acoplamiento entre sistemas que comparten sistemas de archivos con varios servidores. Por ejemplo, una organización grande o mediana puede tener cientos de servidores de archivos y miles de estaciones de trabajo u otros nodos que acceden a archivos desde cualquier número de esos servidores en cualquier momento. Por lo general, sólo una cantidad relativamente pequeña de sistemas de archivos remotos (exportaciones) estarán activos en cualquier nodo en un momento dado. Aplazar el montaje de dicho sistema de archivos hasta que un proceso realmente necesite acceder a él reduce la necesidad de realizar un seguimiento de dichos montajes, lo que aumenta la confiabilidad, la flexibilidad y el rendimiento.
El montador automático puede montar un home
recurso compartido NFS desde algún servidor de archivos central bajo una ruta como /a
o /tmp_mnt
similar, y luego crear un enlace simbólico desde /tmp_mnt/home/steve
(el directorio de inicio físico) a /home/steve
(el directorio de inicio lógico) cuando inicia sesión.
Esto tiene la ventaja, como menciona el artículo de Wikipedia, de requerir solo un único montaje del home
recurso compartido NFS incluso si hay varios usuarios activos. Cuando el directorio de inicio de alguien ya no está en uso, el enlace simbólico puede eliminarse y, cuando todos los usuarios cierran la sesión, el recurso compartido NFS montado puede incluso desmontarse por completo.
Un ejemplo más simple:
Digamos que te quedas sin espacio en /usr/local
. Luego podrá agregar nuevos discos y montarlos como, por ejemplo, /data/disk1
y /data/disk2
. Luego puede decidir copiar los contenidos antiguos de /usr/local/bin
to /data/disk1
y /usr/local/lib
to /disk/data2
y recrearlos /usr/local/bin
como /usr/local/lib
enlaces simbólicos a estos dos directorios.
Cambiar el directorio con cd /usr/local/bin
lo trasladaría físicamente a /data/disk1
pero lógicamente estaría en /usr/local/bin
. Esto también tiene el efecto de que acceder a las utilidades desde /usr/local/bin
accedería de forma transparente a su ubicación física /data/disk1
sin que usted tenga que actualizar su $PATH
variable.
Otro:
Puede crear un enlace simbólico desde una memoria USB montada por el usuario u otro dispositivo de almacenamiento en algún lugar /media
como /home/steve/my_work_files
. El beneficio de esto sería que podría cd
ingresar ~/my_work_files
en lugar de tener que recordar dónde /media
se encuentran sus archivos.
Respuesta2
$ cd this_is_a_symbolic_link
…
$ pwd
$ cd ..