逻辑工作目录有什么好处?

逻辑工作目录有什么好处?

我了解什么是逻辑工作目录。当您创建到目录的符号链接,然后cd使用该符号链接到该目录时,您的逻辑工作目录将变为符号链接的路径+符号链接本身!例如:

$ pwd
/home/john/this_is_a_symbolic_link

但是逻辑工作目录到底有什么好处呢?

答案1

一个有点复杂的用例:

在某些系统上,用户的主目录可以通过例如自动安装器(如在 Solaris 上)。

维基百科“自动安装程序”文章

自动挂载程序的目的是节省本地系统资源并减少与多个服务器共享文件系统的系统之间的耦合。例如,大中型组织可能拥有数百个文件服务器和数千个工作站或其他节点,可随时从任意数量的这些服务器访问文件。通常,在任何给定时间任何给定节点上只有相对少量的远程文件系统(导出)处于活动状态。将此类文件系统的安装推迟到进程实际需要访问它时,可以减少跟踪此类安装的需要,从而提高可靠性、灵活性和性能。

自动挂载程序可能会在诸如或类似的home路径下挂载某个中央文件服务器的 NFS 共享,然后在您登录时创建从(物理主目录)到(逻辑主目录)的符号链接。/a/tmp_mnt/tmp_mnt/home/steve/home/steve

home正如维基百科文章提到的,这样做的好处是,即使多个用户处于活动状态,也只需要一次挂载 NFS共享。当某人的主目录不再使用时,符号链接可能会被删除,而当所有用户都注销时,挂载的 NFS 共享甚至可能会被完全卸载。


一个更简单的例子:

假设您的 上空间不足/usr/local。然后,您可以添加新磁盘并将它们安装为例如/data/disk1/data/disk2。然后,您可能决定复制/usr/local/binto/data/disk1/usr/local/libto的旧内容/disk/data2,并重新创建/usr/local/bin/usr/local/lib作为这两个目录的符号链接。

使用 更改目录cd /usr/local/bin将在物理上将您移动到,/data/disk1但从逻辑上讲您将位于/usr/local/bin.这还具有以下效果:访问实用程序/usr/local/bin将透明地访问其物理位置,而/data/disk1无需更新$PATH变量。


另一个:

您可以从用户安装的 USB 记忆棒或其他存储设备的某个位置创建符号/media链接/home/steve/my_work_files。这样做的好处是您将能够cd进入~/my_work_files而不必记住/media文件所在的位置。

答案2

$ cd this_is_a_symbolic_link
$ pwd
$ cd ..

相关内容