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

리눅스파일시스템강좌 mke2fs 2편

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스파일시스템강좌 mke2fs 2<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

------------                      ---------------------

 

 

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

2 : mke2fs ext2 파일시스템 생성하기

3 : mke2fs ext3타입의 파일시스템 생성하기

4 : 블록크기를 지정하여 새로운 파일시스템생성하기

5 : mke2fs로 파일시스템생성하기 전에 배드블록(bad block) 검사하기

6 : mke2fs로 파일시스템 생성시 프레그먼트(Fragment)크기를 지정하기

7 : mke2fs로 파일시스템 생성시 아이노드 당 바이트수를 지정하기

8 : 수퍼유저용으로 예약해둘 블록의 퍼센트를 지정하여 파일시스템 생성하기

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ㅇ 제작자 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><?xml:namespace prefix = st2 ns = "urn:schemas:contacts" />박성수

 

ㅇ 본강좌의 자세한 정보 : http://www.superuser.co.kr/linuxcommandbible/

 

 

 

 

 

 

 

 

5 : mke2fs로 파일시스템생성하기 전에 배드블록(bad block) 검사하기

 

배드블록(Bad Block)은 디스크에 있어서 치명적인 장애를 유발할 수 있는 결함요소입니다.

또한 디스크는 영구적인 부품이 아니며 일종의 소모품이므로 1~5년정도의 수명을 가지고 있습니다.

 

필자의 경우 하드디스크는 최대 2년이상 사용하는 것은 가능한 자제하고 있습니다. 물론 이 하드디스크가 서버용도로 사용된다는 가정하에서 2년정보로 추정한다는 의미입니다.  , 필자는 서버용도로 사용되고 있는 하드디스크의 평균수명이 2년이상이 되지 않는다라고 생각합니다. 

 

디스크의 평균수명에 대해서는 많은 의견들이 있지만 중요한 것은 주기적인 점검을 통하여 배드블록이 존재하는가를 확인하고 존재한다면 빠른 시일내에 교체를 해야한다는 것입니다.

 

배드블록의 자세한 설명과 점검방법에 대해서는 이 책의 badblocks명령어편을 참조하시고 여기서는 mke2fs로 파일시스템을 생성하는 과정에서 배드블록을 점검하는 방법에 대해서만 설명합니다.

 

mke2fs로 파일시스템을 생성할 때에 -c옵션을 사용하시면 디스크의 배드블록을 먼저 검검한 후에 파일시스템을 생성합니다.

 

아래의 예는 /dev/hdb5에 대한 배드블록을 점검한 후에 ext2파일시스템을 생성하는 예입니다.

 

[root@file root]# mke2fs -c /dev/hdb5

mke2fs 1.32 (09-Nov-2002)

Filesystem label=

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

34136 inodes, 136521 blocks

6826 blocks (5.00%) reserved for the super user

First data block=1

17 block groups

8192 blocks per group, 8192 fragments per group

2008 inodes per group

Superblock backups stored on blocks:

        8193, 24577, 40961, 57345, 73729

 

Checking for bad blocks (read-only test): done                        

Writing inode tables: done                            

Writing superblocks and filesystem accounting information: done

 

This filesystem will be automatically checked every 32 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

[root@file root]#

 

, 위의 예와같이 특정 디스크에서 파일시스템을 생성할 때에 배드블록을 점검하는 것은 디스크장애를 사전에 예방하는 현명한 방법입니다.

 

 

 

6 : mke2fs로 파일시스템 생성시 프레그먼트(Fragment)크기를 지정하기

 

mke2fs에 별도의 옵션이 주어지지 않는다면 프레그먼트(Fragment)의 크기를 자동으로 생성합니다.  파일시스템 생성시에 프레그먼트(Fragment)의 크기를 직접 지정하려면 -f옵션을  사용합니다.

 

하지만 이 옵션을 사용하시는 것보다는 자동으로 설정하도록 하는 것이 안정성면에서 효율적일 수 있으므로 꼭 필요한 경우가 아니면 이 옵션은 사용하지 마십시요.

 

[root@file root]# mke2fs -j -f 4096 /dev/hdb1

mke2fs 1.32 (09-Nov-2002)

warning: 128 blocks unused.

 

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

771552 inodes, 1540096 blocks

77011 blocks (5.00%) reserved for the super user

First data block=0

47 block groups

32768 blocks per group, 32768 fragments per group

16416 inodes per group

Superblock backups stored on blocks:

        32768, 98304, 163840, 229376, 294912, 819200, 884736

 

Writing inode tables: done                           

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

 

This filesystem will be automatically checked every 22 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

[root@file root]#

 

위의 예는 mke2fs명령어로 /dev/hdb1파일시스템을 ext3타입으로 생성하면서 프레그먼트(Fragment)사이즈를 4096으로 지정한 것입니다.

 

 

 

7 : mke2fs로 파일시스템 생성시 아이노드 당 바이트수를 지정하기

 

mke2fs -i라는 옵션을 이용하여 아이노드 당 바이트수(bytes-per-inode)를 지정하여 파일시스템을 생성할 수 있습니다.  이때 주의하실 것은 -i옵션으로 주어지는 값은 최소 1024이상은 되어야한다는 것입니다.

 

-i옵션없이 그냥 mke2fs가 사용되면 기본값으로 4096이 주어지게 됩니다.

 

[root@file root]# mke2fs -i 4096 /dev/hdb1

mke2fs 1.32 (09-Nov-2002)

warning: 128 blocks unused.

 

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

1540096 inodes, 1540096 blocks

77011 blocks (5.00%) reserved for the super user

First data block=0

47 block groups

32768 blocks per group, 32768 fragments per group

32768 inodes per group

Superblock backups stored on blocks:

        32768, 98304, 163840, 229376, 294912, 819200, 884736

 

Writing inode tables: done                           

Writing superblocks and filesystem accounting information: done

 

This filesystem will be automatically checked every 35 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

[root@file root]#

 

위의 예는 mke2fs명령어로 /dev/hdb1파일시스템을 생성하면서 아이노드당 바이트수(bytes per inode) 4096으로 지정한 것입니다.

 

 

 

8 : 수퍼유저용으로 예약해둘 블록의 퍼센트를 지정하여 파일시스템 생성하기

 

mke2fs로 파일시스템을 생성할 때에 전체 용량의 5%의 블록은 수퍼유저(root)가 사용할 예비블록으로 남겨두게 됩니다.  , 별도의 지정없이 파일시스템을 생성하면 5%로 기본지정이 되지만 이 예비블록용량의 %를 별도로 지정하고자 한다면 다음과 같이 -m옵션을 사용하면 됩니다.

 

다음의 예는 ext3파일시스템(-j)을 생성하면서 수퍼유저(root)의 예비블록으로 20%를 남겨두는 예입니다.

 

[root@file root]# mke2fs -j -m 20 /dev/hdb1

mke2fs 1.32 (09-Nov-2002)

warning: 128 blocks unused.

 

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

771552 inodes, 1540096 blocks

308044 blocks (20.00%) reserved for the super user

First data block=0

47 block groups

32768 blocks per group, 32768 fragments per group

16416 inodes per group

Superblock backups stored on blocks:

        32768, 98304, 163840, 229376, 294912, 819200, 884736

 

Writing inode tables: done                           

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

 

This filesystem will be automatically checked every 24 mounts or

180 days, whichever comes first.  Use tune2fs -c or -i to override.

[root@file root]#

 

위의 예와같이 수퍼유저(root)가 사용할 예비블록으로 /dev/hdb1파일시스템의 전체용량중 20%를 남겨두면 일반 데이터 저장용으로는 20% 예비블록은 사용할 수 없습니다.

 

[참고사항]

이번 예와같이 생성한 특정 파일시스템의 예비블록을 특정 사용자에게 사용할 수 있도록 설정하는 방법이 있습니다. , tune2fs명령어로 특정 파일시스템의 예비블록사용을 특정 사용자 또는 특정 그룹사용자들에게 허용할 수 있습니다. 이에 대한 설명은 이 책의 tune2fs명령어편을 참조하시기 바랍니다.

 

 

mkfs에서도 말씀드린대로 mke2fs와 함께 꼭 알아두셔야하는 것은 다음과 같습니다.

, 디스크의 추가장착시에 어떤 작업이 순서대로 이루어지는가를 알아두셔야 한다는 것입니다.

       - 디스크 추가장착

       - fdisk로 파티션 생성작업

       - mkfs또는 mke2fs로 파일시스템 생성작업(포맷작업)

       - mount작업

       - 부팅시 자동마운트를 위하여 /etc/fstab에 설정.

 

필요한 작업들은 모두 각 항목의 명령어편을 참조하시고, 다시한번 강조하고 싶은 것은 mke2fs가 무엇을 하는 명령어이며, 결과로 생성되는 것들과 작업이후에 어떤 작업을 해야하는가에 대해 분명히 알아야한다는 점입니다.

 

, 필자가 단순히 mke2fs의 사용법만을 설명한다면 이것은 단순한 명령어 사용법만을 설명하는 것이 되지만 mke2fs를 왜 사용하며, mke2fs의 작업결과로 어떤 것들이 생성되며 이후 작업해야하는 것들이 어떤것인가를 실무적인 관점에서 설명한 것입니다. 

 

필자의 이와 같은 잔소리가 여러분들의 실무능력향상에 작은 보탬이 된다면 수백번의 잔소리도 마다하지 않을 것입니다.

 

 

 

ㅇ 제작자 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 박성수

 

ㅇ 본강좌의 자세한 정보 : http://www.superuser.co.kr/linuxcommandbible/

 

 

 

관련자료

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

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  82 명