diff --git a/dosfstools/man/mkdosfs.8 b/dosfstools/man/mkdosfs.8
new file mode 100644
index 0000000..9100c39
--- /dev/null
+++ b/dosfstools/man/mkdosfs.8
@@ -0,0 +1,224 @@
+.\" -*- nroff -*-
+.TH MKDOSFS 8 "5 May 1995" "Version 2.x"
+.SH NAME
+.B mkdosfs
+\- create an MS-DOS file system under Linux
+.SH SYNOPSIS
+.B mkdosfs|mkfs.msdos|mkfs.vfat
+[
+.B \-a
+]
+[
+.B \-A
+]
+[
+.B \-b
+.I sector-of-backup
+]
+[
+.B \-c
+]
+[
+.B \-l
+.I filename
+]
+[
+.B \-C
+]
+[
+.B \-f
+.I number-of-FATs
+]
+[
+.B \-F
+.I FAT-size
+]
+[
+.B \-h
+.I number-of-hidden-sectors
+]
+[
+.B \-i
+.I volume-id
+]
+.RB [ " \-I " ]
+[
+.B \-m
+.I message-file
+]
+[
+.B \-n
+.I volume-name
+]
+[
+.B \-r
+.I root-dir-entries
+]
+[
+.B \-R
+.I number-of-reserved-sectors
+]
+[
+.B \-s
+.I sectors-per-cluster
+]
+[
+.B \-S
+.I logical-sector-size
+]
+[
+.B \-v
+]
+.I device
+[
+.I block-count
+]
+.SH DESCRIPTION
+.B mkdosfs
+is used to create an MS-DOS file system under Linux on a device (usually
+a disk partition).
+.I device
+is the special file corresponding to the device (e.g /dev/hdXX).
+.I block-count
+is the number of blocks on the device.  If omitted,
+.B mkdosfs
+automatically determines the file system size.
+.SH OPTIONS
+.TP
+.B \-a
+Normally, for any filesystem except very small ones, \fBmkdosfs\fP
+will align all the data structures to cluster size, to make sure that
+as long as the partition is properly aligned, so will all the data
+structures in the filesystem.  This option disables alignment; this
+may provide a handful of additional clusters of storage at the expense
+of a significant performance degradation on RAIDs, flash media or
+large-sector hard disks.
+.TP
+.B \-A
+Use Atari variation of the MS-DOS file system. This is default if
+\fBmkdosfs\fP is run on an Atari, then this option turns off Atari
+format. There are some differences when using Atari format: If not
+directed otherwise by the user, \fBmkdosfs\fP will always use 2
+sectors per cluster, since GEMDOS doesn't like other values very much.
+It will also obey the maximum number of sectors GEMDOS can handle.
+Larger file systems are managed by raising the logical sector size.
+Under Atari format, an Atari-compatible serial number for the
+file system is generated, and a 12 bit FAT is used only for file systems
+that have one of the usual floppy sizes (720k, 1.2M, 1.44M, 2.88M), a
+16 bit FAT otherwise. This can be overridden with the \fB\-F\fP
+option. Some PC-specific boot sector fields aren't written, and a boot
+message (option \fB\-m\fP) is ignored.
+.TP
+.BI \-b " sector-of-backup "
+Selects the location of the backup boot sector for FAT32. Default
+depends on number of reserved sectors, but usually is sector 6. The
+backup must be within the range of reserved sectors.
+.TP
+.B \-c
+Check the device for bad blocks before creating the file system.
+.TP
+.B \-C
+Create the file given as \fIdevice\fP on the command line, and write
+the to-be-created file system to it. This can be used to create the
+new file system in a file instead of on a real device, and to avoid
+using \fBdd\fP in advance to create a file of appropriate size. With
+this option, the \fIblock-count\fP must be given, because otherwise
+the intended size of the file system wouldn't be known. The file
+created is a sparse file, which actually only contains the meta-data
+areas (boot sector, FATs, and root directory). The data portions won't
+be stored on the disk, but the file nevertheless will have the
+correct size. The resulting file can be copied later to a floppy disk
+or other device, or mounted through a loop device.
+.TP
+.BI \-f " number-of-FATs"
+Specify the number of file allocation tables in the file system.  The
+default is 2.  Currently the Linux MS-DOS file system does not support
+more than 2 FATs.
+.TP
+.BI \-F " FAT-size"
+Specifies the type of file allocation tables used (12, 16 or 32 bit).
+If nothing is specified, \fBmkdosfs\fR will automatically select
+between 12, 16 and 32 bit, whatever fits better for the file system size.
+.TP
+.BI \-h " number-of-hidden-sectors "
+Select the number of hidden sectors in the volume. Apparently some
+digital cameras get indigestion if you feed them a CF card without
+such hidden sectors, this option allows you to satisfy them. Assumes
+\'0\' if no value is given on the command line.
+.TP
+.I \-i " volume-id"
+Sets the volume ID of the newly created file system;
+.I volume-id
+is a 32-bit hexadecimal number (for example, 2e24ec82).  The default
+is a number which depends on the file system creation time.
+.TP
+.B \-I
+It is typical for fixed disk devices to be partitioned so, by default, you are
+not permitted to create a filesystem across the entire device.
+.B mkdosfs
+will complain and tell you that it refuses to work.  This is different
+when using MO disks.  One doesn't always need partitions on MO disks.
+The file system can go directly to the whole disk.  Under other OSes
+this is known as the 'superfloppy' format.
+
+This switch will force
+.B mkdosfs
+to work properly.
+.TP
+.BI \-l " filename"
+Read the bad blocks list from
+.IR filename .
+.TP
+.BI \-m " message-file"
+Sets the message the user receives on attempts to boot this file system
+without having properly installed an operating system.  The message
+file must not exceed 418 bytes once line feeds have been converted to
+carriage return-line feed combinations, and tabs have been expanded.
+If the filename is a hyphen (-), the text is taken from standard input.
+.TP
+.BI \-n " volume-name"
+Sets the volume name (label) of the file system.  The volume name can
+be up to 11 characters long.  The default is no label.
+.TP
+.BI \-r " root-dir-entries"
+Select the number of entries available in the root directory.  The
+default is 112 or 224 for floppies and 512 for hard disks.
+.TP
+.BI \-R " number-of-reserved-sectors "
+Select the number of reserved sectors. With FAT32 format at least 2
+reserved sectors are needed, the default is 32. Otherwise the default
+is 1 (only the boot sector).
+.TP
+.BI \-s " sectors-per-cluster"
+Specify the number of disk sectors per cluster.  Must be a power of 2,
+i.e. 1, 2, 4, 8, ... 128.
+.TP
+.BI \-S " logical-sector-size"
+Specify the number of bytes per logical sector.  Must be a power of 2
+and greater than or equal to 512, i.e. 512, 1024, 2048, 4096, 8192,
+16384, or 32768.
+.TP
+.B \-v
+Verbose execution.
+.SH BUGS
+.B mkdosfs
+can not create boot-able file systems. This isn't as easy as you might
+think at first glance for various reasons and has been discussed a lot
+already.
+.B mkdosfs
+simply will not support it ;)
+.SH AUTHOR
+Dave Hudson - <dave@humbug.demon.co.uk>; modified by Peter Anvin
+<hpa@yggdrasil.com>. Fixes and additions by Roman Hodek
+<roman@hodek.net> for Debian/GNU Linux.
+.SH ACKNOWLEDGMENTS
+.B mkdosfs
+is based on code from
+.BR mke2fs
+(written by Remy Card - <card@masi.ibp.fr>) which is itself based on
+.BR mkfs
+(written by Linus Torvalds - <torvalds@cs.helsinki.fi>).
+.SH SEE ALSO
+.BR dosfsck (8),
+.BR dosfslabel (8),
+.BR mkfs (8)
