{
    "mode": "man",
    "parameter": "mkntfs",
    "section": "8",
    "url": "https://www.chedong.com/phpMan.php/man/mkntfs/8/json",
    "generated": "2026-05-30T07:08:56Z",
    "synopsis": "mkntfs [options] device [number-of-sectors]\nmkntfs  [ -C ] [ -c cluster-size ] [ -F ] [ -f ] [ -H heads ] [ -h ] [ -I ] [ -L volume-label\n] [ -l ] [ -n ] [ -p part-start-sect ] [ -Q ] [ -q ] [  -S  sectors-per-track  ]  [  -s  sec‐\ntor-size  ]  [ -T ] [ -U ] [ -V ] [ -v ] [ -z mft-zone-multiplier ] [ --debug ] device [ num‐\nber-of-sectors ]",
    "sections": {
        "NAME": {
            "content": "mkntfs - create an NTFS file system\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "mkntfs [options] device [number-of-sectors]\n\nmkntfs  [ -C ] [ -c cluster-size ] [ -F ] [ -f ] [ -H heads ] [ -h ] [ -I ] [ -L volume-label\n] [ -l ] [ -n ] [ -p part-start-sect ] [ -Q ] [ -q ] [  -S  sectors-per-track  ]  [  -s  sec‐\ntor-size  ]  [ -T ] [ -U ] [ -V ] [ -v ] [ -z mft-zone-multiplier ] [ --debug ] device [ num‐\nber-of-sectors ]\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "mkntfs is used to create an NTFS file system on a device (usually a disk partition) or  file.\ndevice is the special file corresponding to the device (e.g /dev/hdXX).  number-of-sectors is\nthe number of sectors on the device. If omitted, mkntfs automagically figures the file system\nsize.\n",
            "subsections": []
        },
        "OPTIONS": {
            "content": "Below  is  a  summary  of  all  the options that mkntfs accepts.  Nearly all options have two\nequivalent names.  The short name is preceded by - and the long name is preceded by --.   Any\nsingle  letter  options,  that don't take an argument, can be combined into a single command,\ne.g.  -fv is equivalent to -f -v.  Long named options can be abbreviated to any unique prefix\nof their name.\n",
            "subsections": [
                {
                    "name": "Basic options",
                    "content": ""
                },
                {
                    "name": "-f --fast -Q --quick",
                    "content": "Perform  quick (fast) format. This will skip both zeroing of the volume and bad sector\nchecking.\n",
                    "flag": "-Q",
                    "long": "--quick"
                },
                {
                    "name": "-L --label",
                    "content": "Set the volume label for the filesystem.\n",
                    "flag": "-L",
                    "long": "--label"
                },
                {
                    "name": "-C --enable-compression",
                    "content": "Enable compression on the volume.\n",
                    "flag": "-C",
                    "long": "--enable-compression"
                },
                {
                    "name": "-n --no-action",
                    "content": "Causes mkntfs to not actually create a filesystem, but display what it would do if  it\nwere to create a filesystem. All steps of the format are carried out except the actual\nwriting to the device.\n",
                    "flag": "-n",
                    "long": "--no-action"
                },
                {
                    "name": "Advanced options",
                    "content": ""
                },
                {
                    "name": "-c --cluster-size",
                    "content": "Specify the size of clusters in bytes. Valid cluster size values are  powers  of  two,\nwith  at  least  256,  and at most 2097152 bytes (2MB) per cluster. If omitted, mkntfs\nuses 4096 bytes as the default cluster size.\n\nNote that the default cluster size is set to be at least equal to the sector size as a\ncluster cannot be smaller than a sector. Also, note that values greater than 4096 have\nthe side effect that compression is disabled on the volume (due to limitations in  the\nNTFS compression algorithm currently in use by Windows).\n",
                    "flag": "-c",
                    "long": "--cluster-size"
                },
                {
                    "name": "-s --sector-size",
                    "content": "Specify  the  size  of  sectors in bytes. Valid sector size values are 256, 512, 1024,\n2048 and 4096 bytes per sector. If omitted, mkntfs  attempts  to  determine  the  sec‐\ntor-size automatically and if that fails a default of 512 bytes per sector is used.\n",
                    "flag": "-s",
                    "long": "--sector-size"
                },
                {
                    "name": "-p --partition-start",
                    "content": "Specify  the  partition  start sector. The maximum is 4294967295 (2^32-1). If omitted,\nmkntfs attempts to determine part-start-sect automatically and if that  fails  or  the\nvalue  is  oversized,  a default of 0 is used. The partition is usable despite a wrong\nvalue, however note that a correct part-start-sect is required for Windows to be  able\nto boot from the created volume.\n",
                    "flag": "-p",
                    "long": "--partition-start"
                },
                {
                    "name": "-H --heads",
                    "content": "Specify  the  number  of  heads. The maximum is 65535 (0xffff). If omitted, mkntfs at‐\ntempts to determine the number of heads automatically and if that fails a default of 0\nis  used.  Note that heads is required for Windows to be able to boot from the created\nvolume.\n",
                    "flag": "-H",
                    "long": "--heads"
                },
                {
                    "name": "-S --sectors-per-track",
                    "content": "Specify the number of sectors per track. The maximum is 65535  (0xffff).  If  omitted,\nmkntfs attempts to determine the number of sectors-per-track automatically and if that\nfails a default of 0 is used. Note that sectors-per-track is required for  Windows  to\nbe able to boot from the created volume.\n",
                    "flag": "-S",
                    "long": "--sectors-per-track"
                },
                {
                    "name": "-z --mft-zone-multiplier",
                    "content": "Set  the  MFT zone multiplier, which determines the size of the MFT zone to use on the\nvolume. The MFT zone is the area at the beginning of the volume reserved for the  mas‐\nter file table (MFT), which stores the on disk inodes (MFT records).  It is noteworthy\nthat small files are stored entirely within the inode; thus, if you expect to use  the\nvolume  for  storing  large  numbers of very small files, it is useful to set the zone\nmultiplier to a higher value. Note, that the MFT zone is resized on  the  fly  as  re‐\nquired during operation of the NTFS driver but choosing a good value will reduce frag‐\nmentation. Valid values are 1, 2, 3 and 4. The values have the following meaning:\n\n┌────────────────────────────────┐\n│MFT zone     MFT zone size      │\n│multiplier   (% of volume size) │\n│    1        12.5% (default)    │\n│    2        25.0%              │\n│    3        37.5%              │\n│    4        50.0%              │\n└────────────────────────────────┘\n",
                    "flag": "-z",
                    "long": "--mft-zone-multiplier"
                },
                {
                    "name": "-T --zero-time",
                    "content": "Fake the time to be 00:00:00 UTC, Jan 1, 1970 instead  of  the  current  system  time.\nThis is only really useful for debugging purposes.\n",
                    "flag": "-T",
                    "long": "--zero-time"
                },
                {
                    "name": "-U --with-uuid",
                    "content": "Generate a random volume UUID.\n",
                    "flag": "-U",
                    "long": "--with-uuid"
                },
                {
                    "name": "-I --no-indexing",
                    "content": "Disable  content  indexing on the volume. (This is only meaningful on Windows 2000 and\nlater. Windows NT 4.0 and earlier ignore this as they do not implement content  index‐\ning at all.)\n",
                    "flag": "-I",
                    "long": "--no-indexing"
                },
                {
                    "name": "-F --force",
                    "content": "Force  mkntfs  to  run, even if the specified device is not a block special device, or\nappears to be mounted.\n",
                    "flag": "-F",
                    "long": "--force"
                },
                {
                    "name": "Output options",
                    "content": ""
                },
                {
                    "name": "-q --quiet",
                    "content": "Quiet execution; only errors are written to stderr, no output to stdout occurs at all.\nUseful if mkntfs is run in a script.\n",
                    "flag": "-q",
                    "long": "--quiet"
                },
                {
                    "name": "-v --verbose",
                    "content": "Verbose execution.\n",
                    "flag": "-v",
                    "long": "--verbose"
                },
                {
                    "name": "--debug",
                    "content": "Really  verbose  execution;  includes the verbose output from the -v option as well as\nadditional output useful for debugging mkntfs.\n",
                    "long": "--debug"
                },
                {
                    "name": "Help options",
                    "content": ""
                },
                {
                    "name": "-V --version",
                    "content": "Print the version number of mkntfs and exit.\n",
                    "flag": "-V",
                    "long": "--version"
                },
                {
                    "name": "-l --license",
                    "content": "Print the licensing information of mkntfs and exit.\n",
                    "flag": "-l",
                    "long": "--license"
                },
                {
                    "name": "-h --help",
                    "content": "Show a list of options with a brief description of each one.\n",
                    "flag": "-h",
                    "long": "--help"
                }
            ]
        },
        "KNOWN ISSUES": {
            "content": "When applying chkdsk to a file system, it sometimes throws a warning  \"Correcting  errors  in\nthe  uppercase  file.\" The uppercase file is created while formatting and it defines the map‐\nping of lower case  characters to upper case ones, as needed to sort file names  in  directo‐\nries. The warning means that the uppercase file defined on the file system is not the same as\nthe one used by the Windows OS on which chkdsk is running, and this may happen because  newer\nversions of Windows take into account new characters defined by the Unicode consortium.\n\nCurrently,  mkntfs creates the uppercase table so that no warning is thrown by Windows Vista,\nWindows 7 or Windows 8. A warning may be thrown by other Windows versions, or  if  chkdsk  is\napplied in succession on different Windows versions.\n",
            "subsections": []
        },
        "BUGS": {
            "content": "If you find a bug please send an email describing the problem to the development team:\nntfs-3g-devel@lists.sf.net\n",
            "subsections": []
        },
        "AUTHORS": {
            "content": "mkntfs  was  written  by Anton Altaparmakov, Richard Russon, Erik Sornes and Szabolcs Szakac‐\nsits.  It was ported to ntfs-3g by Erik Larsson and Jean-Pierre Andre.\n",
            "subsections": []
        },
        "AVAILABILITY": {
            "content": "mkntfs is part of the ntfs-3g package and is available from:\nhttps://github.com/tuxera/ntfs-3g/wiki/\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "badblocks(8), ntfsprogs(8)\n\n\n\nntfs-3g 2021.8.22                           January 2006                                   MKNTFS(8)",
            "subsections": []
        }
    },
    "summary": "mkntfs - create an NTFS file system",
    "flags": [
        {
            "flag": "-Q",
            "long": "--quick",
            "arg": null,
            "description": "Perform quick (fast) format. This will skip both zeroing of the volume and bad sector checking."
        },
        {
            "flag": "-L",
            "long": "--label",
            "arg": null,
            "description": "Set the volume label for the filesystem."
        },
        {
            "flag": "-C",
            "long": "--enable-compression",
            "arg": null,
            "description": "Enable compression on the volume."
        },
        {
            "flag": "-n",
            "long": "--no-action",
            "arg": null,
            "description": "Causes mkntfs to not actually create a filesystem, but display what it would do if it were to create a filesystem. All steps of the format are carried out except the actual writing to the device."
        },
        {
            "flag": "-c",
            "long": "--cluster-size",
            "arg": null,
            "description": "Specify the size of clusters in bytes. Valid cluster size 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 as 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)."
        },
        {
            "flag": "-s",
            "long": "--sector-size",
            "arg": null,
            "description": "Specify the size of sectors in bytes. Valid sector size values are 256, 512, 1024, 2048 and 4096 bytes per sector. If omitted, mkntfs attempts to determine the sec‐ tor-size automatically and if that fails a default of 512 bytes per sector is used."
        },
        {
            "flag": "-p",
            "long": "--partition-start",
            "arg": null,
            "description": "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, however note that a correct part-start-sect is required for Windows to be able to boot from the created volume."
        },
        {
            "flag": "-H",
            "long": "--heads",
            "arg": null,
            "description": "Specify the number of heads. The maximum is 65535 (0xffff). If omitted, mkntfs at‐ tempts 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."
        },
        {
            "flag": "-S",
            "long": "--sectors-per-track",
            "arg": null,
            "description": "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."
        },
        {
            "flag": "-z",
            "long": "--mft-zone-multiplier",
            "arg": null,
            "description": "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 mas‐ ter file table (MFT), which stores the on disk inodes (MFT records). It is noteworthy that small files are stored entirely within the inode; thus, if you expect to use the volume for storing large numbers of very small files, it is useful to set the zone multiplier to a higher value. Note, that the MFT zone is resized on the fly as re‐ quired during operation of the NTFS driver but choosing a good value will reduce frag‐ mentation. Valid values are 1, 2, 3 and 4. The values have the following meaning: ┌────────────────────────────────┐ │MFT zone MFT zone size │ │multiplier (% of volume size) │ │ 1 12.5% (default) │ │ 2 25.0% │ │ 3 37.5% │ │ 4 50.0% │ └────────────────────────────────┘"
        },
        {
            "flag": "-T",
            "long": "--zero-time",
            "arg": null,
            "description": "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."
        },
        {
            "flag": "-U",
            "long": "--with-uuid",
            "arg": null,
            "description": "Generate a random volume UUID."
        },
        {
            "flag": "-I",
            "long": "--no-indexing",
            "arg": null,
            "description": "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 index‐ ing at all.)"
        },
        {
            "flag": "-F",
            "long": "--force",
            "arg": null,
            "description": "Force mkntfs to run, even if the specified device is not a block special device, or appears to be mounted."
        },
        {
            "flag": "-q",
            "long": "--quiet",
            "arg": null,
            "description": "Quiet execution; only errors are written to stderr, no output to stdout occurs at all. Useful if mkntfs is run in a script."
        },
        {
            "flag": "-v",
            "long": "--verbose",
            "arg": null,
            "description": "Verbose execution."
        },
        {
            "flag": "",
            "long": "--debug",
            "arg": null,
            "description": "Really verbose execution; includes the verbose output from the -v option as well as additional output useful for debugging mkntfs."
        },
        {
            "flag": "-V",
            "long": "--version",
            "arg": null,
            "description": "Print the version number of mkntfs and exit."
        },
        {
            "flag": "-l",
            "long": "--license",
            "arg": null,
            "description": "Print the licensing information of mkntfs and exit."
        },
        {
            "flag": "-h",
            "long": "--help",
            "arg": null,
            "description": "Show a list of options with a brief description of each one."
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "badblocks",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/badblocks/8/json"
        },
        {
            "name": "ntfsprogs",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/ntfsprogs/8/json"
        }
    ]
}