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, mkntfs automagically 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 โ€” makes mkntfs not 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 least 256 and at most 2097152 bytes (2MB) per cluster. if omitted, mkntfs uses 4096 bytes 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 are 256, 512, 1024, 2048 and 4096 bytes per sector. if omitted, mkntfs attempts to determine the sector-size automatically, and if that fails a default of 512 bytes per sector is used. slay, it tries ๐Ÿซถ
  • -p, --partition-start SECTOR โ€” specify the partition start sector. the maximum is 4294967295 (2^32-1). if omitted, mkntfs attempts to determine part-start-sect automatically, and if that fails or the value is oversized, a default of 0 is used. the partition is usable despite a wrong value โ€” but note that a correct part-start-sect is 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 is 65535 (0xffff). if omitted, mkntfs attempts to determine the number of heads automatically, and if that fails a default of 0 is used. note that heads is 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 is 65535 (0xffff). if omitted, mkntfs attempts to determine the number of sectors-per-track automatically, and if that fails a default of 0 is used. note that sectors-per-track is 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 size
  • 3 โ€” 37.5% of volume size
  • 4 โ€” 50.0% of volume size
  • -T, --zero-time โ€” fake the time to be 00:00:00 UTC, 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 โ€” force mkntfs to 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 to stderr, no output to stdout occurs at all. useful if mkntfs is run in a script. ๐Ÿคซ
  • -v, --verbose โ€” verbose execution. tell me everything ๐Ÿ”
  • --debug โ€” really verbose execution; includes the verbose output from the -v option as well as additional output useful for debugging mkntfs. this one overshares and we love her ๐Ÿ’€๐Ÿ’–

๐Ÿงš Help options ๐Ÿงš

  • -V, --version โ€” print the version number of mkntfs and exit. ๐Ÿ‘‹
  • -l, --license โ€” print the licensing information of mkntfs and 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