리눅스 ln 명령어: 심볼릭 링크와 하드 링크의 차이 및 사용법
ln
명령어는 리눅스에서 파일의 심볼릭 링크와 하드 링크를 생성하는 데 사용됩니다. 이 글에서는 이 두 유형의 링크가 어떻게 다른지, 그리고 각각을 어떻게 사용하는지에 대해 알아보겠습니다.
☞ 포스트 기준: 리눅스 배포판 CentOS 7
1. ln 명령어의 주요 옵션
옵션 | 설명 |
---|---|
-s | 심볼릭 링크 생성 |
없음 | 하드 링크 생성 |
2. 심볼릭 링크와 하드 링크 차이점
심볼릭 링크(Symbolic Link)
- 파일이나 디렉토리에 대한 ‘바로 가기’와 유사하며, 원본 파일이나 디렉토리의 경로를 참조합니다.
- 원본 파일이 이동되거나 삭제되면 심볼릭 링크는 더 이상 유효하지 않게 됩니다.
- 심볼릭 링크는 다른 파일 시스템에 있는 파일을 참조할 수 있습니다.
하드 링크(Hard Link)
- 원본 파일과 동일한 데이터에 대한 추가적인 참조를 만듭니다.
- 하드 링크는 원본 파일과 동일한 파일 시스템 내에 있어야 하며, 원본 파일이 삭제되더라도 여전히 데이터에 접근할 수 있습니다.
- 디렉토리에 대해서는 하드 링크를 생성할 수 없습니다.
3. ln 명령어 사용 예시
1) 심볼릭 링크 생성
$ ln -s original.txt symlink.txt
이 명령어는 ‘original.txt’ 파일에 대한 심볼릭 링크 ‘symlink.txt’를 생성합니다.

2) 하드 링크 생성
$ ln original.txt hardlink.txt
이 명령어는 ‘original.txt’ 파일에 대한 하드 링크 ‘hardlink.txt’를 생성합니다.

☞ 심볼릭 링크는 원본 파일을 가리키는 참조로, 원본 파일이 이동되거나 삭제되면 링크가 더 이상 유효하지 않게 됩니다. 반면, 하드 링크는 원본 파일과 같은 데이터에 대한 추가적인 참조를 만듭니다. 이러한 차이점으로 인해 각 링크 유형의 사용 사례가 다릅니다.
관련 이전 게시글
- 리눅스 cp 명령어: 파일 및 디렉토리 복사하기
- 리눅스 mv 명령어: 파일과 디렉토리 이동 및 이름 변경하기
- 리눅스 rm 명령어: 파일과 디렉토리 삭제하기
- 리눅스 pwd 및 cd 명령어: 현재 디렉토리 확인 및 변경하기
- 리눅스 tar 명령어: 파일과 디렉토리 효율적으로 압축 및 해제하기
다음 글에서는 더 유용한 리눅스 명령어에 대해 알아볼 예정입니다. 도움이 되셨다면 공유해 주세요!