centos6 환경에서 16TB 이상의 파일시스템 생성하기
환경
OS : CentOS-6.10 (6버전 / 64bit)
Disk : /dev/sdb
Size : 17990.5 GB (17990533775360 bytes)
실행시 에러 메세지
mkfs.ext4 /dev/sdb1
mke2fs 1.41.12 (17-May-2010)
mkfs.ext4: Size of device /dev/sdb1 too big to be expressed in 32 bits using a blocksize of 4096.
근거
https://access.redhat.com/articles/rhel-limits
rhel 공식 발표 내용이다..
즉, rhel6(cent6)에서는 16TB 가 한계…
환경 개선을 통해 지원하도록 처리해 보자.
/etc/mke2fs.conf : centos6 원래 상태
ext4 = {
features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize
inode_size = 256
}
/etc/mke2fs.conf : 변경된 상태 “auto_64-bit_support = 1” 추가
ext4 = {
features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize
auto_64-bit_support = 1
inode_size = 256
}
신버전의 e2fsprogs 설치
2019.03.19 기준으로 1.44.5 버전이 최신이었음
wget http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.44.5.tar.gz
tar zxvpf e2fsprogs-1.44.5.tar.gz
cd e2fsprogs-1.44.5
./configure
make
make install
설치된 e2fsprogs 활용
/usr/local/sbin/mkfs.ext4 /dev/sdb1
에러가 없이 잘 된다…
그래서 마운트를 시도해 보면…
이렇게 오류가 발생한다.
# mount /dev/sdb1 /home2
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog – try
dmesg | tail or so
이유
당연히 버전이 다른 (즉, 새로설치한) e2fsprogs 명령을 이용했기 때문인데
[일단 정확한 원인을 못찾음… 릴리즈노트랑 좀 뒤져봐야 하는데.. 그럴필요가 있을까… ㄷ ㄷ ㄷ]
최신버전의 어떤 문제인 것인지…
리눅스 배포본들은 이미 새버전 출시가 많이 되어서, 관련 이슈가 없기 때문에 설치할 필요가 없었던 것인지…
https://sourceforge.net/projects/e2fsprogs/files/e2fsprogs/
사이트에서 확인해보면
1.42.9 버전의 다운로드가 압도적으로 많다… !
그냥
wget http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.42.9.tar.gz
명령을 이용해서 1.42.9 버전을 설치했다.
새로 설치한 버전으로 재생성후 마운트는 문제가 없었다.