이후 버전의 Windows에서 심볼릭 링크 대신 바로 가기 파일을 계속 사용하는 이유는 무엇입니까?


68

Windows XP 이상은 심볼릭 링크를 지원합니다. 그러나 Windows는 계속해서 바로 가기 파일 (링크 된 파일의 위치를 ​​텍스트로 저장)을 사용합니다. 왜?


25
새 버전의 Windows (및 Office)가 텍스트 파일을 UTF-8이 아닌 ANSI 형식으로 저장하는 이유는 무엇입니까? 비 호환성과 불합리성을 지속 시키거나 레거시 시스템을 지원하기 위해 ...
Retrography

9
Windows XP 이상은 특정 파일 시스템에서 기호를 지원합니다. 기호 링크는 하드 디스크의 NTFS 파일 시스템에서 작동하지만 일반 FAT 32 형식 USB 스틱 또는 UDF 형식 CD-ROM으로 복사하면 작동하지 않으며 네트워크 서버에 복사하면 작동하지 않을 수 있습니다 원격 서버에서 사용하는 OS 또는 파일 시스템을 모르는 경우가 많습니다). LNK 바로 가기 파일을 행복하게 복사하여 모든 파일에서 사용할 수 있습니다.
GAThrawn

12
Windows .lnk파일은 .desktop심볼릭 링크보다 Linux 파일 과 더 유사합니다 .
Arturo Torres Sánchez

3
Symlinks는 보안 현명한 까다로운 (혼동 된 부 문제)
CodeInChaos

2
NTFS가 등장했을 때 브라우저에서 북마크 사용을 중단 했습니까? 터무니없는 비교처럼 들릴 수 있지만 바로 가기가 파일에 대한 포인터 일뿐이라고 생각되는 경우에만 해당됩니다.
Luaan

답변:


106

여러 가지 이유가 있습니다.

  1. 파일 시스템이 아니라 셸에서 해석되는 동일한 EXE에 대한 여러 가지 바로 가기에 대해 서로 다른 수준의 호환성을 저장할 수 있습니다.
  2. 특정 바로 가기 링크는 실제로 파일 시스템에 존재하지 않습니다. 그중 일부는 단순히 GUID 또는 쉘이 해석하는 특수 문자열에 대한 참조입니다.
  3. 심볼릭 링크에는 스위치를 포함 할 수 없습니다. EXE를 가리킬 수는 있지만 EXE에 추가 ​​인수를 말할 수는 없습니다.
  4. 심볼릭 링크의 아이콘을 선택할 수 없습니다.
  5. 심볼릭 링크에서 작업 할 디렉토리를 선택할 수 없습니다.
  6. 바로 가기 파일은 파일을 가리킬 필요가 없으며 하이퍼 링크 또는 프로토콜 링크 일 수 있습니다 (.URL 파일의 경우).
  7. LNK 파일은 모든 파일 시스템에 존재할 수 있습니다. 심볼릭 링크는 파일 시스템 자체 (Windows, NTFS의 경우)에 의해 처리됩니다.
  8. 교체 할 필요가 없습니다. 그들은 작동하고, 작고, 위에 나열된 것보다 더 많은 기능을 추가해야 할 경우 미래에 확장 될 수 있습니다.
  9. 심볼릭 링크를 만들려면 관리 권한이 필요합니다 (합당한 이유는 무의미한 파일을 악의적 인 파일로 리디렉션하는 작업이 거의없이 수행 될 수 있음).

이것보다 더 많은 이유가 있지만, 시작하기에 충분하다고 생각합니다 :)-@grawity 에서 제공하는 링크가 있습니다 .이 주제의 일부에 대한 추가 정보를 제공합니다.


2
또한 파일 바로 가기는 대상에 대한 특정 메타 데이터를 캐시하며 셸 수준에서 해석 되면 대상이 이동 된 경우 셸에서 바로 가기를 업데이트 할 수 있으므로 심볼릭 링크가 더 어려워집니다. 일반적으로 바로 가기 기능에 대한 다양한 흥미로운 내용은 Old New Thing을 다시 참조하십시오 .
grawity

5
@grawity 파일 시스템에 의해 처리되도록 옮기면 큰 이점이 있습니까? .lnk 파일은 필요한 경우 추가 기능을 위해 확장 할 수있는 무한한 공간이 있다고 생각했을 것입니다. 이전 버전과의 호환성은 여전히 ​​유지하고 있으며 오버 헤드는 많지 않습니다. 이것을 파일 시스템으로 옮기는 것은 약간 과장된 것일 것입니다. 나는 결코 파일 시스템의 내부 작업에 전문가가 아닙니다.
Jonno

3
사실 FS 자체는이 정보의 대부분을 사용하지 않을 것입니다. 많은 .lnk 기능은 실제로 탐색기마다 다르므로 파일 대신 재분석 지점으로 모든 것을 저장하는 것은 과도합니다.
grawity

3
내가 아는 한, LNK 파일은 URL (하이퍼 링크)을 대상으로하는 데 사용될 수 없습니다. Windows에서 동일한 바로 가기 생성 기능을 사용하여 URL에 대한 바로 가기를 만들 수 있지만 최종 결과는 .LNK 파일 (이진 파일)이 아닌 .URL 파일 (일반 텍스트, 기본적으로 INI 파일)입니다.
Michael Becker

3
또는 start http://superuser.comURL에 대한 바로 가기처럼 기본 브라우저를 선택합니다. 즉, .LNK 파일이 URL을 가리 키도록 할 있습니다. 결국, 그들은 "직렬화 된 COM 모니 커"이고 COM 시스템은 새로운 모니 커 유형으로 확장 될 수 있습니다.
MSalters

6

심볼릭 링크는 아주 적은 양의 파일 시스템 마법에 싸여진 경로에 지나지 않습니다. 무효화 될 수있는 방법은 여러 가지가 있으며 ( "파손"), 대부분 하나 이상의 파일 또는 디렉토리 이름이 변경됩니다. Windows는 소비자 용 소프트웨어이므로 "일반적인"설치에서 실행되는 매우 잘못 설계된 프로그램이 많이있을 수 있습니다. 결과적으로 이러한 종류의 손상은 디스크에 닿는 모든 프로그램이 알려진 양인 이론 상으로는 서버보다 피하기 훨씬 어렵습니다.

지름길은 경로와 상관없이 대상을 추적하므로 대부분의 형태의 파손에 영향을받지 않습니다 . 이를 통해보다 사용자 친화적입니다. 이 제품은 소비자를 위해 특별히 설계되었으며 "내가 의미하는 바대로하고 세부 사항에 대해 신경 쓰지 마십시오"접근 방식을 사용합니다.

이제 하드 링크를 어느 정도 사용할 수 있지만 하드 링크에는 소비자가 사용하기에 부적합한 여러 가지 복잡한 속성 이 있습니다. 특히, 파일은 새로운 inode 번호를 너무 쉽게 얻을 수 있으며 일부 백업 소프트웨어는 하드 링크에 직면 할 때 눈에 띄게 손상됩니다. 전자는 아마도 파일 시스템 터널링 (실제로 바로 가기가 관련 문제를 해결하는 방법 )으로 해결할 수 있지만 후자는 훨씬 더 어려운 문제입니다.

(또한 터널링으로 하드 링크를 "해결"하는 것은 "잃어버린"메타 데이터를 다시 연결하는 문제가 아니기 때문에 결정적으로 중요하지 않다는 점에 유의해야합니다. 지름길은 약간의 레거시 없이도 사실을 재 할당 할 수 있습니다. 단축키는 생성 시간과 같이 쉽게 터널링 할 수있는 다른 메타 데이터를 사용하므로이 문제가 없습니다.)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.