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

mke2fs실무1편: 리눅스 파일시스템을 생성하는 mke2fs 개론

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

mke2fs실무1편: 리눅스 파일시스템을 생성하는 mke2fs 개론

 

 

 

 

 

리눅스에서 파일시스템을 생성하는 작업을 하기 위해서는 mke2fs(또는 mkfs)라는 유틸리티를 사용해야 한다.

 

 

 

즉 mke2fs명령어는 리눅스에서 사용하는 주된 파일시스템 타입인 ext2와 ext3, 그리고 ext4타입의 리눅스 파일시스템을 생성(포맷)하는 명령어이다.

 

 

 

 새로운 디스크를 추가로 장착하였을 경우에는 fdisk로 먼저 파티션을 생성한 다음 mke2fs로 파일시스템을 생성(포맷작업)해야 한다.

 

 

 

이 mke2fs명령어에서 꼭 알아야 하는 것은 파일시스템의 생성(포맷)결과로 설정되는 항목들이다.

 

 

 

즉 mke2fs로 파일시스템을 생성하면 다음과 같은 세부항목들이 파일시스템 내에 생성된다.

 

이 mke2fs명령어에서 꼭 알아야하는 것은 파일시스템의 생성(포맷)결과로 설정되는 항목들이다.

 

 

 

즉 mke2fs로 파일시스템을 생성하면 다음과 같은 세부항목들이 파일시스템내에 생성된다.

 

 

 

 

 

  . Block size 크기

 

  . Fragment size 크기

 

  . inode의 수

 

  . 수퍼유저가 사용할 block의 수(전체 block의 5%를 차지함)

 

  . 첫 번째 데이터블록

 

  . Block group의 수

 

  . 그룹당 블록수

 

  . 그룹당 fragment의 수

 

  . 그룹당 inode의 수

 

 

 

 

한가지 알아두어야 할 것이 있다.

 

 

 

파일시스템을 생성하는 mke2fs명령어에 대한 설정파일에 대한 것이다.

 

 

 

즉 /etc/mke2fs.conf파일은 mke2fs명령어 설정파일이다.

 

 

 

즉 기본적으로 적용할 여러가지 옵션들과 파일시스템의 종류에 따라서 어떤 옵션을 적용하고 또는 적용하지 않을 것인가에 대해서 설정되어있는 파일이다.

 

 

 

다음 예를 보자.

 

[root@RockyLinux01 ~]# cat /etc/mke2fs.conf

[defaults]

        base_features = sparse_super,large_file,filetype,resize_inode,dir_index,ext_attr

        default_mntopts = acl,user_xattr

        enable_periodic_fsck = 0

        blocksize = 4096

        inode_size = 256

        inode_ratio = 16384

 

[fs_types]

        ext3 = {

                features = has_journal

        }

        ext4 = {

                features = has_journal,extent,huge_file,flex_bg,metadata_csum,64bit,dir_nlink,extra_isize

        }

        rhel6_ext4 = {

                features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize

                inode_size = 256

                enable_periodic_fsck = 1

                default_mntopts = ""

        }

        rhel7_ext4 = {

                features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize,64bit

                inode_size = 256

        }

        rhel8_ext4 = {

                features = has_journal,extent,huge_file,flex_bg,metadata_csum,64bit,dir_nlink,extra_isize

                inode_size = 256

        }

        small = {

                blocksize = 1024

                inode_ratio = 4096

        }

        floppy = {

                blocksize = 1024

                inode_ratio = 8192

        }

        big = {

                inode_ratio = 32768

        }

        huge = {

                inode_ratio = 65536

        }

        news = {

                inode_ratio = 4096

        }

        largefile = {

                inode_ratio = 1048576

                blocksize = -1

        }

        largefile4 = {

                inode_ratio = 4194304

                blocksize = -1

        }

        hurd = {

             blocksize = 4096

             inode_size = 128

             warn_y2038_dates = 0

        }

[root@RockyLinux01 ~]#

 

 

 

 

위의 /etc/mke2fs.conf파일의 내용은 mke2fs명령어 사용시 적용할 옵션들에 대하여 설정되어있는 설정파일이다.

 

 

 

아무런 옵션없이 mke2fs를 사용하였을 경우에 어떤 값을 적용할 것인가에 대한 설정이 포함되어 있다.

 

 

 

즉 아무런 옵션없이 mke2fs를 사용하여 특정 파일시스템을 생성하면 이 파일의 맨 앞부분에 있는 [defaults]항목이 기본적으로 적용된다.

 

 

 

 

 

[defaults]

        base_features = sparse_super,large_file,filetype,resize_inode,dir_index,ext_attr

        default_mntopts = acl,user_xattr

        enable_periodic_fsck = 0

        blocksize = 4096

        inode_size = 256

        inode_ratio = 16384

 

즉 ext2타입, blocksize은 4096byte, inode size는 256등이 기본값으로 적용되어 파일시스템이 생성된다.

 

관련자료

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

공지사항


뉴스광장


  • 현재 회원수 :  60,534 명
  • 현재 강좌수 :  37,615 개
  • 현재 접속자 :  108 명