리눅스/공통

리눅스에서 USB 등 디스크 포맷하기

씨실과 날실 2020. 8. 25. 09:00

[관련 게시물]



리눅스에서 디스크 포맷 및 파일 시스템 구성

USB 등 디스크 포맷 및 파일 시스템 구성

리눅스도 OS인 만큼 디스크 포맷을 지원합니다. 사용하고자 하는 파일시스템 형식에 따라 각기 다른 명령을 사용해주어야 합니다.


리눅스에서 USB를 FAT 32로 포맷

$ sudo mkfs.fat -F 32 -n [사용할 볼륨 레이블 명] -v 장치명


-F : 포맷 유형 FAT32/FAT16 설정

-n : 볼륨 레이블명 설정

-v : 자세한작업 수행 정보 출력


study@study-VirtualBox:~$ sudo mkfs.fat -F 32 -n USB -v /dev/sdb1
mkfs.fat 4.1 (2017-01-24)
/dev/sdb1 has 64 heads and 32 sectors per track,
hidden sectors 0x0800;
logical sector size is 512,
using 0xf8 media descriptor, with 30525327 sectors;
drive number 0x80;
filesystem has 2 32-bit FATs and 16 sectors per cluster.
FAT size is 14896 sectors, and provides 1905968 clusters.
There are 32 reserved sectors.
Volume ID is c9fa570c, volume label USB        .
study@study-VirtualBox:~$ 

리눅스에서 USB를 NTFS로 포맷

$ sudo mkntfs -f -L [사용할 볼륨 레이블 명] -v 장치명


-f : 빠른 포맷(= --fast) 동일한 기능 옵션으로 -Q(= --quick)를 사용 할 수 있음

-L : 볼륨 레이블명 설정(= --label)

-v : 자세한작업 수행 정보 출력(= --verbose)


study@study-VirtualBox:~$ sudo mkntfs -f -L USB -v /dev/sdb1
Cluster size has been automatically set to 4096 bytes.
Creating NTFS volume structures.
Creating root directory (mft record 5)
Creating $MFT (mft record 0)
Creating $MFTMirr (mft record 1)
Creating $LogFile (mft record 2)
Creating $AttrDef (mft record 4)
Creating $Bitmap (mft record 6)
Creating $Boot (mft record 7)
Creating backup boot sector.
Creating $Volume (mft record 3)
Creating $BadClus (mft record 8)
Creating $Secure (mft record 9)
Creating $UpCase (mft record 0xa)
Creating $Extend (mft record 11)
Creating system file (mft record 0xc)
Creating system file (mft record 0xd)
Creating system file (mft record 0xe)
Creating system file (mft record 0xf)
Creating $Quota (mft record 24)
Creating $ObjId (mft record 25)
Creating $Reparse (mft record 26)
Syncing root directory index record.
Syncing $Bitmap.
Syncing $MFT.
Updating $MFTMirr.
Syncing device.
mkntfs completed successfully. Have a nice day.
study@study-VirtualBox:~$ 


리눅스에서 USB를 ext4로 포맷

$ sudo mke2fs -t ext4 -L [사용할 볼륨 레이블 명] -v 장치명


-t : 포맷 유형 설정

-L : 볼륨 레이블명 설정(= --label)

-v : 자세한작업 수행 정보 출력(= --verbose)


study@study-VirtualBox:~$ sudo mke2fs -t ext4 -L USB -v /dev/sdb1
mke2fs 1.45.5 (07-Jan-2020)
/dev/sdb1 contains a ntfs file system labelled 'USB'
Proceed anyway? (y,N) y
fs_types for mke2fs.conf resolution: 'ext4'
Filesystem label=USB
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
954720 inodes, 3815665 blocks
190783 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2151677952
117 block groups
32768 blocks per group, 32768 fragments per group
8160 inodes per group
Filesystem UUID: 7c797ab9-c784-40f0-993b-91da5f9e5bea
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

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

study@study-VirtualBox:~$ 



파일 시스템 생성(= 포맷) 명령어

study@study-VirtualBox:~$ ls -al /usr/sbin

- 생략 - 

lrwxrwxrwx  1 root root         8  6월 29 13:28 mkdosfs -> mkfs.fat
-rwxr-xr-x  1 root root    137848  2월 14 15:08 mke2fs
-rwxr-xr-x  1 root root     14568  4월  3 00:29 mkfs
-rwxr-xr-x  1 root root     35048  4월  3 00:29 mkfs.bfs
-rwxr-xr-x  1 root root     43168  4월  3 00:29 mkfs.cramfs
lrwxrwxrwx  1 root root         6  6월 29 13:28 mkfs.ext2 -> mke2fs
lrwxrwxrwx  1 root root         6  6월 29 13:28 mkfs.ext3 -> mke2fs
lrwxrwxrwx  1 root root         6  6월 29 13:28 mkfs.ext4 -> mke2fs
-rwxr-xr-x  1 root root     35328  5월 13  2018 mkfs.fat
-rwxr-xr-x  1 root root    108784  4월  3 00:29 mkfs.minix
lrwxrwxrwx  1 root root         8  6월 29 13:28 mkfs.msdos -> mkfs.fat
lrwxrwxrwx  1 root root         6  6월 29 13:28 mkfs.ntfs -> mkntfs
lrwxrwxrwx  1 root root         8  6월 29 13:28 mkfs.vfat -> mkfs.fat
-rwxr-xr-x  1 root root     22704 12월 18  2019 mkhomedir_helper
-rwxr-xr-x  1 root root     11792  5월 27 23:52 mkinitramfs
-rwxr-xr-x  1 root root     14648  2월 14 15:08 mklost+found
-rwxr-xr-x  1 root root     88176  5월  3  2019 mkntfs
-rwxr-xr-x  1 root root    108784  4월  3 00:29 mkswap

- 생략 -

 study@study-VirtualBox:~$

위에서 보듯 몇몇 구식 명령어는 새로운 명령어로 대체되었음을 알 수 있습니다.

mkdosfs → mkfs.fat

mkfs.msdos → mkfs.fat

mkfs.vfat → mkfs.fat

mkfs.ntfs → mkntfs

mkfs.ext2 → mke2fs

mkfs.ext3 → mke2fs

mkfs.ext4 → mke2fs





각 포맷(파일 시스템 구성) 프로그램별 전체 옵션

mkfs.fat

-a

클러스터 크리를 기준으로 한 데이터 구조 정렬을 비활성화하여 RAID, 플래시 미디어 또는 대형 섹터 하드 디스크 등의 성능을 저하하는 대신 스토리지의 추가 클러스터를 확보합니다.


-A

MS-DOS 파일 시스템의 Atari 변형을 사용합니다. 단, Atari에서 mkfs.fat를 실행하면 이 옵션이 Atari 형식을 해제하는 기본 설정입니다.


-b [백업 섹터]

FAT32의 백업 부트 섹터 위치를 선택합니다. 기본값은 예약된 섹터 수에 따라 다르지만 일반적으로 섹터 6입니다..


-c

파일 시스템을 만들기 전에 장치에 불량 블록이 있는지 검사합니다.


-C

명령줄에서 장치(Device)로 지정된 파일을 생성하고 생성될 파일 시스템을 여기에 작성합니다. 이 옵션을 사용하려면 블록 카운트를 지정해주어야 합니다.


-D [드라이브 번호]

FAT 부트 섹터에 저장할 BIOS 드라이브 번호를 지정합니다.

이 값은 일반적으로 하드 디스크의 경우 0x80이고 플로피 에뮬레이션에 사용할 플로피 장치 또는 파티션의 경우 0x00입니다.


-f FATS [숫자]

파일 시스템의 파일 할당 테이블 수를 지정합니다. 기본값은 2.


-F [FAT 크기]

사용되는 파일 할당 테이블 유형 (12, 16 또는 32비트)을 지정합니다. 미지정 시, 파일 시스템 크기에 맞춰 더 적합한 것을 자동으로 선택합니다.


-h [숨김 섹터 수]

볼륨에서 숨겨진 섹터 수를 선택합니다.


-i [볼륨 ID]

새로 생성된 파일 시스템의 볼륨 ID를 설정합니다. VOLUME-ID는 32비트 16 진수입니다 (예 : 2e24ec82).
기본값은 파일 시스템 생성 시각에 따라 달라지는 숫자입니다.


-I (i의 대문자)

디스크 전체를 대상으로 파일시스템을 생성합니다. 그러나 디스크 장치가 여러 파티션으로 분할되어 있는 경우가 많으므로 전체 장치에 파일 시스템을 만들 수 없을 수 있습니다.


-l(L의 소문자) [파일 이름]

지정한 파일에서 bad 블록 목록을 읽습니다.


-m [메시지 파일]

사용자가 운영 체제를 제대로 설치하지 않고 이  파일 시스템을 부팅하려고 할 때 받는 메시지를 설정합니다.


-M [FAT 미디어 유형]

FAT 부트 섹터에 저장할 미디어 유형을 지정합니다. 일반적으로 하드 디스크의 경우 0xF8이고 플로피 에뮬레이션에 사용할 플로피 또는 파티션의 경우 0xF0 또는 0xF9에서 0xFF까지의 값입니다..


-n [볼륨 이름]

파일 시스템의 볼륨 이름 (레이블)을 설정합니다. 볼륨 이름은 최대 11자까지 가능합니다. 기본적으로는 레이블이 설정되어 있지 않습니다.


-r [루트 디렉터리 항목 수]

루트 디렉토리에서 사용 가능한 항목 수를 선택합니다.. 기본값은 플로피의 경우 112 또는 224이고 하드 디스크의 경우 512입니다..


-R [예약된 섹터 수]

예약된 섹터 수를 지정합니다. FAT32 형식에서는 최소 2개의 예약된 섹터가 필요하며 기본값은 32입니다. 다른 경우 기본값은 1입니다 (부트 섹터만 해당).


-s [클러스터 당 섹터 수]

클러스터 당 디스크 섹터 수를 지정합니다. 지정 방식은 2의 거듭 제곱, 즉 1, 2, 4, 8, ... 128입니다.


-S [논리 섹터 크기]

논리 섹터 당 바이트 수를 지정합니다. 2의 거듭 제곱이고 512 이상이 수 (예 : 512, 1024, 2048, 4096, 8192, 16384 또는 32768). 4096보다 큰 값은 FAT 파일 시스템 사양을 따르지 않습니다.


-v

작업 수행 과정의 자세한 출력합니다.


--invariant

일반적으로 무작위로 생성되거나 볼륨 ID 및 생성 시간과 같은 시간 기반 데이터에 상수를 사용합니다.


--help

옵션 요약을 표시하고 종료합니다.


mkntfs

기본 옵션

-f, --fast, -Q, --quick

빠른 (빠른) 포맷을 수행. 볼륨 제로화와 불량 섹터 검사를 건너뜁니다.


-L, --label [볼륨 레이블명]

파일 시스템의 볼륨 레이블을 설정합니다.


-C, --enable-compression

볼륨에서 압축을 활성화합니다.



-n, --no-action

mkntfs가 실제로 파일 시스템을 생성하지 않고 파일 시스템을 생성할 경우 수행할 작업을 표시합니다.

실제로 장치에 쓰는 것을 제외한 포맷의 모든 단계가 수행됩니다.


고급 옵션

-c, --cluster-size [바이트 수]

클러스터 크기를 바이트 단위로 지정합니다. 유효한 클러스터 크기 값은 클러스터 당 2의 거듭 제곱수로 최소 256, 최대 2097152 바이트 (2MB)이며, 기본값은 4096 바이트입니다.


-s, --sector-size [바이트 수]

섹터 크기를 바이트 단위로 지정합니다. 유효한 섹터 크기 값은 섹터 당 256, 512, 1024, 2048 및 4096 바이트입니다. 미지정시 섹터 크기를 자동으로 결정하고 실패하면 기본값으로 섹터 당 512 바이트를 지정합니다.


-p, --partition-start [섹터]

파티션 시작 섹터를 지정합니다. 최대 값은 4294967295 (2의 32승 -1)입니다.
미지정 시 part-start-sect를 자동으로 결정하고 실패 시 기본값 0으로 지정합니다.


-H, --heads [숫자]

헤드 수를 지정합니다. 최대 값은 65535 (0xffff)입니다. 미지정 시 자동으로 헤드 수를 결정하고 실패 시 기본값 0으로 지정합니다..


-S, --sectors-per-track [숫자]

트랙 당 섹터 수를 지정합니다. 최대 값은 65535 (0xffff)입니다. 미지정 시 트랙 당 섹터 수를 자동으로 결정하고 실패 시 기본값 0으로 지정합니다.


-z, --mft-zone-multiplier [숫자]

볼륨에서 사용할 MFT 영역의 크기를 결정하는 MFT 영역 승수를 설정합니다. 유효한 값은 1, 2, 3, 4입니다. 해당 값들은 볼륨에서 MFT 영역이 차지하는 비율을 의미합니다. 기본값인 1의 경우 12.5%를 의미하며 승수가 올라갈 때마다 12.5%퍼센트가 추가됩니다.


-T, --zero-time

시간을 현재 시스템 시간 대신 1970 년 1 월 1 일 00:00:00 UTC로 설정합니다.


-U, --with-uuid

임의 볼륨 UUID를 생성합니다.


-I, --no-indexing

볼륨에서 콘텐츠 인덱싱을 비활성화합니다.


-F, --force

지정된 장치가 블록 특수 장치가 아니거나 마운트된 것처럼 보이는 경우에도 mkntfs를 강제 실행합니다.


출력 옵션

-q, --quiet

침묵 실행; 오류만 stderr에 기록되고 표준 출력stdout(일반적으로 모니터)에 대한 출력은 무시합니다.


-v, --verbose

수행 작업 과정에 대한 자세한 내용을 출력합니다.


--debug

수행 작업 과정에 대한 최대한의 정보 출력을 실행합니다. -v 옵션의 자세한 출력과 mkntfs 디버깅에 유용한 추가 출력이 포함됩니다.


도움말 옵션

-V, --version

mkntfs의 버전 번호를 출력하고 종료합니다.


-l, --license

mkntfs의 라이센스 정보를 출력하고 종료합니다.


-h, --help

각 옵션에 대한 간략한 설명과 함께 옵션 목록을 표시합니다.


mke2fs

옵션

-b [블록 크기]

블록 크기를 바이트 단위로 지정합니다. 유효한 블록 크기 값은 블록 당 1024, 2048 및 4096 바이트입니다. 생략하면 블록 크기는 파일 시스템 크기와 파일 시스템의 예상 사용량에 따라 경험적으로 결정됩니다.(T 옵션 참고)

block-size 앞에 ​​음수 부호('-')가 오면 mke2fs는 휴리스틱을 사용하여 적절한 블록 크기를 결정합니다.


-c

파일 시스템을 만들기 전에 장치에 불량 블록이 있는지 확인합니다. 이 옵션을 두 번 지정하면 빠른 읽기 전용 테스트 대신 느린 읽기-쓰기 테스트가 사용됩니다.


-C [클러스터 크기]

bigalloc 기능을 사용하여 파일 시스템의 클러스터 크기를 바이트 단위로 지정합니다. 유효한 클러스터 크기 값은 클러스터 당 2048 ~ 256M 바이트입니다. 이 옵션은 bigalloc이 활성화된 경우에만 지정이 가능하며  bigalloc이 활성화된 경우 기본 클러스터 크기는 블록 크기의 16 배입니다.


-d [루트 디렉터리]

주어진 디렉토리의 내용을 파일 시스템의 루트 디렉토리로 복사합니다.


-D

디스크에 쓸 때 직접 I / O를 사용합니다.


-e [오류 시 수행할 동작]

오류가 감지되면 커널 코드의 동작을 변경합니다. 모든 경우에 파일 시스템 오류로 인해 e2fsck는 다음 부팅시 파일 시스템을 확인합니다. 오류 행동은 다음 중 하나입니다.

continue 일반적인 정상 실행을 계속합니다.
remount-ro 파일 시스템을 읽기 전용으로 다시 마운트합니다.
panic 커널 패닉을 야기합니다.


-E [확장 옵션]

파일 시스템에 대한 확장 옵션을 설정합니다. 확장 옵션은 쉼표로 구분되며 등호 ('=') 기호를 사용하여 인수를 취할 수 있습니다. -E 옵션은 구버전의 mke2fs에서 -R과 대응됩니다. -R 옵션은 이전 버전과의 호환성을 위해 여전히 허용되지만 더 이상 사용되지 않습니다. 다음 확장 옵션이 지원됩니다.


encoding=encoding-name

수퍼 블록에서 케이스 폴드 기능을 활성화하고 사용할 인코딩으로 encoding-name을 설정합니다. encoding-name을 지정하지 않으면 mke2fs.conf에 정의된 인코딩이 사용됩니다.


encoding_flags=encoding-flags

파일명 문자 인코딩 작업에 대한 매개 변수를 정의합니다. 이 매개 변수를 사용하여 플래그를 변경하지 않으면 기본값이 사용됩니다. encoding-flags는 쉼표로 구분된 활성 플래그 목록이어야합니다. 플래그를 비활성화하려면 "no"접두사를 사용하여 목록에 추가하시면 됩니다.

지금 설정 가능한 유일한 플래그는 strict인데 이 플래그는 파일 시스템에서 유효하지 않은 문자열을 거부하도록 합니다. 기본 구성에서는 strict 플래그가 비활성화되어 있습니다.


mmp_update_interval=interval

초기 MMP 업데이트 간격을 interval 초로 조정합니다. 간격을 0으로 지정하면 기본 간격을 사용합니다. 지정된 간격은 300 초 미만이어야합니다. mmp 기능을 활성화해야합니다.


stride=stride-size

스트라이드 크기의 파일 시스템 블록을 사용하여 RAID 배열 파일 시스템을 구성합니다.


stripe_width=stripe-width

스트라이프 당 스트라이프 너비 파일 시스템 블록을 사용하여 RAID 배열 파일 시스템을 구성합니다. 이는 일반적으로 stride-size x N이며, 여기서 N은 RAID에 있는 데이터를 포함하는 디스크의 수입니다.


offset=offset

장치 또는 파일의 시작에서 오프셋에 파일 시스템을 만듭니다.


resize=max-online-resize

max-online-resize 블록이 있는 파일 시스템을 지원할 정도로 블록 그룹 설명자 테이블이 커질 수 있도록 충분한 공간을 예약합니다.


lazy_itable_init [= <0은 비활성화, 1은 활성화>]

활성화되고 uninit_bg 기능이 활성화되면 inode 테이블이 완전히 초기화되지 않습니다. 이렇게하면 파일 시스템 초기화 속도가 눈에 띄게 빨라지지만 파일 시스템이 처음 마운트 될 때 커널이 백그라운드에서 파일 시스템 초기화를 완료해야합니다. 옵션값이 생략되면 지연 inode 테이블 제로화를 사용하도록 기본값이 1로 설정됩니다.


lazy_journal_init [= <비활성화하려면 0, 활성화하려면 1>]

활성화된 경우 저널 inode가 완전히 제로화되지 않습니다. 이렇게하면 파일 시스템 초기화 속도가 눈에 띄게 빨라지지만 저널을 한 번 완전히 덮어 쓰기 전에 시스템이 충돌하면 약간의 위험이 따릅니다. 옵션 값이 생략되면 지연 저널 inode 제로화를 사용하도록 기본값이 1로 설정됩니다.


no_copy_xattrs

일반적으로 mke2fs는 -d 옵션을 통해 지정된 디렉토리 계층에 있는 파일의 확장된 속성을 복사합니다. 이렇게하면 복사가 비활성화되고 확장된 속성 없이 새로 생성된 파일 시스템에 파일을 남깁니다..


num_backup_sb = <0|1|2>

sparse_super2 파일 시스템 기능이 활성화된 경우 이 옵션을 사용해 파일 시스템에 생성되는 백업 수퍼 블록의 개수를 제어할 수 있습니다.


packed_meta_blocks [= <0은 비활성화, 1은 활성화>]

디스크 시작 부분에 할당 비트맵과 inode 테이블을 배치합니다. 이 옵션을 사용하려면 flex_bg 파일 시스템 기능이 활성화되어 있어야하며 파일 시스템 시작 시 저널이 생성됩니다.


root_owner [= uid : gid]

루트 디렉토리의 사용자 및 그룹 ID 숫자를 지정합니다. UID : GID가 지정되지 않은 채 mke2fs가 행되면 실행 사용자의 사용자 및 그룹 ID를 사용합니다.


test_fs

ext4dev 파일 시스템과 같은 실험적 커널 코드를 사용하여 마운트할 수 있음을 표시하도록 파일 시스템 수퍼 블록에 플래그를 설정합니다.


discard

mkfs 시간에 블록 폐기를 시도합니다. 이렇게하면 파일 시스템 초기화 속도가 상당히 빨라집니다. 이것은 기본값으로 설정되어 있습니다.


nodiscard

mkfs 시간에 블록을 버리지 않습니다.


quotatype

생성된 파일 시스템에서 활성화해야 하는 할당량 유형 (usrquota, grpquota, prjquota)을 지정합니다. 이 확장 옵션의 인수 구분은 콜론으로 합니다. 이 옵션은 할당량 기능이 설정된 경우에만 적용됩니다. 이 옵션이 지정되지 않은 경우 초기화되는 기본 할당량 유형은 사용자 및 그룹 할당량입니다. 프로젝트 기능이 사용 설정되면 프로젝트 할당량도 초기화됩니다.


-F

파일시스템을 강제로 생성합니다. 그것이 심지어 지정된 장치가 블록 특수 장치의 파티션이 아니거나 다른 매개 변수가 의미가 없는 경우에도 적용됩니다. 파일 시스템이 사용 중이거나 마운트되어있는 것처럼 보이더라도 파일 시스템을 생성하도록하려면 이 옵션을 두 번 지정하시면 되나, 굉장히 위험한 작업이므로 결코 권장하지는 않습니다.


-g [그룹당 블록 수]

블록 그룹의 블록 수를 지정합니다. 일반적으로 기본값이 파일 시스템에 최적이므로 보통의 경우 사용자가 이 매개 변수를 설정할 필요는 없습니다. bigalloc 기능이 활성화된 경우 -g 옵션은 블록 그룹의 클러스터 수를 지정합니다.


-G [그룹 수]

ext4 파일 시스템에서 더 큰 가상 블록 그룹 (또는 "flex_bg 그룹")을 만들기 위해 함께 압축될 블록 그룹의 수를 지정합니다. 그룹 수는 2의 거듭 제곱이어야하며 flex_bg 파일 시스템 기능이 활성화 된 경우에만 지정할 수 있습니다.


-i [inode 당 바이트 수]

바이트/노드 비율을 지정합니다. inode 당 바이트 비율이 클수록 더 적은 inode가 생성됩니다. 파일 시스템이 생성된 후에는이 비율을 변경할 수 없습니다. 단, 파일 시스템의 크기를 조정하면 이 비율을 유지하기 위해 inode 수가 변경됩니다.


-I [inode 크기]

각 inode의 크기를 바이트 단위로 지정합니다. inode-size 값은 128과 같거나 큰 2의 거듭 제곱이어야합니다. 파일 시스템이 생성된 후에는 이 값을 변경할 수 없습니다. 기본 inode 크기는 mke2fs.conf 파일에 의해 제어됩니다. e2fsprogs와 함께 제공되는 mke2fs.conf 파일에서 대부분의 파일 시스템에서 기본 inode 크기는 256 바이트입니다.


-j

ext3 저널을 사용하여 파일 시스템을 만듭니다. -J 옵션이 지정되지 않은 경우 기본 저널 매개 변수를 사용하여 파일 시스템 내에 저장되는 적절한 크기의 저널 (파일 시스템의 크기가 제공됨)을 만듭니다. 저널을 실제로 사용하려면 ext3를 지원하는 커널을 사용해야합니다.


-J [저널 옵션]

명령줄에 지정된 옵션을 사용하여 ext3 저널을 만듭니다. 저널 옵션은 쉼표로 구분되며 등호('=') 기호를 사용하여 인수를 사용할 수 있습니다. 다음 저널 옵션이 지원됩니다.


size=journal-size

지정 숫자의 메가 바이트 크기의 내부 저널을 생성합니다.. 저널의 크기는 최소 1024 개의 파일 시스템 블록 (즉, 1k 블록을 사용하는 경우 1MB, 4k 블록을 사용하는 경우 4MB 등)이어야하며 파일 시스템 블록이 10,240,000 개 이하이거나 전체 파일 시스템 크기의 절반 이 둘 중 더 작은 쪽이어야합니다.


location=journal-location

저널의 위치를 ​​지정합니다. journal-location 인수는 블록 번호로 지정하거나 숫자에 단위 접미사 (예 : 'M', 'G'등)를 붙임으로써 지정할 수 있습니다.


device=external-journal

파일 시스템을 외부 저널에 있는 저널 블록 장치에 연결합니다. 외부 저널이 이미 생성되어 있어야합니다.


mke2fs -O journal_dev external-journal

외부 저널은 새 파일 시스템과 동일한 블록 크기로 생성되어야 합니다. 파일 시스템에 대해 크기 또는 장치 옵션 중 하나만 제공 할 수 있습니다.


-l [파일 이름]

지정 파일에서 불량 블록 목록을 읽습니다.


-L [새 볼륨 레이블]

파일 시스템의 볼륨 레이블을 new-volume-label로 설정합니다. 볼륨 레이블의 최대 길이는 16 바이트입니다.


-m [예약된 블록 백분율]

수퍼 유저용으로 예약된 파일 시스템 블록의 백분율을 지정합니다. 기본 백분율은 5 %입니다.


-M [마지막으로 마운트 된 디렉토리]

파일 시스템에 대해 마지막으로 마운트된 디렉토리를 설정합니다.


-n

실제로 파일 시스템을 생성하지 않고 파일 시스템을 생성할 경우 수행할 작업을 표시합니다.


-N [i노드 수]

파일 시스템용으로 예약해야 하는 inode 수의 기본 계산을 재정의합니다.


-o [creator-OS]

파일 시스템의 "creator operating system"필드의 기본값을 대체합니다. 생성자 필드는 기본적으로 mke2fs 실행 파일이 컴파일된 OS 이름으로 설정됩니다.


-O [^]feature[,...]

기본 파일 시스템 옵션을 재정의하여 지정된 기능 (파일 시스템 옵션)으로 파일 시스템을 만듭니다.

기본적으로 활성화되는 기능들은  base_fea‐tures에 의해 지정되는데 이것들은 /etc/mke2fs.conf 파일의 [defaults] 섹션, -T 옵션에 의해 지정된 사용 유형에 대한 [fs_type] 하위 섹션에서 찾을 수 있으며 더 나아가 파일시스템과 사용 유형에 대한  [fs_types] 하위 섹션에서 찾을 수 있는 features relation에 의해 수정됩니다.

자세한 내용은 mke2fs.conf (5)의 manpage를 참조하십시오. [fs_types] 섹션에 있는 파일 시스템 유형별 구성 설정은 [defaults]에 있는 전역 기본값을 재정의합니다.

파일 시스템 기능 세트는 이 옵션에 지정된 기능 세트를 사용하거나 이 옵션이 지정되지 않은 경우 생성되는 파일 시스템 유형에 대한 default_features 관계 또는 구성 파일의 [defaults] 섹션을 사용하여 추가로 편집됩니다.

파일 시스템 기능 세트는 활성화할 기능 목록으로 구성되며 쉼표로 구분됩니다. 기능을 비활성화하려면 기능 이름 앞에 캐럿 ('^') 문자를 붙이면됩니다. 종속성이 있는 기능은 성공적으로 제거되지 않습니다. 의사 파일 시스템 기능 "없음"은 모든 파일 시스템 기능을 지웁니다.

설정할 수 있는 기능에 대한 자세한 내용은 ext4 (5)의 manpage를 참고하시기 바랍니다.


-q

침묵 실행. 스크립트에서 실행되는 경우 유용합니다.


-r [revision]

새 파일 시스템에 대한 파일 시스템 리비전을 설정합니다.


-S

수퍼 블록 및 그룹 설명자만 작성합니다. 이는 모든 수퍼 블록 및 백업 수퍼 블록이 손상되고 숙련 된 사용자가 더이상의 복구 방법이 없을 때에서나 취할 수 있는 극단적 인 조치입니다.


-t [파일시스템 유형]

생성할 파일 시스템 유형 (예 : ext2, ext3, ext4 등)을 지정합니다. 이 옵션이 지정되지 않은 경우 mke2fs는 명령 실행 방법 (예 : mkfs.ext2, mkfs.ext3 등의 형식 이름 사용)을 사용하거나  /etc/mke2fs.conf 파일에 정의된 기본값을 통해 파일 시스템 유형을 선택합니다. 이 옵션은 /etc/mke2fs.conf의 fstypes 구성 스탠자를 기반으로 default에서 사용되는 파일 시스템 옵션을 제어합니다.


-T [사용 유형] [, ...]

mke2fs가 해당 용도에 맞는 최적의 파일 시스템 매개 변수를 선택할 수 있도록 파일 시스템 사용 방법을 지정합니다. 지원되는 사용 유형은 구성 파일 /etc/mke2fs.conf에 정의되어 있습니다. 사용자는 쉼표로 구분된 목록을 사용하여 하나 이상의 사용 유형을 지정할 수 있습니다.

이 옵션을 지정하지 않으면 mke2fs는 생성할 파일 시스템의 크기에 따라 단일 기본 사용 유형을 선택합니다. 파일 시스템 크기가 3MB 미만인 경우 mke2fs는 파일 시스템 유형 플로피를 사용합니다. 파일 시스템 크기가 3보다 크거나 같지만 512MB 미만이면 mke2fs (8)는 small 파일 시스템 유형을 사용합니다. 파일 시스템 크기가 4 테라 바이트 이상 16 테라 바이트 미만인 경우 mke2fs (8)는 big 파일 시스템 유형을 사용합니다. 파일 시스템 크기가 16TB이상인 경우 mke2fs (8)는 huge 파일 시스템 유형을 사용합니다. 그렇지 않으면 mke2fs (8)는 기본 파일 시스템 유형 기본값을 사용합니다.


-U [UUID]

파일 시스템의 UUID (Universally Unique Identifier)를 UUID로 설정합니다. UUID의 형식은 하이픈으로 구분된 일련의 16 진수입니다.(예 : 'c1b9d5a2-f162-11cf-9ece-0020afc76f16)

UUID 매개 변수는 다음 중 하나 일 수 있습니다.

clear 파일 시스템 UUID를 지웁니다.
random 무작위로 생성되는 새로운 UUID 생성합니다.
time 시간 기반의 새로운 UUID를 생성합니다.


-v

작업 수행 내용의 자세한 출력

-V mke2fs의 버전 번호를 출력하고 종료합니다.


-z [실행 취소 파일]

파일 시스템 블록을 덮어 쓰기 전에 블록의 이전 내용을 실행 취소 파일에 씁니다. 이 실행 취소 파일은 e2undo (8)와 함께 사용하여 문제가 발생한 경우 파일 시스템의 이전 내용을 복원할 수 있습니다.