▶ 심볼릭 링크와 하드 링크
심볼릭 링크와 하드 링크는 모두 리눅스 파일 시스템에서 파일을 참조하는 데 사용되는 특수한 파일입니다. 하지만 두 가지는 작동 방식과 특징에서 중요한 차이점을 가지고 있습니다.
1. 심볼릭 링크 (Symbolic Link)
- 바로 가기와 유사: 심볼릭 링크는 다른 파일 또는 디렉토리에 대한 "바로 가기"를 생성합니다.
- 파일 위치 변경 가능: 심볼릭 링크가 참조하는 파일의 위치를 변경해도 링크 자체는 유효합니다.
- 독립적인 파일: 심볼릭 링크는 원본 파일과 독립적인 파일입니다. 원본 파일을 삭제해도 링크 자체는 남아 있지만, 링크를 통해 더 이상 원본 파일에 접근할 수 없습니다.
- 상대 경로 또는 절대 경로 사용 가능: 심볼릭 링크는 상대 경로 또는 절대 경로를 사용하여 원본 파일을 참조할 수 있습니다.
- 파일 속성: 심볼릭 링크 자체는 크기가 작고, inode 번호가 원본 파일과 다릅니다.
2. 하드 링크 (Hard Link)
- 파일 별칭: 하드 링크는 동일한 파일 시스템 내에 있는 동일한 파일의 "별칭"을 생성합니다.
- 파일 위치 변경 불가능: 하드 링크가 참조하는 파일의 위치를 변경하면 링크 자체가 유효하지 않게 됩니다.
- 원본 파일과 동일: 하드 링크는 원본 파일과 동일한 inode 번호를 가지고 있으며, 동일한 데이터를 가리킵니다. 하나의 파일을 여러 개의 하드 링크로 참조하면 실제로는 하나의 데이터만 존재합니다.
- 상대 경로만 사용 가능: 하드 링크는 상대 경로만 사용하여 원본 파일을 참조할 수 있습니다.
- 파일 속성: 하드 링크는 원본 파일과 동일한 크기, inode 번호, 소유자, 그룹, 권한 등을 가지고 있습니다.
3. 사용 예시:
- 심볼릭 링크: 자주 사용하는 파일 또는 디렉토리에 대한 바로 가기를 만들 때 사용합니다.
- 하드 링크: 여러 개의 이름으로 동일한 파일을 참조해야 하는 경우 사용합니다.
# 주의:
- 심볼릭 링크는 원본 파일의 위치에 따라 유효성이 결정되므로, 원본 파일을 이동하거나 삭제하면 링크가 유효하지 않게 될 수 있습니다.
- 하드 링크는 동일한 파일 시스템 내에서만 사용할 수 있으며, 다른 파일 시스템으로 이동하면 유효하지 않게 됩니다.
댓글 영역