JUST WRITE

120TB Disk EXT4로 포맷 본문

OS/Linux

120TB Disk EXT4로 포맷

천재보단범재 2023. 1. 18. 00:12

120TB Disk Ext4로 포맷

11개의 Disk를 RAID5로 묶여 있는 120TB Disk를 EXT4로 포맷을 시켜야 되는 미션이 생겼다.

대용량에 RAID5로 구성되어 있는 Disk 포맷은 처음이라 난감했었다.

이번 포스팅에서 한번 정리해보려 한다.

Disk 확인

해당 Disk는 xfs 타입이었다.

RAID 구성은 아래 명령어로 확인할 수 있다.

/dev/md2가 sdm1 ~ sdc1까지 총 11개 Disk를 RAID5로 묶인 것을 알 수 있다.

# RAID 구성정보들 확인
$ cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
...

md2 : active raid5 sdm1[11] sdl1[9] sdk1[8] sdj1[7] sdi1[6] sdh1[5] sdg1[4] sdf1[3] sde1[2] sdd1[1] sdc1[0]
      117187512320 blocks super 1.2 level 5, 512k chunk, algorithm 2 [11/11] [UUUUUUUUUUU]
      bitmap: 0/88 pages [0KB], 65536KB chunk

...

# 해당 Disk 상세 정보 확인
$ mdadm --detail /dev/md2
/dev/md2:
           Version : ***
     Creation Time : ************* 2022
        Raid Level : raid5
        Array Size : 117187512320 (109.14 TiB 120.00 TB)
     Used Dev Size : 11718751232 (10.91 TiB 12.00 TB)
      Raid Devices : 11
     Total Devices : 11
       Persistence : Superblock is persistent

     Intent Bitmap : Internal

       Update Time : *** 2023
             State : clean
    Active Devices : 11
   Working Devices : 11
    Failed Devices : 0
     Spare Devices : 0

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : bitmap

              Name : ***
              UUID : ***
            Events : ***

    Number   Major   Minor   RaidDevice State
       *       8       *        0      active sync   /dev/sdc1
       *       8       *        1      active sync   /dev/sdd1
       *       8       *        2      active sync   /dev/sde1
       *       8       *        3      active sync   /dev/sdf1
       *       8       *        4      active sync   /dev/sdg1
       *       8       *        5      active sync   /dev/sdh1
       *       8       *        6      active sync   /dev/sdi1
       *       8       *        7      active sync   /dev/sdj1
       *       8       *        8      active sync   /dev/sdk1
       *       8       *        9      active sync   /dev/sdl1
       *       8       *       10      active sync   /dev/sdm1

* 일부 중요정보는 *로 표시하였습니다.

Mount 해제

포맷 전에 해당 Disk가 mount가 되어 있는 지 확인해야 한다.

mount가 되어 있으면 해제해줘야 한다.

umount 명령어로 바로 가능하지만 보통 /etc/fstab에서 mount를 관리한다./etc/fstab에서 확인 후 mount 해제한다.

# 해당 부분 주석 처리
$ vi /etc/fstab

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/md1 during curtin installation
/dev/disk/by-id*** / ext4 defaults 0 1
# /dev/disk/by-id/*** none swap sw 0 0
# /boot/efi was on /dev/sda1 during curtin installation
/dev/disk/by-uuid/*** /boot/efi vfat defaults 0 1
# /swap.img     none    swap    sw      0       0
#/dev/disk/by-id/*** /u01 xfs defaults,nofail 0 0
/dev/disk/by-id/***/u02 xfs defaults,nofail 0 0
/dev/disk/by-id/*** /u03 xfs defaults,nofail 0 0

# fstab 수정 적용
$ mount -a

* 일부 중요정보는 *로 표시하였습니다.

Partition 생성

해당 Disk를 mount를 하면 Partition을 생성한다.

대용량 Disk를 한번에 ext4로 포맷할 수가 없다.

64bit 주소체계를 가진 GPT(GUID Partition Table)를 생성한다.

GPT는 다음에 기회가 되면 따로 정리해서 포스팅하려 한다.

parted 명령어로 작업을 진행한다.

# parted 명령어로 해당 Disk partition 설정
$ parted /dev/md2

GNU Parted 3.4
Using /dev/md2
Welcome to GNU Parted! Type 'help' to view a list of commands.

# 해당 disk를 gpt로 변경
$ (parted) mklabel gpt

Warning: The existing disk label on /dev/md2 will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? y

# loop partition(통짜 partition) 만들기
(parted) mkpart primary 0% 100%

# 해당 Disk parttion 정보 확인
(parted) p
Model: Linux Software RAID Array (md)
Disk /dev/***: 120TB
Sector size (logical/physical): 4096B/4096B
Partition Table: gpt
Disk Flags:

Number  Start   End    Size   File system  Name     Flags
 1      5243kB  120TB  120TB               primary

Ext4로 포맷

mount 해제, GPT Partition 생성 등 사전 작업이 끝났다.

이제 해당 Disk를 Ext4로 포맷한다.

아래 mkfs 명령어로 가능하다.

$ mkfs.ext4 /dev/md2

mke2fs 1.46.5 (30-Dec-2021)
Found a gpt partition table in /dev/md2
Proceed anyway? (y,N) y
Creating filesystem with 29296878080 4k blocks and 1831055360 inodes
Filesystem UUID: ***
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
        102400000, 214990848, 512000000, 550731776, 644972544, 1934917632,
        2560000000, 3855122432, 5804752896, 12800000000, 17414258688,
        26985857024

Allocating group tables: done
Writing inode tables: done
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information:

mkfs 명령어를 default 설정을 해도 무리 없이 진행되었다.

아래 참고사이트에 보면 적절한 설정값을 줘서 하는 경우도 있으니 참고하길 바란다.

Block size, stride size, stride width을 계산해서 mkfs.ext4를 진행하는 글이다.

[참고사이트]

728x90
반응형

'OS > Linux' 카테고리의 다른 글

NTP 설정  (0) 2023.02.19
RAID Disk 구성 - Spare Disk  (0) 2023.02.12
DNS 체크  (0) 2023.01.31
SFTP 전용 유저 생성  (0) 2023.01.19
Comments