File System

2016. 5. 22. 14:12디지털포렌식/File System 이해

파일을 복구하기 위한 정보가 필요할 것이다.

그래서 File System 이 어떻게 적용이 되는지 파악하고 있으면 충분히 삭제된 데이터를 복구할 수 있다. 물론 삭제된 데이터라고 해서 전부다 복구가 가능한 것은 아니고 지워지지 얼마 안된 파일은 복구가 가능하다.

만약 지워진지 오래된 파일과 같은 경우 다른 데이터를 만들었을 때 덮어쓰기 됐을 확률이 높을 것인데 그런 상황이라면 복구가 거의 불가능하고, 그게 아니라면 (덮어씌어지지 않았다면) 충분히 복구가 가능한 그런 자료들이 많이 존재할 수 있다.

그래서 삭제되거나 손상된 그러한 파일들의 복구를 위해서 File System 과 관련된 정보가 필요하다. 


Windows 에서 가장 많이 사용되는 File System 은 NTFS File System 이다. 그리고 NTFS 이전에 썻던게 FAT File System 이고, UNIX 는 EXT File System 을 사용한다.


File System ?

File System 은 파일을 잘 관리하기 위한 시스템이다. 파일은 우리나라말로 번역하면 서류다.

서류를 잘 관리하기 위한 시스템이라고도 할 수 있다.

File System 을 도서관에 있는 도서관 관리시스템을 생각하면 된다.


도서관 건물이 있다. 그 건물은 도서관을 지으려고 기본적으로 층으로 나눠져 있을 것이다.

이 각각의 층으로 나눠진 부분을 (1층, 2층, 3층) 물리적인 HARD DISK 로 이해하면 된다. 그리고 층 하나를 통째로 쓸 순 있으나 거의 쓰지 않고 각각의 분야로 나누어 분류를 한다. 이 분류된 공간이 파티션이 된다.

그리고 층 하나를 통째로 사용한다면 그 층 전체가 하나의 파티션이 된다라고 생각하면 된다.


도서관 건물이 있는데 이 건물을 그대로 사용하는게 아니라 어떤 층을 사용하겠다라고 하게 되면 그 층을 사용하기 위해 어떤 구조가 필요할 것이고, 또는 몇 개의 공간으로 나누어 사용하겠다라면 어떠한 공간으로 나누기 위한 작업이 필요할 것인데, 그렇게 진행되는 작업이 파티션 나누는 작업이 되는 것이다.


파티션이 나누어 졌다면, 즉, 도서관 건물의 층에 공간이 나누어 졌다면 거기다가 책장을 넣어두고 책을 보관하는데 책이 들어오는 순서대로 꽂히는게 아닌 규칙을 적용하여 보관한다.

즉, 분야별로 나누어주고 책에다가 번호를 붙여 순서대로 꽂아주는 식으로 책을 관리한다.


또 책을 누가 대여를 한다면 어떻게 해줄지, 누군가 책을 도서관에서 읽고 그 자리에서 반납을 한다면 그걸 어떻게 처리할지, 대여가 된 책이 반납이 되면 어떻게 처리할지에 대한 시스템이 필요한데 그 시스템이 도서관 관리시스템이다. 이러한 시스템이 없으면 도서관에서 책을 관리할 수가 없다.

도서관 관리시스템 자체가 없다면 책을 찾아달라는 요청시 책을 못 찾는다. 그래서 그런 도서관을 관리하는 시스템이 필요한데 그러한 시스템이 파티션에 설치되는게 File System 이다.


즉, 파일이 새로 만들어지면 어떻게 만들것이냐? 수정이 되면 어떻게 처리할 것이며, 삭제가 되면 어떻게 처리할 것이고 복사,이동이 되면 어떻게 처리가 될 것이냐? 에 대한 이 전체 시스템을 File System 이라고 한다.


물리적인 HARD DISK 가 있으면 논리적으로 먼저 분할한다. 하나의 HARD DISK 그대로 분할할 수 있고, 여러개 공간으로 분할할 수 있다. 나누고 나서 File System 이라는걸 탑재 한다. File System 설치하는 과정을 File System 탑재라고 하고, File System 탑재 과정을 FORMAT 이라고 한다.


개발된 File System 마다 고유의 관리 방법이 있을 것이다. FAT, NTFS, EXT, 기타 등등 여러가지 File System 은 그 File System 에 적용시켜 놓은 방법들을 이용해서 파일을 관리할 것이다.


File System 중에 제일 불안했던게 바로 FAT File System 이다. 예전에 FAT File System 때문에 BLUE SCREEN 이 많이 떳었다. 왜냐하면 FAT 는 안정화 시스템이 없어서 신뢰성이 떨어진다. 복구 기능 자체가 없었다.

요즘 사용하는 NTFS File System 이나 EXT3 이상의 File System 같은 경우 복구 기능을 자체적으로 적용이 되어 있다.


파일 삭제, 복구, 이동, 수정 작업을 하는데 만약 문제가 생기면 복원지점이라는 것을 기억하고 있다가 기억된 그 상태로 되돌려준다. 즉, File System 자체에서 복구를 할 수 있는 기능을 가지고 있는데 FAT File System 은 이런 기능이 없다. FAT File System 을 디자인 했을 때부터 그런걸 고려하지 않고 개발을 했다. PC 용도로, 즉 개인 컴퓨터 용도로 디자인 된 File System 이기 때문에 안정성 보다는 초반에 File System 을 만들어서 어떻게 관리를 하도록 하자 라는 취지로 개발된게 FAT 라서 추가적인 기능들이 부족한 File System 이다.

그래서 상당히 많은 파일을 차지하는 환경이나 DISK 를 관리하는 환경에서는 부적합한 File System 이 FAT File System 이다.


요즘은 호환성 때문에 사용을 한다.

FAT File System 은 어떤 운영체제든 간에 왠만하면 전부다 호환이 된다. 만약 여러가지 운영체제를 사용한다면 FAT File System 을 이용해서 USB, 외장하드 이런것들을 FAT 로 쓰는 경우가 간혹 있다.

이 경우는 그냥 윈도(개인적 PC 용도) 만 쓸 거시다. 구지 FAT 를 쓸 필요가 없다.

안전성면에서 훨씬 좋은 NTFA File System 을 사용하는게 나을 것이다.


 

FAT File System 은 빌 게이츠가 창안을 했다. Windows 의 ㄷ표적인 File System 이고 가장 최근에 FAT32 까지 사용을 했다.


HPFS File System 이라는 IBM 에 적용이 되어 있던 File System 이 있는데 이 File System 에서 발전된 게 NTFS File System 이다.

NTFS File System 은 서버 환경을 고려해서 디자인된 File System 이다.

그래서 NTFS 는 (복원 기능, 복구 기능 이 기능들을 저널링 이라고 한다.) 저널링 기능, 파일 압축 기능, 암호화 기능, 할당량 설정 기능, 권한 설정, ACL 이런 기능들이 추가가 되었다.

NTFS File System 은 서버환경에 필요한 기능들로 설계되었다. 접근제어 기능이 필요하다. PC 는 혼자 사용하므로 접근제어가 필요 없다. 다른 사람이 내 컴퓨터를 사용하지 못하게 하면 되며 나혼자 사용하기 때문에 할당량이 필요 없고, 암호, 압축 이런 기능이 필요 없지만 서버는 여러명의 사용자가 사용하기 때문에 이러한 기능들이 추가가 되어야지만 서비스를 제대로 해줄 수 있을 것이다.


 

UFS, Ext, JFFS2, YAFFS, ISO 9660 등 다양한 File System 이 사용되고 있다.

'디지털포렌식 > File System 이해' 카테고리의 다른 글

Partition  (0) 2016.05.22
하드디스크 구조  (0) 2016.05.22
파일시스템 요소들  (0) 2016.01.24
파일시스템 분류  (0) 2016.01.24
파일시스템 소개  (0) 2016.01.24