[Linux]알기쉽게 설명하는 리눅스 하드링크 정의 및 사용방법!

 Linux Hard Link 

알기쉽게 설명하는 리눅스 하드링크

 

  • 하드링크가 뭐야? 심볼릭링크랑 뭐가다른거지?
  • 원본 파일 or 폴더가 존재할 때, 심볼릭링크가 바로가기 개념이라면
  • 하드링크는 원본의 A급 복사본이라고 할수있다.
  • 심볼릭은 원본링크를 걸면 링크개수가 증가하지도 않고 inode번호도 원본과 다르지만
  • 하드링크는 원본링크와 같이 링크개수가 증가하고 inode번호또한 같다.

 

하드링크 (Hard Link) 란?

 

  • 원본 파일을 가르키는게 아니라 원본파일이 가르키는 파일시스템 데이터를 가리킨다.
  • 쉽게말해 원본파일이 가르키는 innode를 직접 바라본다.
  • 심볼릭링크는 원본파일을 가르킨다.
  • 원본 파일이 삭제되더라도 하드링크 안에 데이터는 남아있는다.
  • 이유는 하드링크는 원본파일이 아닌 원본파일이 가르키는 innode를 참조하고 있기 때문.
  • innode의 개념을 알기위해서는 리눅스 파일시스템의 자료구조를 공부할 필요가 있다.
  • 이해가 안간다면 innode를 선학습 후 다시 공부하자.

 

  • 하드링크는 같은 디스크 파티션에 있는 파일만 참조가 가능하다.
    • 즉 c드라이브 내에서 d드라이브로 하드링크를 걸 수 없다는 뜻이다.
  • 디렉토리는 링크가 안되고 파일만 링크할 수 있다.
    • 디렉토리 하위까지 싹 링크하려면 하드링크가 아닌, 심볼릭링크를 사용해야 한다.

 

하드링크 (hard Link)의 생성 및 삭제

 

  • in [원본파일] (띄어쓰기) [대상파일]
  • 예를들어 /data/real.txt , data 폴더 밑에 real이란 텍스트파일이 있는데 real 파일을
  • /data/hard.txt , data 폴더 밑에 hard라는 텍스트파일로 하드링크를 생성하려면
  • 아래와 같이 생성이 가능하다.
$ ㅣs /data/real.txt /data/hard.txt
  • 하드링크 파일 삭제는 rm 명령어로 가능하다.
$ rm -f /data/hard.txt

 

관련글

 

 

내용이 유익하셨다면 구독 및 좋아요 클릭 부탁드려요 :)

오늘 하루도 즐거운 하루 보내세요!