MKLINK vs. Junction.exe


27

SysInternals 에는 Windows에서 Junctions (일명 재분석 지점 , 일명 symlinks) 를 만드는 프로그램 junction.exe 가 있습니다.

그러나 Windows 에는 동일한 작업을 수행 하는 mklink 가 제공됩니다 .

중요한 차이점이 있습니까?

SysInternals에 자체 프로그램이 있으면 표준 MKLink 프로그램에 결함이 있다고 생각합니다.


5
Junction링크 된 페이지에 따르면 2010 년 9 월에 출판되었습니다. 마찬가지로, 링크 된 페이지 MKLINK의 게시 날짜는 2012 년 4 월입니다. 이는 실행 파일이 Windows에 추가 Junction되기 전에 만들어진 페이지 임을 나타냅니다 mklink. (각각 처음 등장했을 때는 더 이상 답을 구하지 않았으므로 완전한 답변이 아닌 의견입니다. 누군가가 이것을 확장하고 올바른 답변을 원한다면 내 손님
이 되십시오

죄송합니다! 나는 그것을 놓쳤다. Junction이 mklink보다 오래된 것 같습니다. 감사.
abelenky

답변:


41

비교

Mark Russinovich의 junction프로그램은 특정 목표를 염두에두고 설계되었습니다. 접합점 생성 (및 삭제). 몇 년 동안 유지되었지만 지금까지는 새로운 기능이 추가되지 않았습니다. 최신 버전은 2016 년 7 월 4 일에 릴리스되었습니다.

에 관해서 mklink는 Windows Vista 이상에서 사용할 수있는 기본 제공 명령입니다. 하드 링크, 접합점 및 심볼릭 링크를 만들 수 있습니다. 특정 삭제 기능이 제공되지 않습니다. 링크가 각각 파일 또는 디렉토리를 가리키는 지 여부에 따라 단순히 del또는 rd명령을 사용할 수 있습니다 .


약간의 역사

Vista 이전에는 Windows 운영 체제에서 즉시 연결 지점을 만들 수있는 방법을 제공하지 않았습니다. 공식 Resource Kit 사본을 얻 거나 타사 프로그램을 사용하거나 직접 작성해야했습니다.

2000 년

junction도구 의 첫 번째 버전 이 릴리스되었습니다. 공식 웹 사이트 인용 :

Windows 2000 이상은 디렉토리 심볼릭 링크를 지원합니다. 여기서 디렉토리는 컴퓨터의 다른 디렉토리에 대한 심볼릭 링크 역할을합니다. [...]

불행히도 Windows에는 접합을 만들 수있는 도구가 없습니다 linkd. 접합을 만들기위한 프로그램 과 함께 제공되는 Win2K Resource Kit를 구입해야합니다 . 따라서 나는 자신 만의 접합 작성 도구를 작성하기로 결정했다 : Junction .

출처 : 정션

2005-06

mklink명령은 초기 베타 단계에서 Windows Vista에 도입되었습니다.

2005 년 7 월 27 일에 공식 베타 1이 출시 된 이후에 사용할 수있었습니다. 처음에는 심볼릭 링크와 하드 링크 만 만들 수있었습니다. 접합점을 만드는 기능은 2005 년 12 월 19 일에 릴리스 된 CTP (Community Technology Preview)와 함께 나중에 나왔습니다.

분명히이 명령은 2006 년 후반에 처음 공개 될 때까지 완전히 눈에 띄지 않게되었습니다. 내가 찾은 가장 빠른 참조는 다음과 같습니다.

Windows Vista에서 심볼릭 링크를 만들 수 있습니다.

C:\test>ver

Microsoft Windows [Version 6.0.5365]

C:\test>mklink
Creates a symbolic link.

MKLINK [[/D] | [/H] | [/J]] Link Target

[...]

출처 : Windows Vista의 심볼릭 링크

또한:

Malcolm [MSFT] (전문가) :
Q : 심볼릭 링크를 만드는 쉬운 방법이 있습니까?
A : CMD를 열고 'mklink'를 입력하십시오. 이 도구를 사용하면 접점, 하드 링크 및 심볼릭 링크를 만들 수 있습니다.

출처 : NTFS 베타 대화 내용 (2006 년 7 월 12 일)


추가 정보

파일 또는 디렉토리에는 사용자 정의 데이터의 모음 인 재분석 지점이 포함될 수 있습니다. 이 데이터의 형식은 데이터를 저장하는 응용 프로그램과 데이터를 해석하고 파일을 처리하기 위해 설치하는 파일 시스템 필터에 의해 이해됩니다.

예를 들어 재분석 지점은 NTFS 파일 시스템 링크와 Microsoft 원격 저장소 서버 (RSS)를 구현하는 데 사용됩니다.

출처 : 재분석 포인트

NTFS 파일 시스템에서 지원되는 세 가지 유형의 파일 링크는 하드 링크, 정션 및 심볼릭 링크입니다.

출처 : 하드 링크 및 접속점

하드 링크

하드 링크는 둘 이상의 경로가 동일한 볼륨에서 단일 파일을 참조하는 파일의 파일 시스템 표현입니다. [...] 해당 파일의 모든 변경 사항은 해당 파일을 참조하는 하드 링크를 통해 파일에 액세스하는 응용 프로그램에 즉시 표시됩니다. 그러나 디렉토리 항목 크기 및 속성 정보는 변경이 이루어진 링크에 대해서만 업데이트됩니다.

출처 : 하드 링크 및 접속점

접합

정션 (소프트 링크라고도 함)은 참조하는 스토리지 오브젝트가 별도의 디렉토리이며, 정션이 동일한 컴퓨터의 다른 로컬 볼륨에있는 디렉토리를 링크 할 수 있다는 점에서 하드 링크와 다릅니다.

출처 : 하드 링크 및 접속점

접속점은 로컬 볼륨의 디렉토리에만 링크 할 수 있습니다. 원격 공유에 대한 연결 지점은 지원되지 않습니다.

출처 : NTFS 연결 지점

심볼릭 링크

심볼릭 링크는 다른 파일 시스템 객체를 가리키는 파일 시스템 객체입니다. 가리키는 객체를 대상이라고합니다.

심볼릭 링크는 사용자에게 투명합니다. 링크는 일반 파일 또는 디렉토리로 표시되며 사용자 나 응용 프로그램에서 정확히 동일한 방식으로 작동 할 수 있습니다.

출처 : 심볼릭 링크

[심볼릭 링크]는 Windows Vista 에서 NTFS 파일 시스템을 수정하여 소개 되었지만 Windows XP 용 필터 드라이버를 통해 사용할 수 있습니다 .

NTFS 연결 지점 (Windows 2000부터 사용 가능) 과 달리 기호 링크는 파일 또는 원격 SMB 네트워크 경로를 가리킬 수도 있습니다 . NTFS 연결 지점은 로컬 드라이브에서 절대 경로 만 지원하지만 NTFS 기호 링크는 상대 경로를 사용한 연결을 허용합니다.

Windows Vista / Windows 7 의 기본 보안 설정은 권한이없는 관리자와 모든 비 관리자가 기호 링크를 만들 수 없도록합니다.

출처 : NTFS 기호 링크

추가 자료


나보다 훨씬 더 자세한 답변을하려는 경우 NTFS Reparse Points 가 또 다른 맛 이라고 말할 수 있습니다.
paradroid

(명확하게하기 위해 하드 링크 참조)
paradroid

순수한 품질 답변.
sshow 2016 년

2
NB : "파일"심볼릭 링크 ( mklink대상 유형에 관계없이 일반으로 작성 됨 )가 있으며 "디렉토리"심볼릭 링크가 있습니다 (제작자 mklink /d). 대상에 맞는 올바른 유형의 링크를 만드는 것이 가장 좋습니다.
kbolino

junction.exe가 2016 년에 업데이트 된 이유와 왜 SysInternals와 함께 계속 제공됩니까? 그들은 성병에 반대 하는가? 생각 해보세요. 네 .. 아마도 그 도구의 절반은 Windows에서 충분한 대체물을 가지고있을 것입니다. 훌륭한 자세한 답변.
Adam Plocher

2

의견에서 이미 언급했듯이 junction.exeVista / Winserver 2008 이전에 mklink명령이 제공되었습니다.

따라서 Vista 이상에서는 사용할 필요가 없습니다. Vista 이전의 Windows 버전은 더 이상 지원되지 않습니다.

또한 Vista / WinServer 2008 및 명령에 도입 된 NTFS 기호 링크 ( NTFS Junctions 에만 해당) junction.exe는 지원하지 않습니다 .mlink

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