하드 링크와 그 반대로 심볼릭 링크의 장점은 무엇입니까?


답변:


10

이에 대해서는 ServerFault 에 대해 자세히 설명 했습니다.

하드 링크는 전통적으로 동일한 파일 시스템 구조 (Unixspeak의 아이 노드)를 공유하지만 소프트 링크는 경로 이름 리디렉션입니다.

  • 하드 링크는 동일한 파일 시스템에 있어야하며 소프트 링크는 파일 시스템을 교차 할 수 있습니다.
  • 하드 링크 된 파일 중 하나를 이동하더라도 복사 및 삭제 메커니즘을 트리거하는 다른 파일 시스템으로 이동하지 않는 한 하드 링크 된 파일은 연결 상태를 유지합니다. 대상 (원본)을 이동하면 링크가 이동 될 때 소프트 링크로 연결된 파일이 손상됩니다 (절대 또는 상대 경로를 사용 했습니까? 여전히 유효합니까?).
  • 하드 링크 된 파일은 동일하며 원본은 소프트 링크에서 특별하며 원본을 삭제하면 데이터가 삭제됩니다. 모든 하드 링크가 삭제 될 때까지 데이터가 사라지지 않습니다 .
  • 소프트 링크는 모든 대상을 가리킬 수 있지만 대부분의 OS / 파일 시스템은 하드 링크 인 디렉토리를 허용하여 파일 시스템 그래프의주기를 방지합니다 ( 하드 링크 인 유닉스 디렉토리 의 ...항목 제외 ).
  • 소프트 링크는 파일 시스템 보행 도구의 특별한 지원이 필요할 수 있습니다. readlink (2)를 읽으십시오 .

(일부 세부 사항은 mat1t에 의해 기억됩니다 . 감사합니다.)


10

로널드는 하드 링크가 두 곳에서 다른 권한을 가질 수 있다고 썼다. 이것은 옳지 않습니다. 두 곳 모두 같은 아이 노드를 공유합니다. 권한은 파일 이름이 아닌 inode에 바인딩됩니다. 따라서 두 곳의 하드 링크는 정확히 동일한 권한, 액세스 시간을 갖습니다 ...


1

심볼릭 링크는 파일 시스템을 통과 할 수 있지만 하드 링크는 할 수 없습니다. 원본 파일을 삭제해도 하드 링크는 여전히 활성 상태를 유지하지만 심볼릭 링크는 유지되지 않습니다.


0

하드 링크는 기본적으로 파일이 두 곳에 존재 함을 의미하며, 다른 권한을 가질 수 있으며 다른 곳에서는 삭제할 수 없습니다.

소프트 링크는 단지 실제에 대한 포인터입니다.

하드 링크는 동일한 파일을 가리키는 두 개 이상의 디렉토리 항목입니다. 소프트 링크는 다른 디렉토리 항목을 가리키는 디렉토리 항목입니다.

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