주로 Windows를 사용할 때 바로가기를 만들기 위해 .lnk 또는 .url 확장자와 함께 링크 위치를 자세히 설명하는 일반 파일을 사용할 수 있습니다.
이제 Linux에서는 파일 시스템 특정 기능인 심볼릭 링크를 주로 사용합니다. Linux는 파일 기반 바로 가기를 많이 지원하지 않는 것 같고 Windows는 심볼릭 링크를 많이 지원하지 않는 것 같습니다.
파일 기반 바로가기(모든 파일 시스템에서 작동함) 사용의 장점을 알 수 있습니다.
내 질문은 Linux가 파일 기반 바로 가기에 심볼릭 링크를 사용하는 이유와 Linux에서 심볼릭 링크를 지원하지 않는 파일 시스템(예: FAT32)에 바로 가기를 어떻게 만들 수 있느냐는 것입니다.
답변1
심볼릭 링크를 사용하는 이유는 두 가지입니다.
하드 드라이브의 공간을 거의 사용하지 않습니다. 생성 중에 메타데이터가 보존되는 파일 시스템(예: ext2/3/4 시리즈)에서는 심볼릭 링크가
inode
파일 시스템 메타데이터 테이블에 완전히 포함됩니다.완전히 투명합니다. 아래 설명을 참조하세요.
에 대한 심볼릭 링크를 /etc
생성한다고 가정해 보겠습니다 . 심볼릭 링크를 사용하면 할 수 있습니다 . 그런 다음 를 실행하면 이것이 표시됩니다 (예: " " 부분이 " "로 "대체"됨 ). 내부에서 볼 내용을 드릴다운할 수 있습니다 . 그러나 내가 보는 것은 실제로 후자의 내용이지만 (현재 작업 디렉터리)는 여전히 전자입니다.varlink
/var
cd /etc/varlink/lib
ls
/var/lib
/etc/varlink
/var
/etc/varlink/lib/dbus
/var/lib/dbus
$CWD
마찬가지로 심볼릭 링크가 파일에 대한 것일 때도 마찬가지입니다. 이것이 /etc/fstab
심볼릭 링크라고 가정합니다 /opt/fstab
. 심볼릭 링크된 실제 파일을 찾기 위해 먼저 디코딩하지 않고도 콘텐츠 에 대해 모든 작업 /etc/fstab
(예: 콘텐츠 또는 콘텐츠에 대해 수행)을 수행 할 수 있습니다 . 배후의 파일 시스템은 I/O를 실제 파일로 리디렉션하는 역할을 합니다.cat
sed
두 번째 질문에 대한 대답은 '전혀 가능하지 않다고 생각합니다'입니다. 적어도 쉘을 통해서는 아닙니다.
그러나 GUI에서는가능한프로그램이 Windows ".lnk" 파일을 처리하도록 하여 파일 브라우저를 다른 곳으로 리디렉션합니다. 그러나 그러한 절차가 제정되었는지는 확실하지 않습니다.
답변2
심볼릭 링크의 장점:
투명성: 관리 소프트웨어만이 심볼릭 링크의 존재를 인식해야 합니다. 그들은 단지 작동합니다. 바로가기는 바로가기를 열려고 하는 소프트웨어가 그것이 바로가기임을 알고 있는 경우에만 작동합니다. Syn-link는 이전 버전을 포함한 모든 소프트웨어에서 작동합니다.
연결 가능: 심볼릭 링크는 연결에 연결에 연결을 허용합니다...
더 빠르게: 일반적으로 inode에 저장되므로(항상 그런 것은 아님) 조회 속도가 더 빨라집니다.
결점:
추가 메타정보는 바로가기에 저장할 수 있습니다.
파일 시스템 지원이 필요하지 않습니다.
파일 시스템을 업데이트하는 대신 시스템의 다른 모든 프로그램을 업데이트합니다. 이를 통해 이미 소유하고 있는 소프트웨어를 명시적인 지원과 함께 판매하여 수익을 늘릴 수 있습니다. (이 장점은 사용자가 무료가 아니기 때문에 독점 라이센스에 따라 소프트웨어 라이센스를 받아야 합니다.)