본문 바로가기
Dev/Linux

[Linux] soft link와 hard link의 차이점

by 흰바다제비 2022. 8. 23.
728x90

* i-node

: 파일의 고유 번호. 사람의 주민등록번호와 같다.

 

* hard link

:한 파일의 복사본을 만드는 것과 유사하다. 한 파일을 복사하고, 원본과 하드링크 파일이 같은 i-node를 가져 어디에서 수정을 하던지에 상관 없이 수정이 함께 이루어진다.

소프트 링크와의 차이점은 원본을 지워도 하드 링크 파일은 실행이 되며, 내용이 보존된다는 것이다.

 

명령어는 다음과 같다.

ln original_file hardlink_file
# ln 원본파일 하드링크파일

hard link가 단순 cp(복사)와 다른 점은, cp의 경우 만들어낸 복사본이 원본과의 i-node도 다를뿐더러, 복사본을 수정해도 원본에는 영향을 끼치지 않는다. 하드 링크는 원본과 연결된 복사본이다.

 

 

* soft link :

바로가기 기능과 유사하다. 심볼릭 링크(symbolic link)라고도 한다.

파일의 불필요한 반복적 복사를 방지하여 파일 시스템을 유연하게 활용하거나 여러 디렉토리에서 동일한 라이브러리를 요구할 경우, 같은 파일을 여러 사람이 공통으로 관리하면서 사용할 경우, 비슷한 역할을 담당하는 여러 가지 파일들 중 하나를 선택하여 대표적으로 사용하려 할 때 유용하게 쓸 수 있다. 

원본을 복사하고 어디에서 수정을 하든 함께 내용이 바뀌는 것은 하드 링크와 같지만, 소프트 링크는 원본을 삭제하게 되면 연결이 끊겨 링크를 사용할 수 없다.

 

명령어는 다음과 같다.

ln -s original_file softlink_file
# ln 원본파일 소프트링크파일

 

 

 

* soft link와 hard link의 차이점

 

소프트 링크는 원본이 삭제될 경우 링크를 사용할 수 없지만, 하드 링크는 원본이 삭제되어도 원본과 동일한 내용의 파일을 가지고 있으므로, 자원을 공유하면서도 데이터를 안전하게 관리하고자 할 때 주로 사용된다.

 


참고

 

파일 링크 : ln - 하드 링크(Hard Link), 소프트 링크(Soft Link)

유닉스 시스템을 사용할 때, 디렉토리 계층 구조를 따라 들어가고 들어가고 들어가서 실행해야 하는.. 그것도 자주 사용하는 파일이라면 매 번 찾아가기 번거롭다. 마치 내가 물건 하나 찾으려

6kkki.tistory.com

 

하드링크와 심볼릭 링크의 차이점 – The story of 超

링크(Link) 도스나 윈도 사용자에게는 낯선 개념인데, 유닉스나 리눅스 파일 시스템에서 실제 파일이나 디렉토리 혹은 또 다른 링크를 가리키도록 연결해 준다는 의미이다. 윈도의 ‘바로 가기’

www.metalpen.net

 

728x90

'Dev > Linux' 카테고리의 다른 글

[Linux] Kernel  (0) 2022.09.05
[Linux] Network commands - curl, wget  (0) 2022.08.25
[Ansible] Ansible playbook example - 3  (0) 2022.08.19
[Ansible] Ansible playbook example - 2  (0) 2022.08.18
[Ansible] Ansible playbook example - 1  (0) 2022.08.17

댓글