
Symbolic Link (Symlink)과 Hard Link의 차이점을 설명드리겠습니다.
Symbolic Link (Symlink)는 실제 파일을 가리키는 것이 아닌, 별도의 파일을 생성하여 해당 파일의 위치를 저장하는 것입니다. Symlink는 참조하는 파일의 이름과 위치를 저장하는 텍스트 파일입니다. 따라서 Symlink는 실제 파일을 삭제하더라도 Symlink는 여전히 유효합니다.
Hard Link는 Symlink와 다르게 실제 파일의 inode 번호를 공유합니다. inode는 파일의 메타데이터를 저장하는 블록입니다. Hard Link는 동일한 inode 번호를 공유하는 파일을 여러 개 생성할 수 있습니다. 따라서 Hard Link는 실제 파일을 삭제하더라도 Hard Link는 여전히 유효합니다.
이 두 가지의 링크 타입을 구분하는 기준은 다음과 같습니다.
- Symlink는 별도의 파일을 생성하여 참조하는 파일의 위치를 저장합니다.
- Hard Link는 동일한 inode 번호를 공유하는 파일을 여러 개 생성합니다.
실제 파일 시스템에서 Symlink와 Hard Link은 다음과 같이 작동합니다.
- Symlink는 참조하는 파일의 이름과 위치를 저장하는 텍스트 파일로, 실제 파일을 삭제하더라도 Symlink는 여전히 유효합니다.
- Hard Link는 동일한 inode 번호를 공유하는 파일을 여러 개 생성합니다. 따라서 Hard Link는 실제 파일을 삭제하더라도 Hard Link는 여전히 유효합니다.
예를 들어, 다음과 같이 Symlink와 Hard Link를 생성할 수 있습니다.
#hostingforum.kr
bash
# Symlink 생성
ln -s /path/to/file.txt symlink.txt
# Hard Link 생성
ln /path/to/file.txt hard_link.txt
이러한 예제를 통해 Symlink와 Hard Link의 차이점을 이해할 수 있습니다.
2025-04-24 18:23