본문 바로가기
공부/정보보안기사

<정보보안기사> 1. 시스템 이론 - 파일 시스템 개요(부트 블록, 슈퍼 블록, 아이노드 리스트, 데이터 블록)

by Richard_Hoon 2024. 11. 15.
반응형

 

 

파일 시스템 개요

 

 - 물리적인 컴퓨터의 하드 디스크, SSD와 같은 물리적인 저장 장치에 저장된 데이터를 관리하는 논리적인 구조

 - 물리적인 저장장치는 여러개의 논리적인 파티션으로 나눌 수 있음

 

 

운영체제별 파일 시스템

 

 - NTFS : 마이크로 소프트 윈도우 운영체제에서 주로 사용되는 파일 시스템으로 안정성과 성능이 뛰어남

 - EXT2, EXT3, EXT4 : 리눅스 운영체제에서 주로 사용되는 파일 시스템으로 EXT4가 가장 최신 버전이며 성능과 기능이 향상

 

 

파일 시스템 구성

 

파일 시스템은 크게 4가지로 구성된다.

 

1. 부트 블록(Boot block)

역할    운영체제를 부팅하는 데 필요한 정보를 담고 있음
내용    부트 로더의 시작 주소, 파티션 테이블 정보 등이 포함
위치    파일 시스템 가장 앞 부분에 위치

 

 

2. 슈퍼 블록(Super block)

역할    파일 시스템 전체에 대한 정보를 담고 있는 마스터 목록
내용    파일 시스템의 크기, 블록 크기, 사용 가능한 공간, 파일 시스템 종류, 마지막으로 파일 시스템이 마운트된 시간 등 파일시스템의 상태를 나타내는 모든 정보를 포함
중요성    파일 시스템을 관리하고 이해하는 데 가장 중요한 정보를 제공

 

 

3. 아이노드 리스트(inode list)

역할    파일 시스템 내의 각 파일 또는 디렉토리에 대한 메타 데이터를 저장하는 공간
내용    파일의 이름, 크기 생성 시간, 수정 시간, 소유자, 권한, 파일 타입 (일반 파일, 디렉터리 등), 데이터 블록의 위치 등 파일에 대한 모든 정보를 포함
특징    - 각 파일 또는 디렉터리는 고유한 inode를 가짐
   - 아이노드는 파일의 실제 데이터를 저장하는 것이 아니라 데이터가 저장된 블록의 위치를 가리키는 포인터를 가지고 있음

 

 

4. 데이터 블록(Data block)

역할    실제 파일의 데이터를 저장하는 공간
특징    - inode에서 가리키는 주소를 따라 데이터 블록에 접근하여 파일의 내용을 읽고 쓸 수 있음
   - 여러 개의 데이터 블록을 연결하여 큰 파일을 저장할 수 있음

 

 

간단 요약(관계)

 

 - 부트 블록 : 파일 시스템의 시작점을 알려주고 운영체제를 부팅하는데 필요한 정보를 제공

 - 슈퍼 블록 : 파일 시스템 전체에 대한 정보를 제공하며 부트 블록과 아이노드 리스트, 데이터 블록을 연결하는 역할

 - 아이노드 리스트 : 파일 시스템 내의 모든 파일과 디렉터리에 대한 메타데이터를 저장하며 데이터 블록의 위치를 가리킴

 - 데이터 블록 : 실제 파일의 데이터를 저장하는 공간으로 아이노드에서 가리키는 주소를 따라 접근

 

 

아이노드 리스트(inode list) 설명

 

속성 설명
아이노드 번호
(inode number)
   파일 시스템 내에서 파일 또는 디렉터리를 유일하게 식별하는 번호
   (파일 이름은 변경 될 수 있지만, 아이노드 번호는 생성된 이후 변경되지 않음)
파일타입
(file type)
   일반 파일, 디렉터리, 링크 ,특수 파일 등으로 구분되며 파일의 종류를 나타냄
파일모드
(file mode)
   파일에 대한 접근 권한으로 소유자, 그룹, 기타 사용자에 대한 읽기, 쓰기, 실행 권한을 설정함
하드 링크 카운트
(hard link count)
   파일을 가리키는 하드 링크의 수를 나타냄. 하드 링크가 삭제되면 카운트가 감소되며 카운트가 0이 되면
   파일이 삭제됨
소유자
(owner)
   파일의 소유자를 나타내는 사용자 ID
그룹
(group)
   파일이 속한 그룹을 나타내는 그룹 ID
파일크기
(size)
   파일의 크기를 바이트 단위로 나타냄
last change time    inode 정보가 마지막으로 변경된 시간(메타데이터 변경 시)
   소유자, 접근권한 등 inode 정보가 바뀌면 last change time이 변경된다.
last modification time    파일의 내용이 마지막으로 수정된 시간
last access time    파일이 마지막으로 접근된 시간
데이터 블록 포인터    파일의 데이터가 저장된 데이터 블록의 위치를 가리키는 포인터 배열

 

*change time과 modification time은 한글로 이해하면

둘 다 변경으로 생각할 수 있어서 조심하기

 

반응형

댓글