[CS/운영체제] 리눅스 파일 시스템 - 7부

황제연·2025년 5월 15일
0

CS학습

목록 보기
75/193
post-thumbnail

파일 링크 개요

리눅스에서 파일이나 디렉토리를 생성하면 아이노드 번호가 임의로 부여되며,
이 번호를 기준으로 관리됩니다

해당 번호는 ls -l 명령으로 확인할 수 있는데, 파일명이 다르더라도 번호가 같다면
내부적으로 같은 번호로 인식합니다

이렇게 파일 하나를 여러개의 이름으로 관리하거나 디렉토리 접근 경로를 단축하는 형태를
링크(Link)라고 합니다

관련 명령어

링크는 ln명령어를 통해 만들 수 있습니다
크게 하드링크(Hard Link) 와 심볼릭 링크(Symbolic Link)로 나누고,
심볼릭 링크는 소프트 링크(Soft Link)라고도 부릅니다

사용법

ln [option] 원본 대상 파일명

하드링크

하드 링크는 하나의 동일한 파일을 디스크의 다른 곳에 배치해서 여러 이름으로 사용되는 방식입니다
하드 링크는 파일에만 부여할 수 있습니다
공유 디렉토리에서 쓰기권한을 설정하면 파일을 누구나 생성하거나 삭제할 수 있는데
다른 사용자 소유의 파일도 삭제할 위험이 있습니다

이 경우를 대비해서 사용자의 홈 디렉토리에 하드링크를 생성하면
다른 사용자에 의해 파일이 삭제되어도 보존할 수 있습니다

하드 링크의 특징

  • ls -i 명령으로 I-node의 번호를 확인하면 원본과 링크 파일의 번호가 같습니다
  • 원본 링크 파일의 내용과 파일 크기가 같습니다
  • ls -l 명령 시 출력되는 링크의 숫자가 올라갑니다
  • 원본이나 링크 파일 중에 어떤 파일을 수정해도 같이 반영됩니다
  • 원본 파일을 삭제해도 링크 파일은 아무 영향을 받지 않습니다
  • 하드 링크는 파일만 설정가능하고, 동일한 파일 시스템에서만 사용가능합니다
  • 파티션이나 디스크 드라이브를 가로질러 사용할 수는 없습니다

심볼릭 링크

심볼릭 링크는 하나의 파일을 여러 이름으로 가리키게 하는 것으로
원본과 생성된 링크 파일은 완전히 다른 파일로 관리됩니다

파일이나 디렉토리에 모두 사용가능하나 일반적으로 디렉토리의 경로 단축이나 변경에 사용됩니다

심볼릭 링크의 특징

  • ls -i 명령으로 I-node번호를 확인하면 원본과 생성된 링크 파일의 번호가 다릅니다
  • 생성된 링크 파일의 크기가 매우 작습니다
  • ls -l 명령시에 출력되는 권한 영역의 맨 앞쪽에 l이라고 표시됩니다
  • 원본이나 링크 파일 중에 어떠한 파일을 수정해도 같이 반영됩니다
  • 원본 파일을 삭제하면 링크 파일은 아무런 역할을 하지 못합니다
  • 디렉토리에 링크 파일을 생성하면 단축기능과 같습니다
  • 생성되는 링크 파일의 권한 값이 777로 표시되나, 이 값은 원본 파일의 권한과는 무관합니다

참고

  • CentOS 7로 이해하는 리눅스 관리 및 시스템 보안 - 도서
profile
Software Developer

0개의 댓글