파일 시스템에 파일 이름이 어디에 저장되어 있습니까?
두 파일 이름이 동일한 inode를 가리킬 수있는 하드 링크가 있기 때문에 inode 또는 실제 파일 내용이 아닙니다.
답변
적절한 사본을 찾지 못해 귀하의 질문에 대한 답변입니다.
파일 이름 및 디렉토리
발췌
파일 이름 및 디렉토리 의미 :
- inode는 파일 이름을 포함하지 않으며 다른 파일 메타 데이터 만 포함합니다.
- Unix 디렉토리는 하나의 파일 이름과 하나의 inode 번호를 포함하는 연관 구조의 목록입니다.
- 파일 시스템 드라이버는 특정 파일 이름을 찾는 디렉토리를 검색 한 다음 파일 이름을 해당하는 inode 번호로 변환해야합니다.
출처 : Inode의 Wikipedia 페이지
따라서 파일 이름은 디렉토리의 정보 구조 내에 저장됩니다. 예를 들면 다음과 같습니다.
디렉토리의 구조
발췌
EXT2 파일 시스템에서 디렉토리는 파일 시스템의 파일에 대한 액세스 경로를 작성하고 보유하는 데 사용되는 특수 파일입니다. 그림 9.3은 메모리에서 디렉토리 엔트리의 레이아웃을 보여줍니다.
디렉토리 파일은 디렉토리 항목 목록이며 각 항목에는 다음 정보가 포함됩니다.
- inode- 이 디렉토리 엔트리의 inode 이것은 블록 그룹의 Inode 테이블에 보관 된 inode 배열에 대한 인덱스입니다. 그림 9.3에서 file이라는 파일의 디렉토리 항목에는 inode 번호 i1에 대한 참조가 있습니다.
- name length- 이 디렉토리 항목의 길이 (바이트)
- name- 이 디렉토리 엔트리의 이름
모든 디렉토리의 처음 두 항목은 항상 “이 디렉토리”및 “상위 디렉토리”를 각각 의미 하는 표준
.
및..
항목입니다.
위 의 그림 9.3 참조 는 다음과 같습니다 .
출처 : 리눅스 문서 프로젝트 : 파일 시스템
참고 문헌
답변
파일 이름은 해당 디렉토리 ( “디렉토리 파일”)에 저장됩니다. 이 항목은 inode를 가리 킵니다.
답변
파일 이름은 “(string) filename”및 해당 “(int) inode”가있는 “directory”데이터 구조에 저장됩니다. 디렉토리는 filename-> inode 매핑을 담당합니다. 그리고 ode에서 디스크의 inode-> 섹터를 매핑합니다.