fdisk is a command-line utility for disk partitioning. It has been part of DOS, DR FlexOS, IBM OS/2, and early versions of Microsoft Windows, as well as certain ports of FreeBSD,[2] NetBSD,[3] OpenBSD,[4] DragonFly BSD[5] and macOS[6] for compatibility reasons. Windows 2000 and its successors have replaced fdisk
with a more advanced tool called diskpart
.
Developer(s) | Robert Baron, IBM, Microsoft, Digital Research, Datalight, Novell, Brian E. Reifsnyder |
---|---|
Initial release | 1983, 40–41 years ago |
Operating system | MS-DOS, PC DOS, FlexOS, SISNE plus, OS/2, eComStation, ArcaOS, Windows, DR DOS, ROM-DOS, FreeDOS, PTS-DOS, *BSD,[1] SysV |
Type | Command |
License | MS-DOS, PC DOS, FlexOS, OS/2, Windows, DR DOS, ROM-DOS, PTS-DOS: Proprietary commercial software FreeDOS: GNU GPLv2 |
Implementations
editDOS
editIBM introduced the first version of fdisk
(officially dubbed "Fixed Disk Setup Program") in March 1983, with the release of the IBM PC/XT computer (the first PC to store data on a hard disk) and the IBM PC DOS 2.0 operating system. fdisk
version 1.0 can create one FAT12 partition, delete it, change the active partition, or display partition data. fdisk
writes the master boot record, which supports up to four partitions. The other three were intended for other operating systems such as CP/M-86 and Xenix, which were expected to have their own partitioning utilities.
Microsoft first added fdisk
to MS-DOS in version 3.2.[7] MS-DOS versions 2.0 through 3.10 included OEM-specific partitioning tools, which may have been named fdisk
.
PC DOS 3.0, released in August 1984, added support for FAT16 partitions to handle larger hard disks more efficiently. PC DOS 3.30, released in April 1987, added support for extended partitions. (These partitions do not store data directly but can contain up to 23 logical drives.) In both cases, fdisk
was modified to work with FAT16 and extended partitions. Support for FAT16B was first added to Compaq's fdisk
in MS-DOS 3.31. FAT16B later became available with MS-DOS and PC DOS 4.0.
The undocumented /mbr
switch in fdisk
, which could repair the master boot record, soon became popular.
IBM PC DOS 7.10 shipped with the new fdisk32
utility.
ROM-DOS,[8] DR DOS 6.0[9] FlexOS,[10] PTS-DOS 2000 Pro,[11] and FreeDOS,[12] include an implementation of the fdisk
command.
Windows
editWindows 95, Windows 98, and Windows ME shipped with a derivative of the MS-DOS fdisk
. Windows 2000 and its successors, however, came with the more advanced diskpart
and the graphical Disk Management utilities.
Starting with Windows 95 OSR2, fdisk
supports the FAT32 file system.[13]
The version of fdisk
that ships with Windows 95 does not report the correct size of a hard disk that is larger than 64 GB. An updated fdisk
is available from Microsoft to correct this issue.[14] In addition, fdisk
cannot create partitions larger than 512 GB, even though FAT32 supports partitions as big as 2 TB. This limitation applies to all versions of fdisk
supplied with Windows 95 OSR 2.1, Windows 98 and Windows ME.
IBM OS/2
editBefore version 4.0, OS/2 shipped with two partition table managers. These were the text mode fdisk[15] and the graphical fdiskpm.[16] The two have identical functionality, and can manipulate both FAT partitions and the more advanced HPFS partitions.
OS/2 4.5 and higher (including eComStation and ArcaOS) can use the JFS file system, as well as FAT and HPFS. They replaced fdisk
with the Logical Volume Manager (LVM).
Mach and 386BSD
edit
fdisk
for Mach Operating System was written by Robert Baron. It was ported to 386BSD by Julian Elischer,[17] and the implementation is being used by FreeBSD,[2] NetBSD[3] and DragonFly BSD,[5] all as of 2019, as well as the early versions of OpenBSD between 1995 and 1997 before OpenBSD 2.2.[1]
Tobias Weingartner re-wrote fdisk
in 1997 before OpenBSD 2.2,[4] which has subsequently been forked by Apple Computer, Inc in 2002, and is still used as the basis for fdisk
on macOS as of 2019.[6]
For native partitions, BSD systems traditionally use BSD disklabel, and fdisk
partitioning is supported only on certain architectures (for compatibility reasons) and only in addition to the BSD disklabel (which is mandatory).
Linux
editIn Linux, fdisk
is a part of a standard package distributed by the Linux Kernel organization, util-linux
. The original program was written by Andries E. Brouwer and A. V. Le Blanc and was later rewritten by Karel Zak and Davidlohr Bueso when they forked the util-linux
package in 2006. An alternative, ncurses-based program, cfdisk, allows users to create partition layouts via a text-based user interface (TUI).[18]
See also
editReferences
edit- ^ a b "fdisk(8) — PC slice table (MBR) maintenance program". System Manager's Manual. FreeBSD, NetBSD, OpenBSD, DragonFly BSD.
- ^ a b "fdisk — PC slice table maintenance utility". BSD Cross Reference. FreeBSD.
- "fdisk -- PC slice table maintenance utility". FreeBSD Manual Pages.
- ^ a b "fdisk — MS-DOS partition maintenance program". BSD Cross Reference. NetBSD.
- ^ a b "fdisk — partition table maintenance program". BSD Cross Reference. OpenBSD.
- "fdisk — partition table maintenance program". OpenBSD manual page server.
- ^ a b "fdisk — PC slice table (MBR) maintenance program". BSD Cross Reference. DragonFly BSD.
- "fdisk - PC slice table (MBR) maintenance program". DragonFly On-Line Manual Pages.
- ^ a b "fdisk.tproj/fdisk.8", macOS 10.14.1, Apple, archived from the original on 2019-04-11, retrieved 2019-04-11
- ^ Wolverton, Van (2003). Running MS-DOS Version 6.22 (20th Anniversary Edition), 6th Revised edition. Microsoft Press. ISBN 0-7356-1812-7.
- ^ "Datalight ROM-DOS User's Guide" (PDF). www.datalight.com.
- ^ DR DOS 6.0 User Guide Optimisation and Configuration Tips
- ^ http://www.bitsavers.org/pdf/digitalResearch/flexos/1073-2003_FlexOS_Users_Guide_V1.3_Nov86.pdf Archived 2019-09-25 at the Wayback Machine [bare URL PDF]
- ^ "PTS-DOS 2000 Pro User Manual" (PDF). Buggingen, Germany: Paragon Technology GmbH. 1999. Archived (PDF) from the original on 2018-05-12. Retrieved 2018-05-12.
- ^ "ibiblio.org FreeDOS Group -- FreeDOS Base". www.ibiblio.org. Retrieved 2020-06-03.
- ^ "How to Use the Fdisk and Format Tools to Partition or Repartition a Hard Disk". Support (6.0 ed.). Microsoft. 28 June 2012.
- ^ "Fdisk Does Not Recognize Full Size of Hard Disks Larger than 64 GB". Support (4.0 ed.). Microsoft. 24 August 2012.
- ^ "JaTomes Help - OS/2 Commands". Archived from the original on 2019-04-14. Retrieved 2019-06-20.
- ^ "JaTomes Help - OS/2 Commands". Archived from the original on 2019-04-14. Retrieved 2019-06-20.
- ^ "Fdisk".
- ^ Sharma, Deepesh (2021-02-22). "How to Create, Resize and Delete Linux Partitions With Cfdisk". MUO. Retrieved 2023-05-15.
Further reading
edit- Wolverton, Van (1990). MS-DOS Commands: Microsoft Quick Reference, 4th Revised edition. Microsoft Press. ISBN 978-1556152894.
- Kathy Ivens; Brian Proffit (1993). OS/2 Inside & Out. Osborne McGraw-Hill. ISBN 978-0078818714.
- Tim O'Reilly; Troy Mott; Walter Glenn (1999). Windows 98 in a Nutshell: A Desktop Quick Reference. O'Reilly. ISBN 978-1565924864.