본문 바로가기
데이터복구정보/복구관련정보

파일시스템의 구성요소

by CBL 2016. 8. 24.

파일시스템의 구성요소

 

파일시스템을 구성하는 요소는 어떤것들이 있는지 알아보자
반드시 필요한 요소들과 부가적인 요소들의 특징과 역할을 살펴보자.

 

 

<기본요소>

클러스터
운영체제가 하드디스크에 데이터를 읽고 쓰는 기본적인 단위로
파일시스템에 따라 크기가 고정 되기도 하고, OS가 파일시스템 생성시 클러스터의
크기를 조절하기도 한다.
클러스터의 크기에 따라 공간의 낭비나 효율이 달라진다. 예를 들자면
클러스터 크기를 4KB로 설정했는데, 1KB미만의 데이터만 게속 쓸 경우에는
3KB의 낭비공간이 생기게 된다. 공간적인 낭비가 있으나 읽어들이는 속도가
빠르다. 클러스터의 크기가 1KB라면 10번의 I/O가 발생되어야 되지만
클러스터의 크기가 4KB라면 3번의 I/O로 파일을 전부 읽을수 있기 때문이다.


파일
파일은 속성을 기록하는 메타 데이터 영역과 실제 데이터를 기록하는 데이터 영역으로
나눌수 있다. 메타 데이터는 파일시스템에서 파일을 관리할 수 있는 정보 자체를 말하며
파일의 속성은 물론 실제 데이터를 기록한 위치를 찾아가기 위한 정보를 포함한다.
모든 파일시스템은 이러한 메타정보를 저장했다가 OS가 정보를 요청하면 해당파일을
찾아서 정보를 조합하여 넘겨주면 사용자가 파일을 열게 되는 것이다.


디렉터리
파일의 계층화와 그룹화를 위해 도입한 개념이 디렉터리이다.
상, 하위 개념의 디렉터리와 파일들은 관리에 있어서 많은 이점이
있다. 파일과 디렉터리는 크게 다른점이 없다.


<부가요소>

소유권
한대의 컴퓨터에 여러명의 사용자가 접근하려면 권한이 있어야 한다.
이러한 권한부여는 파일시스템에 따라 다르며,
FAT 파일시스템은 소유권 관리를 할수 없으므로 NTFS, Ext2 등이
서버형 컴퓨터를 위한 파일시스템으로 사용된다.
소유권 권한 부여를 통해 사용자가 파일에 허가 없이 접근하는 것을 막을 수 있다.


동기화
멀티태스킹 시대에 하나의 CPU로 여러 작업을 동시에 진행할때
동기화는 매우 중요하다. 하나의 파일에 여러 프로세스가 동시 접근해서
작업시 해당 파일에 락을 걸어주고, 적절한 시점에 해제하는 동기화가 진행된다.


일관성 체크와 저널링
예기치 못한 상황에서 시스템이 멈추거나 문제가 일어나는 경우를 대비하여
일관성이 깨지는 것을 최소화하도록 여러 방법이 도입되어야 한다.
메타데이터를 먼저 쓰고 파일 데이터를 나중에 쓰는 도중에 시스템이 중단되면
파일이 정상적으로 보이만 막상 데이터를 열면 쓰레기 데이터만 들어 있을수 있다.
파일을 먿저쓰고 메타데이터를 나중에 쓰는 도중 시스템이 중단되면 메타데이터가
나중에 쓰여지므로 파일리스트에 나오지 않으며 해당 데이터가 쓰여진 곳도 비어 있는
영역이므로 나중에 다른 데이터가 쓰여지므로 문제가 없다.
또한 파일시스템에 문제가 발생되었다고 판단되는 경우 별도의 유틸리티가 요구된다.
대표적으로 체크디스크(CHKDSK)나 e2fsck 등의 프로그램이다.
이러한 프로그램은 메타데이터에 문제가 생기면 수정한다.
저널링은 일관성 체크를 위해 사용되는 방법으로 메타데이터의 로그를 통해
파일시스템을 체크하므로 빠른시간에 해결할수 있다.


보안
데이터를 다루는 시스템에서 매우 중요한 사항이 보안이다.
서버급 OS에서는 파일시스템의 암호화 기능을 적용할 수 있다.
메타 데이터만을 암호화하거나 데이터 영역까지 압축을 통한
암호화를 진행하기도 한다. 암호화는 상황에 따라 적절한 범위를
선택하여 진행하게 된다.

 

[참고서적: 파일시스템의 원리와 실습]

 

댓글