강좌
클라우드/리눅스에 관한 강좌입니다.
자격증 분류

리눅스마스터1급 : 리눅스파일시스템의 종류와 특징

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터1: 리눅스파일시스템의 종류와 특징





 

파일 시스템의 종류 및 특징

 

리눅스는 다양한 파일 시스템들을 지원하는데, 예를 들어 다음과 같은 파일 시스템들을 지원한다.

 

 

1) minix

리눅스에서 가장 먼저 사용한 파일 시스템이다.

 

 

 

 

파일 이름은 최대 30문자이고, 파일 시스템당 최대 64메가를 지원하여 기능이나 성능 측면에서 다소 제한이 있다.

2) ext

리눅스 초기에 사용되던 파일 시스템으로 상위 호환성이 없는 ext2의 구버전이다.

 

 

 

 

3) ext2



ext3 파일 시스템이 나오기 전까지 거의 대부분의 리눅스 배포판에서 채택된 파일 시스템이다.

 

 

 

 

256 바이트 길이의 파일 이름, 2 기가바이트(GB)의 단일 파일, 4 테라바이트(TB)의 디스크를 사용할 수 있다.

 

 

 

 

예상치 못한 정전이나 기타 사유로 시스템이 비정상적으로 종료가 되었을 경우에 부팅 시 ext2 파일 시스템 검사 프로그램인 e2fsck를 실행하여 파일 시스템의 일관성 검사를 한다.

 

 

 

 

그렇지만 ext2 파일 시스템의 e2fsck에 의한 검사는 데이터가 많은 파일 시스템의 경우 시간이 오래 걸리고 그 동안 아무 작업도 할 수 없게 된다.

 

 

4) ext3



커널 2.4부터 지원하고 있는 파일 시스템으로 레드햇 리눅스의 경우 7.2 버전부터 ext3 파일 시스템이 적용되었다.

 

 

 

 

ext3ext2 파일 시스템에 저널링 기능을 추가한 저널링 파일 시스템(journaling file system)이다.

 

 

 

 

이 저널링 기능을 이용한 ext3 파일 시스템은 ext2 파일 시스템보다 데이터 신뢰성이 강화되었고 보다 빠른 속도로 작업을 수행할 수 있다.

 

 

 

 

ext3 파일 시스템은 16 테라바이트까지 인식할 수 있다.

 

 

 

 

그렇지만 ext3 파일 시스템은 삭제된 파일의 복구가 용이하지 않았고 기타 여러 가지 개선해야 할 점들이 있었다.

 

 

5) ext4



ext3의 문제점들을 개선하여 개발한 것이 ext4이다.

 

ext4는 파일 시스템 점검 속도가 현저하게 빨라졌고, 파일 복구가 용이해 졌으며, 무엇보다 1 exbibyte(EiB)까지 디스크를 사용할 수 있고 16 tebibytes(TiB)까지 파일을 지원한다

 

 

(그렇지만 16 tebibytes(TiB)를 초과하는 볼륨은 권장되지 않는다). ext4는 커널 2.6.19에 처음으로 ext4의 개발버전이 포함되었고, 20081011일에 ext4의 안정버전이 커널 2.6.28 버전의 소스코드 저장소에 올려 졌고, 20081225일에 ext4 파일 시스템을 포함하는 커널 2.6.28 버전이 발표되었다.

 

 

 

 

이에 따라 ext4는 페도라 9 버전부터 지원되었고 현재 많은 리눅스 시스템에서 이것을 사용하고 있다.

 

 

 

 

 

ext4ext2ext3에 대한 호환성

ext3ext2에 대한 하위 호환성이 있어서 ext3ext2 파일 시스템을 ext4로 마운트하는 것이 가능하다. 

 

이렇게 하면 성능을 조금 향상시킬 수 있는데, ext4의 새 기능 중 새로운 블록 할당 알고리즘과 같은 것은 ext3ext2에서도 사용될 수 있기 때문이다. 

 

 

이에 대해 ext3ext4에 대해 ext4 파일 시스템을 마운트(mount)할 수 있는 부분적인 상위 호환성이 있다. 

 

하지만 ext4 파티션이 ext4의 중요한 새 특징인 Extents를 사용한다면 이것을 ext3로 마운트하는 것은 불가능하다.

 

 

 

 

 

(출처 : http://ko.wikipedia.org/wiki/Ext4)

 

 

 

 

 

 

6) xiafs




파일 이름과 파일 시스템 크기의 한계를 수정한 minix 파일 시스템을 수정한 파일 시스템이지만, 새로운 특징은 없다.

 

 

 

 

예전에 ext2 파일 시스템과 함께 사용되었던 파일 시스템이다.

 

 


7) ReiserFS/ReiserFS v3/Reiser4

 

 

ReiserFS는 저널링 파일 시스템의 일종으로서 안정적인 파일 시스템으로 주목받으며 리눅스에서 ext2 파일 시스템을 대체할 만한 파일 시스템으로 인정받은 바 있었고 SuSE 리눅스의 기본 파일 시스템으로 사용되기도 하였다.

 

 

 

 

그러나 20061012일 이후에 발표된 SuSE 리눅스부터는 이것 대신에 ext3 파일 시스템이 사용되었다.

 

 

 

 

그리고 이후 ReiserFS v3가 발표되어 현재까지 널리 채택되어 사용되고 있다.

 

 

 

 

그리고 Reiser4가 발표되었는데, 오픈소스 개발자들에 의해 개발이 지속되고 있지만 메인라인 리눅스 커널에 포함되지 않았고 결과적으로 현재 많은 리눅스 배포판에서 지원되지 않는다.




8) FAT

MS-DOS 및 윈도우즈 운영체제에서 사용하는 파일 시스템이다.




9) FAT32

FAT 파일 시스템의 32비트 버전으로 윈도우즈 95에 처음 도입되어 최근까지도 사용되고 있다.




10)NTFS

윈도우즈 서버와 데스크탑(XP 이후 버전)에서 사용되는 파일 시스템이다.

 

 

 

 

예전의 리눅스에서는 읽기 전용으로 지원되었지만, 현재는 읽기/쓰기가 가능하다.




11)msdos

리눅스에서 지원하는 것으로 FAT 파일 시스템과 호환된다.

 


12)umsdos

msdos 파일 시스템을 리눅스상에서 긴 파일 이름, 소유자, 접근권한, 링크와 장치 파일들을 지원하도록 확장한 파일 시스템이다.

 

 

 

 

umsdos는 보통의 msdos 파일 시스템이 리눅스 파일 시스템처럼 사용되도록 하기 때문에, 리눅스를 위해 파티션을 나눌 필요를 없앤다.

 

 

13)iso9660


CD-ROM 표준 파일 시스템이다.

 

 

 

 

CD-ROM 표준에 좀 더 긴 파일 이름을 쓸 수 있도록 확장한 록 릿지(rock rdge)가 자동으로 지원된다.

 

 

14)nfs


독립되어 있는 각각의 컴퓨터들의 파일에 서로 쉽게 접근하기 위해 파일 시스템을 상호 공유할 수 있도록 하는 네트워크 파일 시스템(Network File System)이다.

 

 

 

 

15)hpfs

OS/2 파일 시스템이다.

 

 

16)sysv

System V/386, System V/386 파생 시스템, Xenix Coherent의 파일 시스템이다.

 

 

 

 

 

클러스터 파일 시스템(cluster file system)

리눅스는 클러스터링을 위한 클러스터 파일 시스템을 지원한다.

 

 

 

 

이것은 다수의 시스템 사이에 하드 디스크의 파일을 공유할 수 있도록 하며, 이에 따라 클라우드 시스템의 필수적인 요소이기도 하다.

 

 

 

 

이러한 파일 시스템으로서 전통적으로 사용되는 것이 NFS, SMB(윈도우즈와의 공유를 위한 SAMBA의 파일 시스템), CIFS(SMB보다 발전된 네트워크 파일 시스템), CODA(NFS와 비슷한 네트워크 파일 시스템) 등이다.

 

 

 

 

이들은 리눅스 커널에 포함된 기능들이다.

 

 

 

 

이에 대해 여러 기업들이 클러스터링을 위한 파일 시스템을 개발했는데, 예를 들어 RedHat GFS, SGI cXFS, IBM GPFS, IBM SanFS, EMC Highroad, Compaq CFS, Veritas CFS, Oracle OCFS2 등이 있다.

 

 

 

 

 

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,035 명
  • 현재 강좌수 :  35,794 개
  • 현재 접속자 :  165 명