리눅스에서 소프트 링크와 하드 링크의 차이는?
_____A1: 소프트 링크는 원본 파일의 경로를 가리키는 특수한 파일로, 마치 바로가기(shortcut)처럼 동작합니다. 원본 파일이 이동되거나 삭제되면 소프트 링크는 끊어진 링크(broken link)가 됩니다.
Q2: 하드 링크란 무엇인가요?
A2: 하드 링크는 원본 파일의 데이터 블록(Inode)을 가리키는 또 다른 이름입니다. 즉, 동일한 파일 데이터에 대해 여러 이름을 부여하는 방식이며, 원본 파일과 동일한 실제 데이터를 공유합니다.
Q3: 소프트 링크와 하드 링크의 가장 큰 차이점은 무엇인가요?
A3: 소프트 링크는 별도의 파일로 원본 파일 경로를 저장하는 반면, 하드 링크는 동일한 데이터 블록을 공유하는 또 다른 파일 이름입니다.
Q4: 소프트 링크는 다른 파일 시스템에서도 생성할 수 있나요?
A4: 네, 소프트 링크는 다른 파일 시스템이나 파티션에 있는 파일도 가리킬 수 있습니다. 반면 하드 링크는 동일한 파일 시스템 내에서만 생성 가능합니다.
Q5: 소프트 링크는 디렉토리에 만들 수 있나요? 하드 링크는요?
A5: 소프트 링크는 디렉토리에도 만들 수 있지만, 일반적으로 권장되지 않습니다. 하드 링크는 기본적으로 디렉토리에 만들지 못하도록 제한되어 있습니다(특별한 권한이나 설정 필요).
Q6: 원본 파일을 삭제하면 소프트 링크와 하드 링크는 어떻게 되나요?
Q7: 소프트 링크와 하드 링크는 inode 번호가 어떻게 다른가요?
A7: 소프트 링크는 자기만의 inode를 가지며, 원본 파일과 다른 inode 번호를 가집니다. 하드 링크는 동일한 inode 번호를 공유합니다.
Q8: 파일 변경 시 소프트 링크와 하드 링크의 동작 차이는?
A8: 하드 링크로 연결된 모든 이름은 동일한 데이터에 접근하므로, 어느 이름이든 수정하면 모두 반영됩니다. 소프트 링크는 원본 파일을 참조하므로, 원본 파일 변경 시 자동으로 따라갑니다.
Q9: 소프트 링크와 하드 링크 생성 명령어는?
A9: 소프트 링크 생성: `ln -s [원본] [링크명]`
하드 링크 생성: `ln [원본] [링크명]`
Q10: 일반적으로 언제 소프트 링크를 사용하고 언제 하드 링크를 사용하나요?
A10:
- 소프트 링크는 다른 파일 시스템 간 연결, 디렉토리 링크, 또는 경로가 변할 수 있는 경우 주로 사용합니다.
- 하드 링크는 같은 파일 시스템 내에서 데이터 복제 없이 동일 파일을 여러 이름으로 관리할 때 사용하며, 파일을 여러 위치에서 동일하게 접근할 필요가 있을 때 유용합니다.
작성자:
박시후 [비회원]
| 작성일자: 1년 전
2024-09-30 08:49:30
조회수: 189 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
조회수: 189 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.