MKNTFS(8)
๐ MKNTFS(8) โ the glow-up edition โจ
okay so bestie, you're reading the mkntfs(8) page from the System Manager's Manual, and honestly? it's giving "let's make a filesystem" and I am here for it. grab a strawberry ๐ and let's go.
๐ธ NAME ๐ธ
mkntfs โ create an NTFS file system. that's it, that's the whole vibe. no cap. โจ
๐ฆ SYNOPSIS ๐ฆ
mkntfs [options] device [number-of-sectors]
mkntfs [ -C ] [ -c cluster-size ] [ -F ] [ -f ] [ -H heads ] [ -h ] [ -I
] [ -L volume-label ] [ -l ] [ -n ] [ -p part-start-sect ] [ -Q ] [ -q ]
[ -S sectors-per-track ] [ -s sector-size ] [ -T ] [ -U ] [ -V ] [ -v ]
[ -z mft-zone-multiplier ] [ --debug ] device [ number-of-sectors ]
๐ DESCRIPTION ๐
so here's the tea: mkntfs creates an NTFS file system on a device (usually a disk partition, but like, a file works too ๐ซถ).
deviceโ the special file that corresponds to the device (e.g./dev/hdXX).number-of-sectorsโ the number of sectors on the device. if you omit it,mkntfsautomagically figures out the file system size for you. main character energy, honestly. ๐
๐ OPTIONS ๐
below is the full rundown of every option mkntfs accepts โ yes, all of them, we're not skipping a single one, periodt. ๐
nearly all options have two equivalent names: the short name is preceded by - and the long name is preceded by --. any single letter options that don't take an argument can be combined into a single command, e.g. -fv is equivalent to -f -v. long named options can be abbreviated to any unique prefix of their name. iykyk. โจ
โญ Basic options โญ
-f,--fast,-Q,--quickโ perform quick (fast) format. this one skips both zeroing of the volume and bad sector checking. fast, but it's giving "no thoughts head empty" ๐ญ-L,--label STRINGโ set the volume label for the filesystem. name your volume, bestie, it deserves one ๐-C,--enable-compressionโ enable compression on the volume. squeeze it ๐๏ธโจ-n,--no-actionโ makesmkntfsnot actually create a filesystem, and instead display what it would do if it were to create one. all steps of the format are carried out except the actual writing to the device โ so it's a dress rehearsal, not the real show ๐
๐ฅ Advanced options ๐ฅ
-c,--cluster-size BYTESโ specify the size of clusters in bytes. valid values are powers of two, with at least256and at most2097152bytes (2MB) per cluster. if omitted,mkntfsuses4096bytes as the default cluster size.
note that the default cluster size is set to be at least equal to the sector size, because a cluster cannot be smaller than a sector. also note that values greater than 4096 have the side effect that compression is disabled on the volume (due to limitations in the NTFS compression algorithm currently in use by Windows). so like, pick your fighter ๐
-s,--sector-size BYTESโ specify the size of sectors in bytes. valid values are256,512,1024,2048and4096bytes per sector. if omitted,mkntfsattempts to determine the sector-size automatically, and if that fails a default of512bytes per sector is used. slay, it tries ๐ซถ-p,--partition-start SECTORโ specify the partition start sector. the maximum is4294967295(2^32-1). if omitted,mkntfsattempts to determinepart-start-sectautomatically, and if that fails or the value is oversized, a default of0is used. the partition is usable despite a wrong value โ but note that a correctpart-start-sectis required for Windows to be able to boot from the created volume. so yeah, don't fumble this one ๐ญ-H,--heads NUMโ specify the number of heads. the maximum is65535(0xffff). if omitted,mkntfsattempts to determine the number of heads automatically, and if that fails a default of0is used. note thatheadsis required for Windows to be able to boot from the created volume ๐-S,--sectors-per-track NUMโ specify the number of sectors per track. the maximum is65535(0xffff). if omitted,mkntfsattempts to determine the number of sectors-per-track automatically, and if that fails a default of0is used. note thatsectors-per-trackis required for Windows to be able to boot from the created volume ๐-z,--mft-zone-multiplier NUMโ set the MFT zone multiplier, which determines the size of the MFT zone to use on the volume. the MFT zone is the area at the beginning of the volume reserved for the master file table (MFT), which stores the on disk inodes (MFT records). it's noteworthy that small files are stored entirely within the inode โ so if you expect to use the volume for storing large numbers of very small files, it's useful to set the zone multiplier to a higher value. note that the MFT zone is resized on the fly as required during operation of the NTFS driver, but choosing a good value will reduce fragmentation.
valid values are 1, 2, 3 and 4, and here's what each one means:
1โ12.5%of volume size (default)2โ25.0%of volume size3โ37.5%of volume size4โ50.0%of volume size
-T,--zero-timeโ fake the time to be00:00:00UTC, Jan 1, 1970 instead of the current system time. this is only really useful for debugging purposes. time travel but make it a filesystem ๐ฐ๏ธ-U,--with-uuidโ generate a random volume UUID. a little unique identifier just for you ๐ฆ-I,--no-indexingโ disable content indexing on the volume. (this is only meaningful on Windows 2000 and later. Windows NT 4.0 and earlier ignore this, as they do not implement content indexing at all.) ๐ซ-F,--forceโ forcemkntfsto run, even if the specified device is not a block special device, or appears to be mounted. > โ ๏ธ bestie this is the "ignore the vibes check" button โ it will run on things it normally wouldn't. be careful, fr fr.
๐ Output options ๐
-q,--quietโ quiet execution; only errors are written tostderr, no output tostdoutoccurs at all. useful ifmkntfsis run in a script. ๐คซ-v,--verboseโ verbose execution. tell me everything ๐--debugโ really verbose execution; includes the verbose output from the-voption as well as additional output useful for debuggingmkntfs. this one overshares and we love her ๐๐
๐ง Help options ๐ง
-V,--versionโ print the version number ofmkntfsand exit. ๐-l,--licenseโ print the licensing information ofmkntfsand exit. legal era โ๏ธ-h,--helpโ show a list of options with a brief description of each one. the classic ๐ซถ
๐ KNOWN ISSUES ๐
when applying chkdsk to a file system, it sometimes throws a warning: "Correcting errors in the uppercase file." ๐
so what is the uppercase file? it's created while formatting, and it defines the mapping of lower case characters to upper case ones, as needed to sort file names in directories. the warning means that the uppercase file defined on the file system is not the same as the one used by the Windows OS on which chkdsk is running โ and this may happen because newer versions of Windows take into account new characters defined by the Unicode consortium. ๐
currently, mkntfs creates the uppercase table so that no warning is thrown by Windows Vista, Windows 7 or Windows 8. a warning may be thrown by other Windows versions, or if chkdsk is applied in succession on different Windows versions. not the drama we wanted but here we are ๐ญ
๐ BUGS ๐
if you find a bug, please send an email describing the problem to the development team:
ntfs-3g-devel@lists.sf.net
we're listening, bestie ๐ซถ
๐ AUTHORS ๐
mkntfs was written by Anton Altaparmakov, Richard Russon, Erik Sornes and Szabolcs Szakacsits. it was ported to ntfs-3g by Erik Larsson and Jean-Pierre Andre. absolute icons, every single one ๐
๐ AVAILABILITY ๐
mkntfs is part of the ntfs-3g package and is available from:
https://github.com/tuxera/ntfs-3g/wiki/
go get it ๐ฆ
โญ SEE ALSO โญ
and that's the whole page, babe. โจ this one's from ntfs-3g 2026.9.28, dated January 2006 โ vintage but still slaying ๐ ๐ stay formatted, bestie! ๐ซถ๐
๐ฆ where this page comes from
- arch rolling: ntfsprogs 2026.9.28-1 ยท GPL-2.0-or-later
- nixpkgs unstable: ntfs3g 2026.9.28
- Copyright (c) 2001\-2006 Anton Altaparmakov
- Copyright (c) 2005 Richard Russon
- Copyright (c) 2005\-2006 Szabolcs Szakacsits
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms