2013-05-05 4 views
1

EXT2 파일 시스템에 대해 읽었으며 많은 질문이 있습니다. EXT2 파일 시스템에 대한 여러 질문

는 주로 다음과 같은 리소스에 의존 :
http://e2fsprogs.sourceforge.net/ext2intro.html
http://www.virtualblueness.net/Ext2fs-overview/Ext2fs-overview-0.1.html#toc7
http://www.nongnu.org/ext2-doc/ext2.html
http://www.tldp.org/LDP/tlk/fs/filesystem.html

  1. 블록 그룹은 다음과 같은 구조를 가지고 : |Super Block(backup)|Group Descriptors(backups)|Block Bitmap|Inode Bitmap|Inode Table|Data Blocks| (첫 번째 링크에 설명 된대로)가 아이 노드 있음을 의미 하는가 Data Block에서 제공되는 것보다 더 많은 데이터를 청구 할 수 없습니까?
  2. 블록 그룹 작업 중에 업데이트 된 Super Block(backup)Group Descriptors(backups)이 있습니까? 각 블록 그룹은 오른쪽 수퍼 후에 번째 블록의 그룹 디스크립터의 전체 테이블을 포함

것을 http://www.virtualblueness.net/Ext2fs-overview/Ext2fs-overview-0.1-7.html 참고. (???) 그러나 첫 번째 복사본 (그룹 0) 만 실제로 커널에서 사용됩니다. 다른 복사본은 백업용으로 이며 기본 복사본에 이 손상되면 사용할 수 있습니다. 당신이 Group Descriptor의 소스에서보고 한 경우 첫 문장이 의미하는 시도로

는 더 entire table of group descriptors이 없습니다. (어쩌면 내가 놓친) ??

전체 백업 시스템이 의미가 없습니다. 적절한 백업은 모든 복사본을 싱크대에 보관해야합니다. 어떻게되는지는 알 수 없습니다.
3. Inode Table의 목적은 무엇입니까?
4. Directories은 어떻게 서브 디렉토리를 만드나요? 디렉토리 테이블의 각 항목은 Inode Table의 항목을 가리 킵니다.

감사합니다. (다른 질문이있을 수 있습니다.)

+0

안녕하세요, 저는 두 번째 질문에 대한 대답을 얻는 지 궁금합니다. 구체적으로, 하나의 그룹 디스크립터가 변경되면 얼마나 많은 그룹 디스크립터 테이블 복사본이 업데이트 될 것인가? – fengye87

답변

2

두 블록 그룹의 종류가 있습니다

백업 유형는 : 일반적인 유형의 수퍼 블록 그룹 디스크립터 테이블 PLUS 모든 것이 포함되어 (이하).

일반적인 유형 : 블록 비트 맵, Inode 비트 맵, Inode 테이블 및 데이터 블록.

백업 블록 그룹이 그룹 0 및 1, 3, 5의 멱수 모든 그룹이며, 제

각 블록 그룹 디스크립터 테이블 여러 블록 그룹 디스크립터를 포함한다. 블록 그룹당 하나의 블록 그룹 설명자가 있습니다. 따라서 450 개의 블록 그룹이있는 경우 하나의 블록 그룹 설명자 테이블에 서로 인접한 450 개의 블록 그룹 설명자가 있습니다.

inode 테이블의 목적은 나중에 파일 시스템에서 사용할 수있는 몇 개의 사용 가능한 inode를 만드는 것입니다. ext2/3 파일 시스템을 만든 후에는 새 inode를 만들 수 없습니다. 파일 시스템을 만들 때 고정 숫자 세트입니다.

다음은 디렉토리를 만드는 방법입니다. 무료 inode가 선택되어 디렉토리 정보를 보유하도록 선택됩니다. 다음으로, 무료 데이터 블록이 디렉토리 항목 정보를 보유하기 위해 선택됩니다. 빈 디렉토리조차도 데이터 블록에 두 개의 디렉토리 항목을 포함합니다. 자체 디렉토리에 대한 디렉토리 항목과 상위 디렉토리에 대한 디렉토리 항목이 있습니다. 따라서 새 디렉토리의 경우 inode가 선택되고 데이터 블록이 선택되어 처음 두 개의 디렉토리 항목이 보관됩니다. 새 파일이나 디렉토리가 만들어지면 더 많은 디렉토리 항목이 데이터 블록에 추가됩니다.

0

유닉스 호환 파일 시스템은 이러한 파일 시스템의 핵심 요소 인 inodes을 가져야합니다.

유닉스 파일 시스템에는 link(2) 시스템 콜에 의해 추가 된 하드 링크가있을 수 있습니다. 일부 파일은 여러 이름을 가질 수 있으며이 이름은 모두 동등한 이름입니다. 그리고 파일의 이름이 나중에 모두 unlink(2) -ed 일지라도 어떤 프로세스에 의해 open(2) -ed가되었을 때 디스크에 파일이 남아 있습니다. 특히 이것은 임시 파일을 만드는 방법입니다.

그래서 사실, 아이 노드는 (파일 시스템)에 실제 파일 및 디렉토리 항목은 이름 (디스크에 inode 번호에 관련된) 그들을 위해이 포함되어 있습니다.

실제로, Ext2은 더 이상 사용되지 않으며 Ext4으로 발전했습니다. 이 위키 피 디아 페이지를 모두 읽으십시오.백업 유형일반 유형 :

관련 문제