논리적 작업 디렉토리의 이점은 무엇입니까?

논리적 작업 디렉토리의 이점은 무엇입니까?

논리적 작업 디렉토리가 무엇인지 이해합니다. 디렉토리에 대한 심볼릭 링크를 생성한 다음 cd해당 디렉토리에 대한 심볼릭 링크를 사용하면 논리적 작업 디렉토리는심볼릭 링크에 대한 경로 + 심볼릭 링크 자체! 예를 들어:

$ pwd
/home/john/this_is_a_symbolic_link

그러나 논리적 작업 디렉토리의 이점은 정확히 무엇입니까?

답변1

다소 복잡한 사용 사례:

일부 시스템에서는 사용자의 홈 디렉토리에 다음을 통해 액세스할 수 있습니다.자동 설치 프로그램(솔라리스에서와 마찬가지로).

~에서Wikipedia 기사 "자동 설치 프로그램":

자동 마운트의 목적은 로컬 시스템 리소스를 보존하고 여러 서버와 파일 시스템을 공유하는 시스템 간의 결합을 줄이는 것입니다. 예를 들어, 중대형 조직에는 수백 개의 파일 서버와 수천 개의 워크스테이션 또는 기타 노드가 있을 수 있으며, 이러한 서버 중 언제든지 파일에 액세스할 수 있습니다. 일반적으로 특정 시간에 특정 노드에서 상대적으로 적은 수의 원격 파일 시스템(내보내기)만 활성화됩니다. 프로세스가 실제로 액세스해야 할 때까지 이러한 파일 시스템의 마운트를 연기하면 이러한 마운트를 추적할 필요성이 줄어들어 안정성, 유연성 및 성능이 향상됩니다.

자동 마운트는 home중앙 파일 서버의 경로와 유사하거나 유사한 경로에 NFS 공유를 마운트한 다음 로그인할 때 (물리적 홈)에서 (논리적 홈)까지의 기호 링크를 생성할 수 있습니다./a/tmp_mnt/tmp_mnt/home/steve/home/steve

homeWikipedia 기사에서 언급했듯이 이것의 이점은 여러 사용자가 활성 상태인 경우에도 NFS 공유를 한 번만 마운트하면 된다는 것입니다. 누군가의 홈 디렉토리가 더 이상 사용되지 않으면 기호 링크가 삭제될 수 있으며 모든 사용자가 로그아웃하면 마운트된 NFS 공유가 완전히 마운트 해제될 수도 있습니다.


더 간단한 예:

위쪽 공간이 충분하지 않다고 가정해 보겠습니다 /usr/local. 그런 다음 새 디스크를 추가하고 예를 들어 /data/disk1/data/disk2. 그런 다음 /usr/local/binto /data/disk1및 to /usr/local/lib의 이전 내용을 복사 하고 두 디렉터리에 대한 심볼릭 링크로 /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 ..

관련 정보