파티션 형식(Partition Type, Partition ID) 정보
1. 위키피디아의 Partition type
2. Andries E. Brouwer 의 Partition types
이 자료는 해당 문서의 내용을 가져온 것입니다. 둘은 동일한 내용을 다루고 있으며 편한 쪽으로 보시면 됩니다. 아래의 바로 보기 링크를 클릭하시면 현재 글의 해당 내용으로 바로 이동합니다.
1. 위키피디아 - Partition Type 바로 보기
2. Andries E. Brouwer - Partition Types 바로 보기
1. Wikipedia - Partition Type
Partition ID | Introduction | Support | Description |
---|---|---|---|
0x00 | IBM | All | Empty partition entry |
0x01 | Microsoft | DOS 2.0+ | FAT12 as primary partition in first physical 32 MB of disk or as logical drive anywhere on disk (else use 0x06 instead) |
0x02 | Microsoft, SCO | XENIX | XENIX root |
0x03 | Microsoft, SCO | XENIX | XENIX usr |
0x04 | Microsoft | DOS 3.0+ | FAT16 with less than 65536 sectors (32 MB). As primary partition it must reside in first physical 32 MB of disk, or as logical drive anywhere on disk (else use 0x06 instead). |
0x05 | IBM | DOS (3.2) 3.3+ | Extended partition with CHS addressing |
0x06 | Compaq | DOS 3.31+ | FAT16B with 65536 or more sectors. It must reside in first physical 8 GB of disk, unless used for logical drives in an 0x0F extended partition (else use 0x0E instead). Also used for FAT12 and FAT16 volumes in primary partitions if they are not residing in first physical 32 MB of disk.[nb 1] |
0x07 | Microsoft, IBM | OS/2 | IFS |
IBM | OS/2, Windows NT | HPFS | |
Microsoft | Windows NT | NTFS | |
Microsoft | Windows Embedded CE | exFAT | |
Advanced Unix | |||
Quantum Software Systems | QNX 2 | QNX "qnx" (pre-1988 only)[2][nb 2] | |
0x08 | Commodore | Commodore MS-DOS 3.x | Logical sectored FAT12 or FAT16[3][nb 3] |
IBM | OS/2 1.0-1.3 | OS/2 | |
IBM | AIX | AIX | |
Quantum Software Systems | QNX 1.x/2.x | QNX "qny"[2][nb 2] | |
SplitDrive | |||
Dell | partition spanning multiple drives | ||
0x09 | IBM | AIX | AIX bootable |
Quantum Software Systems | QNX 1.x/2.x | QNX "qnz"[2][nb 2] | |
Mark Williams Company | Coherent | Coherent file system | |
0x0A | IBM | OS/2 | OS/2 Boot Manager[nb 4] |
Mark Williams Company | Coherent | Coherent swap partition | |
Unisys | OPUS | Open Parallel Unisys Server | |
0x0B | Microsoft | DOS 7.1+ | FAT32 with CHS addressing |
0x0C | Microsoft | DOS 7.1+ | FAT32X with LBA |
0x0E | Microsoft | DOS 7.0+ | FAT16X with LBA |
0x0F | Microsoft | DOS 7.0+ | Extended partition with LBA |
0x11 | Leading Edge | Leading Edge MS-DOS 3.x | Logical sectored FAT12 or FAT16[3][nb 3] |
IBM | OS/2 Boot Manager | Hidden FAT12 (corresponds with 0x01)[nb 4] | |
0x12 | Compaq | configuration partition (bootable FAT)[4] | |
Compaq | Compaq Contura | hibernation partition[4] | |
NCR | diagnostics and firmware partition (bootable FAT)[4] | ||
Intel | service partition (bootable FAT)[4] (see 0x98) | ||
IBM | Rescue and Recovery partition[4] | ||
0x14 | AST | AST MS-DOS 3.x | Logical sectored FAT12 or FAT16[3][nb 3] |
IBM | OS/2 Boot Manager | Hidden FAT16 (corresponds with 0x04)[nb 4] | |
0x15 | IBM | OS/2 Boot Manager | Hidden extended partition with CHS addressing (corresponds with 0x05)[nb 4] |
0x16 | IBM | OS/2 Boot Manager | Hidden FAT16B (corresponds with 0x06)[nb 4] |
0x17 | IBM | OS/2 Boot Manager | Hidden IFS (corresponds with 0x07)[nb 4] |
Hidden HPFS (corresponds with 0x07)[nb 4] | |||
Hidden NTFS (corresponds with 0x07)[nb 4] | |||
Hidden exFAT (corresponds with 0x07)[nb 4] | |||
0x18 | AST | AST Zero Volt Suspend or SmartSleep partition | |
0x19 | Willow Schlanger | Willowtech Photon coS | Willowtech Photon coS (see 0x20) |
0x1B | IBM | OS/2 Boot Manager | Hidden FAT32 (corresponds with 0x0B)[nb 4] |
0x1C | IBM | OS/2 Boot Manager | Hidden FAT32X with LBA (corresponds with 0x0C)[nb 4] |
0x1E | IBM | OS/2 Boot Manager | Hidden FAT16X with LBA (corresponds with 0x0E)[nb 4] |
0x1F | IBM | OS/2 Boot Manager | Hidden extended partition with LBA addressing (corresponds with 0x0F)[nb 4] |
0x20 | Microsoft | Windows Mobile | Windows Mobile update XIP |
Willow Schlanger | Willowsoft Overture File System (OFS1) (see 0x19) | ||
0x21 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
Dave Poirier | Oxygen | FSo2 (Oxygen File System) (see 0x22) | |
0x22 | Dave Poirier | Oxygen | Oxygen Extended Partition Table (see 0x21) |
0x23 | Microsoft, IBM | Reserved | |
Microsoft | Windows Mobile | Windows Mobile boot XIP | |
0x24 | NEC | NEC MS-DOS 3.30 | Logical sectored FAT12 or FAT16[3][nb 3] |
0x25 | Microsoft | Windows Mobile | Windows Mobile IMGFS |
0x26 | Microsoft, IBM | Reserved | |
0x27 | Microsoft | Windows | Windows recovery environment (RE) partition (hidden NTFS partition type 0x07)[5] |
Acer | PQservice | FAT32 or NTFS rescue partition | |
MirOS BSD | MirOS partition | ||
RooterBOOT | RooterBOOT kernel partition (contains a raw ELF Linux kernel, no filesystem) | ||
0x2A | Kurt Skauen | AtheOS | AtheOS file system (AthFS, AFS) |
0x2B | SyllableSecure (SylStor), a variant of AthFS | ||
0x31 | Microsoft, IBM | Reserved | |
0x32 | Alien Internet Services | NOS | |
0x33 | Microsoft, IBM | Reserved | |
0x34 | Microsoft, IBM | Reserved | |
0x35 | IBM | OS/2 Warp Server / eComStation | JFS (OS/2 implementation of AIX Journaling Filesystem), non-bootable |
0x36 | Microsoft, IBM | Reserved | |
0x38 | Timothy Williams | THEOS | THEOS version 3.2, 2 GB partition |
0x39 | Bell Labs | Plan 9 | Plan 9 edition 3 partition (sub-partitions described in second sector of partition) |
Timothy Williams | THEOS | THEOS version 4 spanned partition | |
0x3A | Timothy Williams | THEOS | THEOS version 4, 4 GB partition |
0x3B | Timothy Williams | THEOS | THEOS version 4 extended partition |
0x3C | PowerQuest | PartitionMagic | PqRP (PartitionMagic in progress)[6] |
0x3D | PowerQuest | PartitionMagic | Hidden NetWare |
0x40 | PICK Systems | PICK | PICK R83 |
VenturCom | Venix | Venix 80286 | |
0x41 | Personal RISC | Personal RISC Boot | |
Linux | Linux | Old Linux/Minux (disk shared with DR DOS 6.0) (corresponds with 0x81) | |
PowerPC | PowerPC | PPC PReP (Power PC Reference Platform) Boot | |
0x42 | Peter Gutmann | SFS | Secure Filesystem (SFS) |
Linux | Linux | Old Linux swap (disk shared with DR DOS 6.0) (corresponds with 0x82) | |
Microsoft | Windows 2000 | Dynamic extended partition marker | |
0x43 | Linux | Linux | Old Linux native (disk shared with DR DOS 6.0) (corresponds with 0x83) |
0x44 | Wildfile | GoBack | Norton GoBack, WildFile GoBack, Adaptec GoBack, Roxio GoBack |
0x45 | Priam | Priam (see also 0x5C) | |
Boot-US boot manager | |||
Jochen Liedtke, GMD | EUMEL/ELAN | EUMEL/ELAN | |
0x46 | Jochen Liedtke, GMD | EUMEL/ELAN | EUMEL/ELAN |
0x47 | Jochen Liedtke, GMD | EUMEL/ELAN | EUMEL/ELAN |
0x48 | Jochen Liedtke, GMD | EUMEL/ELAN | EUMEL/ELAN |
0x4A | Mark Aitchison | ALFS/THIN | ALFS/THIN advanced lightweight filesystem for DOS |
0x4C | ETH Zurich | ETH Oberon | Aos (A2) filesystem (76) |
0x4D | Quantum Software Systems | QNX 4.x | Primary QNX POSIX volume on disk[2][nb 2] |
0x4E | Quantum Software Systems | QNX 4.x | Secondary QNX POSIX volume on disk[2][nb 2] |
0x4F | Quantum Software Systems | QNX 4.x | Tertiary QNX POSIX volume on disk[2][nb 2] |
ETH Zurich | ETH Oberon | Nat filesystem (79) | |
0x50 | ETH Zurich | ETH Oberon | Alternative Nat filesystem (80) |
OnTrack | DiskManager | Read-only partition (old) | |
LynxOS | Lynx RTOS | ||
0x51 | Novell | ||
OnTrack | DiskManager 6 | Read-write partition (Aux 1) | |
0x52 | CP/M | ||
Microport | System V/AT | ||
0x53 | OnTrack | DiskManager 6 | Aux 3 |
0x54 | OnTrack | DiskManager 6 | Dynamic Drive Overlay (DDO) |
0x55 | MicroHouse / StorageSoft | EZ-Drive | EZ-Drive, Maxtor, MaxBlast, or DriveGuide INT 13h redirector volume |
0x56 | AT&T | AT&T MS-DOS 3.x | Logical sectored FAT12 or FAT16[3][nb 3] |
MicroHouse / StorageSoft | EZ-Drive | DiskManager partition converted to EZ-BIOS | |
Golden Bow | VFeature | VFeature partitionned volume | |
0x57 | MicroHouse / StorageSoft | DrivePro | |
Novell | VNDI partition | ||
0x5C | Priam | EDISK | Priam EDisk Partitioned Volume (see also 0x45) |
0x64 | Novell | NetWare | NetWare File System 286 |
0x65 | Novell | NetWare | NetWare File System 386 |
0x78 | Geurt Vos | XOSL bootloader filesystem[citation needed] | |
0x80 | Andrew Tanenbaum | Minix | Old Minix file system |
0x81 | Andrew Tanenbaum | Minix | MINIX file system (corresponds with 0x41) |
0x82 | GNU/Linux | Linux swap space (corresponds with 0x42) | |
Sun Microsystems | Solaris | ||
0x83 | GNU/Linux | Any native Linux file system (corresponds with 0x43) | |
0x84 | Microsoft | Hibernation (suspend to disk, S2D)[4][7] | |
0x85 | GNU/Linux | Linux extended[8] | |
0x86 | Microsoft | Legacy FT FAT16 | |
0x87 | Microsoft | Legacy FT NTFS | |
0x88 | GNU/Linux | Linux plaintext | |
0x8B | Microsoft | Legacy FT FAT32 | |
0x8C | Microsoft | Legacy FT FAT32 with LBA | |
0x8D | FreeDOS | Free FDISK | Hidden FAT12 (corresponds with 0x01)[nb 6] |
0x8E | GNU/Linux | Linux | Linux LVM |
0x90 | FreeDOS | Free FDISK | Hidden FAT16 (corresponds with 0x04)[nb 6] |
0x91 | FreeDOS | Free FDISK | Hidden extended partition with CHS addressing (corresponds with 0x05)[nb 6] |
0x92 | FreeDOS | Free FDISK | Hidden FAT16B (corresponds with 0x06)[nb 6] |
0x97 | FreeDOS | Free FDISK | Hidden FAT32 (corresponds with 0x0B)[nb 6] |
0x98 | FreeDOS | Free FDISK | Hidden FAT32X (corresponds with 0x0C)[nb 6] |
Intel | service partition (bootable FAT)[4] (see 0x12) | ||
0x9A | FreeDOS | Free FDISK | Hidden FAT16X (corresponds with 0x0E)[nb 6] |
0x9B | FreeDOS | Free FDISK | Hidden extended partition with LBA (corresponds with 0x0F)[nb 6] |
0xA0 | Hewlett-Packard | Diagnostic partition for HP laptops[4] | |
0xA1 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
0xA3 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
0xA4 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
0xA5 | FreeBSD | BSD | BSD slice[9] |
0xA6 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
OpenBSD | OpenBSD | OpenBSD slice | |
0xA7 | NeXT | NeXTSTEP | |
0xA8 | Apple | Apple Mac OS X[nb 7] | |
0xA9 | NetBSD | NetBSD | NetBSD slice[10] |
0xAB | Apple | Apple Mac OS X boot[nb 7] | |
0xAF | Apple | Apple Mac OS X HFS and HFS+[nb 7] | |
0xB1 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
QNX Software Systems | QNX 6.x | QNX Neutrino power-safe file system[nb 2] | |
0xB2 | QNX Software Systems | QNX 6.x | QNX Neutrino power-safe file system[nb 2] |
0xB3 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
QNX Software Systems | QNX 6.x | QNX Neutrino power-safe file system[nb 2] | |
0xB4 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
0xB6 | Hewlett Packard | HP Volume Expansion (SpeedStor)[nb 5] | |
0xC0 | Novell, IMS | DR-DOS, Multiuser DOS, REAL/32 | Secured FAT partition (smaller than 32 MB)[nb 8][nb 9] |
0xC1 | Digital Research | DR DOS 6.0+ | Secured FAT12 (corresponds with 0x01)[nb 8] |
0xC4 | Digital Research | DR DOS 6.0+ | Secured FAT16 (corresponds with 0x04)[nb 8] |
0xC5 | Digital Research | DR DOS 6.0+ | Secured extended partition with CHS addressing (corresponds with 0x05)[nb 8] |
0xC6 | Digital Research | DR DOS 6.0+ | Secured FAT16B (corresponds with 0x06)[nb 8] |
0xCB | Caldera | DR-DOS 7.0x | Secured FAT32 (corresponds with 0x0B)[nb 8] |
0xCC | Caldera | DR-DOS 7.0x | Secured FAT32X (corresponds with 0x0C)[nb 8] |
0xCE | Caldera | DR-DOS 7.0x | Secured FAT16X (corresponds with 0x0E)[nb 8] |
0xCF | Caldera | DR-DOS 7.0x | Secured extended partition with LBA (corresponds with 0x0F)[nb 8] |
0xD0 | Novell, IMS | Multiuser DOS, REAL/32 | Secured FAT partition (larger than 32 MB)[nb 10][nb 9] |
0xD1 | Novell | Multiuser DOS | Secured FAT12 (corresponds with 0x01)[nb 10] |
0xD4 | Novell | Multiuser DOS | Secured FAT16 (corresponds with 0x04)[nb 10] |
0xD5 | Novell | Multiuser DOS | Secured extended partition with CHS addressing (corresponds with 0x05)[nb 10] |
0xD6 | Novell | Multiuser DOS | Secured FAT16B (corresponds with 0x06)[nb 10] |
0xDB | Digital Research | CP/M-86, Concurrent CP/M-86, Concurrent DOS | CP/M-86, Concurrent CP/M-86, Concurrent DOS[11] |
0xDE | Dell | Dell diagnostic partition[4] | |
0xE5 | Tandy | Tandy MS-DOS | Logical sectored FAT12 or FAT16[3][nb 3] |
0xEB | Be Inc. | BeOS, Haiku | BFS |
0xED | Matthias Paul | Sprytix | EDC |
0xEE | Microsoft | EFI | EFI protective MBR[12] |
0xEF | Intel | EFI | EFI system partition can be a FAT file system |
0xF2 | Sperry IT, Unisys, Digital Research | Sperry IT MS-DOS 3.x, Unisys MS-DOS 3.3, Digital Research DOS Plus 2.1 | Logical sectored FAT12 or FAT16[3][nb 3] |
0xFB | VMware | VMware | VMware VMFS |
0xFC | VMware | VMware | VMware VMKCORE |
0xFD | GNU/Linux | Linux | Linux RAID auto |
0xFE | IBM | IBM IML partition[4] | |
0xFF | Microsoft | XENIX | XENIX bad block table |
2. Andries E. Brouwer - Partition Types
1. List of partition identifiers for PCs
Below a list of the known partition IDs (system indicators) of the various operating systems, file systems, boot managers, etc. For the various systems, short descriptions are given, in the cases where I have some info. There seem to be two other major such lists: Ralf Brown's (see interrupt list under Int 19) and Hale Landis' but the present one is more correct and more complete. (However, these two URLs are a valuable source for other information.) See also the old Powerquest table and the specification for DOS-type partition tables.
Copyright (C) Andries E. Brouwer 1995-2012. Link to this list - do not copy it. It is being updated regularly. Additions, corrections, explanations are welcome. (Mail to aeb@cwi.nl.)
- ID Name
- 00 Empty
-
To be precise: this is not used to designate unused area on the disk, but marks an unused partition table entry. (All other fields should be zero as well.) Unused area is not designated. Plan9 assumes that it can use everything not claimed for other systems in the partition table.
- 01 DOS 12-bit FAT
-
DOS is a family of single-user operating systems for PCs. 86-DOS (`QDOS' - Quick and Dirty OS) was a CP/M-like operating system written by Tim Paterson of Seattle Computer Products (1979). Microsoft bought it, renamed it to MS-DOS 1.0 and sold it to IBM (1980) to be delivered together with the first IBM PCs (1981). MS-DOS 2.0 (1983) was rather different, and designed to be somewhat Unix-like. It supported a hard disk (up to 16MB; up to 32MB for version 2.1). Version 3.3+ added the concept of partitions, where each partition is at most 32MB. (Compaq DOS 3.31 relaxed this restriction.) Since version 4.0 partitions can be 512 MB. Version 5.0 supports partitions up to 2 GB. Several clones exist: DR-DOS (from Digital Research, later part of Novell and called NovellDOS or NDOS, then owned by Caldera and called OpenDOS, then by its subsidiary Lineo who named it back to DR-DOS. See http://www.drdos.com/), PC-DOS (from IBM), FreeDOS, ... See Types of DOS. See comp.os.msdos.* and MSDOS partitioning summary. The type 01 is for partitions smaller than 16 MB.
- 02 XENIX root
- 03 XENIX /usr
-
Xenix is an old port of Unix V7. Microsoft Xenix OS was announced August 1980, a portable and commercial version of the Unix operating system for the Intel 8086, Zilog Z8000, Motorola M68000 and Digital Equipment PDP-11. Microsoft introduces XENIX 3.0 in April 1983. ( Timeline of Microcomputers) SCO delivered its first Xenix for 8088/8086 in 1983. See comp.unix.xenix.sco.
- 04 DOS 3.0+ 16-bit FAT (up to 32M)
-
Matthias Paul writes: Some old DOS versions have had a bug which requires this partition to be located in the 1st physical 32 MB of the hard disk, hence for compatibility with these old issues, partitions located elsewhere should better be assigned the ID FAT16B (06h).
- 05 DOS 3.3+ Extended Partition
-
Supports at most 8.4 GB disks: with type 05 DOS/Windows will not use the extended BIOS call, even if it is available. See type 0f below. Using type 05 for extended partitions beyond 8 GB may lead to data corruption with MSDOS.
An extended partition is a box containing a linked list of logical partitions. This chain (linked list) can have arbitrary length, but some FDISK versions refuse to make more logical partitions than there are drive letters available (e.g. MS-DOS LASTDRIVE=26 is good for at most 24 disk partitions; Novell DOS 7+ allows LASTDRIVE=32).
- 06 DOS 3.31+ 16-bit FAT (over 32M)
-
Partitions, or at least the FAT16 filesystems created on them, are at most 2 GB for DOS and Windows 95/98 (at most 65536 clusters, each at most 32 KB). Windows NT can create up to 4 GB FAT16 filesystems (using 64 KB clusters), but these cause problems for DOS and Windows 95/98. Note that VFAT is 16-bit FAT with long filenames; FAT32 is a different filesystem.
- 07 OS/2 IFS (e.g., HPFS)
-
IFS = Installable File System. The best known example is HPFS. OS/2 will only look at partitions with ID 7 for any installed IFS (that's why the EXT2.IFS packet includes a special "Linux partition filter" device driver to fool OS/2 into thinking Linux partitions have ID 07). (Kai Henningsen (
kai@khms.westfalen.de
)) - 07 Windows NT NTFS
-
Filesystem introduced in Windows NT 3.1. It is rumoured that the Windows NT boot partition must be primary, and within the first 2 GB of the disk.
- 07 exFAT
-
Extended FAT, a.k.a. FAT64. Available in Microsoft Windows since CE 6.0 and Vista SP1. Allows 32 MB clusters and very large disks and files.
- 07 Advanced Unix
- 07 QNX2.x pre-1988 (see below under IDs 4d-4f)
- 08 OS/2 (v1.0-1.3 only)
- 08 AIX boot partition
- 08 SplitDrive
- 08 Commodore DOS
-
Matthias Paul writes: "This indicates a Commodore MS-DOS 3.x logically sectored FAT partition."
- 08 DELL partition spanning multiple drives
- 08 QNX 1.x and 2.x ("qny")
-
(according to QNX Partitions)
- 09 AIX data partition
-
Some reports interchange AIX boot & data. AIX is IBM's version of Unix. See comp.unix.aix.
- 09 Coherent filesystem
-
Coherent was a UNIX-type OS for the 286-386-486, marketed by Mark Williams Company led by Bob Swartz, renowned for its good documentation. It was introduced in 1980 and died 1 Feb 1995. The last versions are V3.2 for 286-386-486 and V4.0 (May 1992, using protected mode) for 386-486 only. It sold for $99 a copy, and the FAQ says that 40000 copies have been sold. See comp.os.coherent and this page. A Coherent partition has to be primary.
- 09 QNX 1.x and 2.x ("qnz")
-
(according to QNX Partitions)
- 0a OS/2 Boot Manager
-
OS/2 is the operating system designed by Microsoft and IBM to be the successor of MS-DOS. Dropped by Microsoft. See comp.os.os2. Windows 2000 actively tries to destroy OS/2 Boot Manager. See below.
- 0a Coherent swap partition
- 0a OPUS
-
Open Parallel Unisys Server. See Unisys.
- 0b WIN95 OSR2 FAT32
-
Partitions up to 2047GB. See Partition Types
- 0c WIN95 OSR2 FAT32, LBA-mapped
-
Extended-INT13 equivalent of 0b.
- 0e WIN95: DOS 16-bit FAT, LBA-mapped
- 0f WIN95: Extended partition, LBA-mapped
-
Windows 95 uses 0e and 0f as the extended-INT13 equivalents of 06 and 05. For the problems this causes, see Possible data loss with LBA and INT13 extensions. (Especially when going back and forth between MSDOS and Windows 95, strange things may happen with a type 0e or 0f partition.) Windows NT does not recognize the four W95 types 0b, 0c, 0e, 0f ( Win95 Partition Types Not Recognized by Windows NT). DRDOS 7.03 does not support this type (but DRDOS 7.04 does).
- 10 OPUS (?)
-
Maybe decimal, for type 0a.
- 11 Hidden DOS 12-bit FAT
-
When it boots a DOS partition, OS/2 Boot Manager will hide all primary DOS partitions except the one that is booted, by changing its ID: 01, 04, 06 becomes 11, 14, 16. Also 07 becomes 17.
- 11 Leading Edge DOS 3.x logically sectored FAT
-
(According to Matthias Paul.)
- 12 Configuration/diagnostics partition
-
ID 12 (decimal 18) is used by Compaq for their configuration utility partition. It is a FAT-compatible partition (about 6 MB) that boots into their utilities, and can be added to a LILO menu as if it were MS-DOS. (David C. Niemi) Stephen Collins reports a 12 MB partition with ID 12 on a Compaq 7330T. Tigran A. Aivazian reports a 40 MB partition with ID 12 on a 64 MB Compaq Proliant 1600. ID 12 is used by the Compaq Contura to denote its hibernation partition. (dan@fch.wimsey.bc.ca)
NCR has used ID 0x12 MS-DOS partitions for diagnostics and firmware support on their WorldMark systems since the mid-90s. DataLight's ROM-DOS has replaced MS-DOS on more recent systems. Partition sizes were once 72M (MS-DOS) but are now 40M (ROM-DOS).
Intel has begun offering ROM-DOS based "Service Partition" support on many OEM systems. This support initially used ID 0x98 but has recently changed to ID 0x12. Intel provides their own support for this partition in the form of a System Resource CD. Partition size has remained constant at 40M. See e.g. sds2.pdf. (Chuck Rouillard)
IBM also uses 0x12 for its Rescue and Recovery partition on Thinkpad laptops. See also thinkwiki.org.
- 14 Hidden DOS 16-bit FAT <32M
-
(Ralf Brown's interrupt list adds: `ID 14 resulted from using Novell DOS 7.0 FDISK to delete Linux Native partition')
- 14 AST DOS with logically sectored FAT
-
AST MS-DOS 3.x was an OEM version supporting 8 instead of the usual 4 partition entries in the MBR. These special MBRs can be detected by another signature in the MBR stored in front of the partition table.
- 16 Hidden DOS 16-bit FAT >=32M
- 17 Hidden IFS (e.g., HPFS)
- 18 AST SmartSleep Partition
-
Ascentia laptops have a `Zero Volt Suspend Partition' or `SmartSleep Partition' of size 2MB+memory size. See AST. Ralf Brown calls this the "AST Windows swapfile".
- 19 Unused
-
Claimed for Willowtech Photon coS (completely optimized system) by Willow Schlanger
willow@dezine.net
. See dejanews. - 1b Hidden WIN95 OSR2 FAT32
- 1c Hidden WIN95 OSR2 FAT32, LBA-mapped
-
Sometimes a hidden IBM rescue partition.
- 1e Hidden WIN95 16-bit FAT, LBA-mapped
- 20 Unused
-
Rumoured to be used by Willowsoft Overture File System (OFS1), if there is such a thing.
- 21 Reserved
-
(according to delorie). And Powerquest writes `Officially listed as reserved (HP Volume Expansion, SpeedStor variant)'. See also ID a1.)
- 21 Unused
-
Claimed for FSo2 (Oxygen File System) by Dave Poirier (
ekstazya@sprint.ca
). See dejanews. - 22 Unused
-
Claimed for Oxygen Extended Partition Table by
ekstazya@sprint.ca
. See dejanews. - 23 Reserved
- 24 NEC DOS 3.x
-
This is NEC MS-DOS 3.30 logically sectored FAT. Similar to type 14 above, the MBR could have up to 8 partition entries.
- 26 Reserved
- 27 PQservice
-
Acer laptop hidden rescue partition. Can be FAT32 or NTFS. Press Alt-F10 during boot to start this. Also other manufacturers use this type for their rescue partition.
- 27 Windows RE hidden partition
-
On MBR disks, type 0x27. On GPT disks, GUID: DE94BBA4-06D1-4D40-A16A-BFD50179D6AC. A hidden version of a Windows RE type 0x7 partition with NTFS. When this is installed, reboot and press F8 in order to boot into this Recovery Environment.
- 27 MirOS partition
-
MirOS BSD is a BSD variant.
- 27 RouterBOOT kernel partition
-
See RB500_Linux_SDK. RouterBOOT loads the contents of first partition with type 39 (0x27). If there is no such partition, it displays the message "CF BOOT FAILURE: kernel partition missing!". There is no filesystem on this partition, it contains a raw ELF Linux kernel image.
- 2a AtheOS File System (AFS)
-
AtheOS is an open source operating system written by Kurt Skauen. It is dead now - for a single page, see www.atheos.cx or sourceforge. For the history, see wikipedia. When progress seemed to stop, the project forked and the Syllable OS was started by Kristian van der Vliet (2002). See also wikipedia. It uses the same filesystem, AthFS or AFS, an extension of BeFS, the filesystem of BeOS. There is an attempt at a Linux driver at sourceforge.
- 2b SyllableSecure (SylStor)
-
A variation on AthFS is Sylstor, with added security.
- 31 Reserved
- 32 NOS
-
Simon Butcher (
simonb@alien.net.au
) writes: This type is being used by an operating system being developed by Alien Internet Services in Melbourne Australia called NOS. The id '32' was chosen not only because it's one of the few that are left available, but 32k is the size of the EEPROM the OS was originally targetted for. - 33 Reserved
- 34 Reserved
- 35 JFS on OS/2 or eCS
-
David van Enckevort (
david@mensys.nl
) writes: Type 0x35 is used by OS/2 Warp Server for e-Business, OS/2 Convenience Pack (aka version 4.5) and eComStation (eCS, an OEM version of OS/2 Convenience Pack) for the OS/2 implementation of JFS (IBM AIX Journaling Filesystem). Since JFS is a non-bootable file system, you cannot install eCS to a JFS partition. - 36 Reserved
- 38 THEOS ver 3.2 2gb partition
- 39 Plan 9 partition
-
Plan 9 is an operating system developed at Bell Labs for many architectures. Source is available. See comp.os.plan9. Originally Plan 9 used an unallocated portion at the end of the disk. Plan 9 3rd edition uses partitions of type 0x39, subdivided into subpartitions described in the Plan 9 partition table in the second sector of the partition.
- 39 THEOS ver 4 spanned partition
- 3a THEOS ver 4 4gb partition
- 3b THEOS ver 4 extended partition
-
THEOS is a multiuser multitasking OS for PCs founded by Timothy Williams in 1983. Current release 4.0, previous release 3.2. They say about themselves: `THEOS with over 150,000 customers and over 1,000,000 users around the world brings a mainframe look and feel to computers without the complexity and high maintenance costs. Hundreds of applications exist with networking and Windows integration.' See the Theos home page
- 3c PartitionMagic recovery partition
-
Cody Batt (
codyb@powerquest.com
) writes: When a PowerQuest product like PartitionMagic or Drive Image makes changes to the disk, it first changes the type flag to 0x3C so that the OS won't try to modify it etc. At the end of the process, it gets changed back to what it was at first. So, the only time you should see a 0x3C type flag is if the process was interrupted somehow (power outage, user reboot etc). If you change it back manually with a partition table editor or something then most of the time everything is okay. - 3d Hidden NetWare
-
According to Powerquest.
- 40 Venix 80286
-
A very old Unix-like operating system for PCs.
- 40 PICK
-
Ross Stell writes: The PICK multi-user operating system, developed in 1965 by Don Nelson and Dick Pick to run on an IBM 360 mainframe and implemented during the 1970s by many licensee companies on their minicomputers, was ported in 1983 by PICK Systems (http://www.marcomguy.com/pdf/CORP.PDF) to operate on the IBM PC-XT and later the AT and compatible PCs. This release is known as R83. Later (1989), PICK Systems produced Advanced PICK (AP) which operates within a Windows environment, thus obviating the need for a dedicated hard disk partition. See also Wikipedia.
- 41 Linux/MINIX (sharing disk with DRDOS)
-
Very old FAQs recommended to use 41 etc instead of 81 etc on a disk shared with DRDOS because DRDOS allegedly disregards the high order bit of the partition type. (Or, rather, uses the high order bit to indicate that the partition is secured.) These types are not used anymore today. Roger Wolff (
R.E.Wolff@BitWizard.nl
) confirms: I remember installing DRDOS, and getting a few extra drive letters that I didn't expect. Turns out those are my Minix partitions. It is looking at them as a FAT filesystem. Looks like a big mess. After finding no other possibility than to just "not touch those drive letters" I continue with the install. After a few minutes DRDOS automatically decides to write a copy of the FAT into a file on one of my MINIX partitions. Bye bye Minix partition. - 41 Personal RISC Boot
- 41 PPC PReP (Power PC Reference Platform) Boot
- 42 Linux swap (sharing disk with DRDOS)
- 42 SFS (Secure Filesystem)
-
SFS is an encrypted filesystem driver for DOS on 386+ PCs, written by Peter Gutmann.
- 42 Windows 2000 dynamic extended partition marker
-
If a partition table entry of type 0x42 is present in the legacy partition table, then W2K ignores the legacy partition table and uses a proprietary partition table and a proprietary partitioning scheme (LDM or DDM). As the Microsoft KnowledgeBase writes: Pure dynamic disks (those not containing any hard-linked partitions) have only a single partition table entry (type 42) to define the entire disk. Dynamic disks store their volume configuration in a database located in a 1-MB private region at the end of each dynamic disk.
- 43 Linux native (sharing disk with DRDOS)
- 44 GoBack partition
-
GoBack is a utility that records changes made to the disk, allowing you to view or go back to some earlier state. It takes over disk I/O like a Disk Manager would, and stores its logs in its own partition.
- 45 Boot-US boot manager
-
Ulrich Straub (
ustraub@boot-us.de
) writes: The boot manager can be installed to MBR, a separate primary partition or diskette. When installed to a primary partition this partition gets the ID 45h. This partition does not contain a file system, it contains only the boot manager and occupies a single cylinder (below 8 GB). See www.boot-us.com. - 45 Priam
-
According to Powerquest. See also ID 5c.
- 45 EUMEL/Elan
- 46 EUMEL/Elan
- 47 EUMEL/Elan
- 48 EUMEL/Elan
-
Eumel, and later Ergos L3, are multiuser multitasking systems developed by Jochen Liedtke at GMD. It was used at German schools for the computer science education. ( Elan was the programming language used.)
- 4a Mark Aitchison's ALFS/THIN lightweight filesystem for DOS
-
According to Powerquest.
- 4a AdaOS Aquila (Withdrawn)
-
Nick Roberts at some point in time announced that he would use 4a for Aquila, but now plans to use the AODPS 7f.
- 4c Oberon partition
-
See http://www-old.oberon.ethz.ch/betadocu.html and http://www.ocp.inf.ethz.ch/wiki/Documentation/Front. This partition type (decimal 76) is used for the Aos (now A2) filesystem. Type 4f is used for the Nat filesystem. One may have several partitions of this type.
- 4d QNX4.x
- 4e QNX4.x 2nd part
- 4f QNX4.x 3rd part
-
QNX is a POSIX-certified, microkernel, distributed, fault-tolerant OS for the 386 and up, including support for the 386EX in embedded applications. For info see http://www.qnx.com/ or ftp.qnx.com. See also comp.os.qnx. ID 7 is outdated - QNX2 used 07, QNX4.x uses decimal 77, and optionally 78 and 79 for additional QNX partitions on a single drive. See also b1-b3 (decimal 177-179). See QNX Partitions and Neutrino filesystems.
- 4f Oberon partition
-
See http://www-old.oberon.ethz.ch/native/. (The partition ID is given in this posting in comp.lang.oberon. The install instructions say that at most one partition can have this type (decimal 79), and that one needs a different type, like 50 (decimal 80) for a second Oberon system. Moreover, that users of System Commander must avoid types containing the 0x10 bit.) See also type 4c (decimal 76) above.
- 50 OnTrack Disk Manager (older versions) RO
-
Disk Manager is a program of OnTrack, to enable people to use IDE disks that are larger than 504MB under DOS. For info see http://www.ontrack.com. Linux kernel versions older than 1.3.14 do not coexist with DM.
- 50 Lynx RTOS
-
"Beginning with version 3.0, LynxOS gives users the ability to place up to 14 partitions of 2 GB each on both SCSI and IDE drives, for a total of up to 28 GB of file system space." See www.lynuxworks.com.
- 50 Native Oberon (alt)
- 51 OnTrack Disk Manager RW (DM6 Aux1)
- 51 Novell
- 52 CP/M
- 52 Microport SysV/AT
- 53 Disk Manager 6.0 Aux3
- 54 Disk Manager 6.0 Dynamic Drive Overlay (DDO)
- 55 EZ-Drive
-
EZ-Drive is another disk manager (by MicroHouse, 1992). Linux kernel versions older than 1.3.29 do not coexist with EZD. (On 990323 MicroHouse International was acquired by EarthWeb; MicroHouse Solutions split off and changed its name into StorageSoft. MicroHouse Development split off and changed its name into ImageCast. It is StorageSoft that now markets EZDrive and DrivePro.)
- 56 Golden Bow VFeature Partitioned Volume.
-
This is a Non-Standard DOS Volume. (Disk Manager type utility software)
- 56 DM converted to EZ-BIOS
- 56 AT&T MS-DOS 3.x logically sectored FAT.
- 57 DrivePro
-
Doug Anderson (
DougA@ImageCast.com
), with his brother Steve cofounder of MicroHouse (1989), writes: We actually use three different partition types: $55: `StorageSoft EZ-BIOS' - EZ-Drive, Maxtor, MaxBlast, and DriveGuide install this type if the drive needs to be handled by our INT13 redirector. $56: `StorageSoft EZ-BIOS DM Conversion' - Same as $55 but used when a DiskManager "skewed" partition has been converted to EZ-BIOS. $57: `StorageSoft DrivePro' - Used by our DrivePro product. - 57 VNDI Partition
-
(According to
disk.c
in the Netware source. Not in actual use.) - 5c Priam EDisk
-
Priam EDisk Partitioned Volume. This is a Non-Standard DOS Volume. (Disk Manager type utility software)
- 61 SpeedStor
-
Storage Dimensions SpeedStor Volume. This is a Non-Standard DOS Volume. (Disk Manager type utility software)
- 63 Unix System V (SCO, ISC Unix, UnixWare, ...), Mach, GNU Hurd
-
A Unixware 7.1 partition must start below the 4GB limit. (If the /stand/stage3.blm is located past this limit, booting will fail with "FATAL BOOT ERROR: Can't load stage3".)
- 64 PC-ARMOUR protected partition
-
Used by PC-ARMOUR, a disk protection by Dr. A.Solomon, intended to keep the disk inaccessible until the right password was given (and then an int13 hook was loaded above top-of-memory that showed c/h/s 0/0/2, with a copy of the real partition table, when 0/0/1 was requested). (
loekw@worldonline.nl
) - 64 Novell Netware 286, 2.xx
- 65 Novell Netware 386, 3.xx or 4.xx
-
(Novell Netware used to be the main Network Operating System available. Netware 68 or S-Net (1983) was for a Motorola 68000, Netware 86 for an Intel 8086 or 8088. Netware 286 was for an Intel 80286 and existed in various versions that were later merged to Netware 2.2. Netware 386 was a rewrite in C for the Intel 386, later renamed 3.x - it existed at least in versions 3.0, 3.1, 3.10, 3.11, 3.12. Its successor Netware 4.xx had versions 4.00, 4.01, 4.02, 4.10, 4.11. Then came Intranetware.) Netware >= 3.0 uses one partition per drive. It allocates logical Volumes inside these partitions. The volumes can be split over several drives. The filesystem used is called "Turbo FAT"; it only very vaguely resembles the DOS FAT file system. (Kai Henningsen (
kai@khms.westfalen.de
)) - 66 Novell Netware SMS Partition
-
According to
disk.c
in the Netware source. SMS: Storage Management Services. No longer used. - 67 Novell
-
Roman Gruber reports: this code has frozen my version of norton disk-editor (so I think it has to be something special). Jeff Merkey says: 67 is for Wolf Mountain.
- 68 Novell
- 69 Novell Netware 5+, Novell Netware NSS Partition
-
According to
disk.c
in the Netware source. NSS = Novell Storage Services. - 6e ??
- 70 DiskSecure Multi-Boot
- 71 Reserved
- 72 V7/x86
-
Robert Nordier writes: V7/x86, a port of UNIX Version 7 to the PC, is available at www.nordier.com/v7x86.
- 73 Reserved
- 74 Reserved
- 74 Scramdisk partition
-
Scramdisk is freeware and shareware disk encryption software. It supports container files, dedicated partitions (type 0x74) and disks hidden in WAV audio files. (Shaun Hollingworth (
moatlane@btconnect.com
)) - 75 IBM PC/IX
- 76 Reserved
- 77 M2FS/M2CS partition
-
Jeff Merkey writes: 77 is one we are using internally for M2FS/M2CS partitions.
- 77 VNDI Partition
-
(According to
disk.c
in the Netware source. Not in actual use.) - 78 XOSL FS
-
XOSL Bootloader filesystem, see xosl2.com.
- 7e Unused
-
Claimed for F.I.X. by
gruberr@kapsch.net
. See dejanews. - 7f Unused
-
Proposed for the Alt-OS-Development Partition Standard.
- 80 MINIX until 1.4a
- 81 MINIX since 1.4b, early Linux
-
Minix is a Unix-like operating system written by Andy Tanenbaum and students at the Vrije Universiteit, Amsterdam, around 1989-1991. It runs on PCs (8086 and up), MacIntosh, Atari, Amiga, Sparc. Ref: Operating Systems: Design and Implementation, Andrew S. Tanenbaum, Prentice-Hall, ISBN 0-13-637406-9 Since 950601 Minix is freely available - site: ftp.cs.vu.nl. See also comp.os.minix.
- 81 Mitac disk manager
- 82 Prime
- 82 Solaris x86
-
Solaris creates a single partition with id 0x82, then uses Sun disk labels within the partition to split it further. (Brandon S. Allbery (
allbery@kf8nh.apk.net
)) Starting from 2005, newly installed systems will use 0xbf. - 82 Linux swap
- 83 Linux native partition
-
Linux is a Unix-like operating system written by Linus Torvalds and many others on the internet since Fall 1991. It runs on PCs (386 and up) and a variety of other hardware. It is distributed under GPL. Software can be found numerous places, like ftp.funet.fi, metalab.unc.edu and tsx-11.mit.edu. See also comp.os.linux.* and http://www.linux.org/. Various filesystem types like xiafs, ext2, ext3, reiserfs, etc. all use ID 83. Some systems mistakenly assume that 83 must mean ext2.
- 84 OS/2 hidden C: drive
-
OS/2-renumbered type 04 partition.
- 84 Hibernation partition
-
(following Appendix E of the Microsoft APM 1.1f specification). Reported for various laptop models. E.g., used on Dell Latitudes (with Dell BIOS) that use the MKS2D utility. APM 1.2 hibernation partitions can be used by Windows 98 or higher.
- 85 Linux extended partition
- 86 Old Linux RAID partition superblock
-
See fd.
- 86 FAT16 volume set
-
Legacy Fault Tolerant FAT16 volume. Windows NT 4.0 or earlier will add 0x80 to the partition type for partitions that are part of a Fault Tolerant set (mirrored or in a RAID-5 volume). Thus, one gets types 86, 87, 8b, 8c. See also Windows NT Boot Process and Hard Disk Constraints.
- 87 NTFS volume set
-
Legacy Fault Tolerant NTFS volume. HPFS Fault-Tolerant mirrored partition.
- 88 Linux plaintext partition table
- 8a Linux Kernel Partition (used by AiR-BOOT)
-
Martin Kiewitz (
KiWi@vision.fido.de
) writes: I'm currently writing a pretty nice boot-loader. For this I'm using Linux Boot Loader ID A0h, and partitition type 8Ah for the partition holding the kernel image. - 8b Legacy Fault Tolerant FAT32 volume
- 8c Legacy Fault Tolerant FAT32 volume using BIOS extd INT 13h
- 8d Free FDISK 0.96+ hidden Primary DOS FAT12 partitition
-
Free FDISK is the FDISK used by FreeDOS. It hides types 01, 04, 05, 06, 0b, 0c, 0e, 0f by adding decimal 140 (0x8c).
- 8e Linux Logical Volume Manager partition
-
See pvcreate(8) as found under http://linux.msede.com/lvm. (For a while this was 0xfe.)
- 90 Free FDISK 0.96+ hidden Primary DOS FAT16 partitition
- 91 Free FDISK 0.96+ hidden DOS extended partitition
- 92 Free FDISK 0.96+ hidden Primary DOS large FAT16 partitition
- 93 Hidden Linux native partition
- 93 Amoeba
- 94 Amoeba bad block table
-
Amoeba is a distributed operating system written by Andy Tanenbaum, together with Frans Kaashoek, Sape Mullender, Robert van Renesse and others since 1981. It runs on PCs (386 and up), Sun3, Sparc, 68030. It is free for universities for research/teaching purposes. For information, see ftp.cs.vu.nl.
- 95 MIT EXOPC native partitions
-
http://www.pdos.lcs.mit.edu/exo/ (Andrew Purtell,
Andrew_Purtell@NAI.com
) - 96 CHRP ISO-9660 filesystem
- 97 Free FDISK 0.96+ hidden Primary DOS FAT32 partitition
- 98 Free FDISK 0.96+ hidden Primary DOS FAT32 partitition (LBA)
- 98 Datalight ROM-DOS Super-Boot Partition
-
See www.datalight.com, and type 12 above.
- 99 DCE376 logical drive
-
No, it's not a hibernation partition; it's closest to a DOS extended partition. It's used by the Mylex DCE376 EISA SCSI adaptor for partitions which are beyond the 1024th cylinder of a drive. I've only seen references to type 99 with the DCE376. (Christian Carey,
ccarey@CapAccess.ORG
) - 9a Free FDISK 0.96+ hidden Primary DOS FAT16 partitition (LBA)
- 9b Free FDISK 0.96+ hidden DOS extended partitition (LBA)
- 9e ForthOS partition
-
ForthOS is the name Andy Valencia uses for his Forth operating system, a port of eForth. Also the older VSTA by the same author uses partition type 0x9e (158).
- 9f BSD/OS
-
Current sysid for BSDI. The types b7 and b8 given below are for an older version of the filesystem used in pre-v3.0 versions of the OS. These days the system is v4.1 BSD/OS. BSDI reports 2.1 million installed servers and 12 million licenses sold. See http://www.bsdi.com/.
- a0 Laptop hibernation partition
-
Reported for various laptops like IBM Thinkpad, Phoenix NoteBIOS, Toshiba under names like zero-volt suspend partition, suspend-to-disk partition, save-to-disk partition, power-management partition, hibernation partition. Usually at the start or end of the disk area. (This is also the number used by Sony on the VAIO. Recent VAIOs can also hibernate to a file in the filesystem, the choice being made from the BIOS setup screen.)
- a1 Laptop hibernation partition
-
Reportedly used as "Save-to-Disk" partition on a NEC 6000H notebook. Types a0 and a1 are used on systems with Phoenix BIOS; the Phoenix PHDISK utility is used with these.
- a1 HP Volume Expansion (SpeedStor variant)
-
IDs 21, a1, a3, a4, a6, b1, b3, b4, b6 are for HP Volume Expansion (SpeedStor variant).
- a3 HP Volume Expansion (SpeedStor variant)
- a4 HP Volume Expansion (SpeedStor variant)
- a5 BSD/386, 386BSD, NetBSD, FreeBSD
-
386BSD is a Unix-like operating system, a port of 4.3BSD Net/2 to the PC done by Bill Jolitz around 1991. When Jolitz seemed to stop development, an updated version was called FreeBSD (1992). The outcome of a Novell vs. UCB law suit was that Net/2 contained AT&T code, and hence was not free, but that 4.4BSD-Lite was free. After that, FreeBSD and NetBSD were restructured, and FreeBSD 2.0 and NetBSD 1.0 are based on 4.4BSD-Lite. FreeBSD runs on PCs. See http://www.freebsd.org/FreeBSD.html. For NetBSD, see below - it changed partition type to a9. 386BSD seems to be dead now. The kernel source is being published - see Operating System Source Code Secrets by Bill and Lynne Jolitz. See comp.os.386bsd.*. See http://www.paranoia.com/~vax/boot.html for NetBSD boot and partitioning info.
- a6 OpenBSD
-
OpenBSD, led by Theo de Raadt, split off from NetBSD. It tries to emphasize on security. See http://www.openbsd.org/.
- a6 HP Volume Expansion (SpeedStor variant)
- a7 NeXTStep
-
Based on Mach 2.6 and features of Mach 3.0, is a true object-oriented operating system and user environment. See http://www.next.com/.
- a8 Mac OS-X
-
Apple's OS-X ( Darwin Intel) uses this type for its filesystem partition (a UFS file system, in NeXT flavour, only differing from the *BSD formats in the first 8 KB). See also type ab.
- a9 NetBSD
-
NetBSD is one of the children of *BSD (see above). It runs on PCs and a variety of other hardware. Since 19-Feb-98 NetBSD uses a9 instead of a5. See http://www.netbsd.org/. It is freely obtainable - see http://www.netbsd.org/Sites/net.html.
- aa Olivetti Fat 12 1.44MB Service Partition
-
Contains a bare DOS 6.22 and a utility to exchange types 06 and aa in the partition table. (
loekw@worldonline.nl
) - ab Mac OS-X Boot partition
-
Apple's OS-X (Darwin Intel) uses this type for its boot partition. The image (
/usr/standalone/i386/boot
) starts at sector 1. See also type a8. - ab GO! partition
-
Unused. Claimed by Stanislav Karchebny for his GO! OS.
- ae ShagOS filesystem
- af ShagOS swap partition
-
Unused. Claimed by Frank Barrus for his ShagOS.
- af MacOS X HFS
-
Used by Apple for the MacOS X filesystem HFS or HFS+ on Intel.
- b0 BootStar Dummy
-
The boot manager BootStar manages its own partition table, with up to 15 primary partitions. It fills unused entries in the MBR with BootStar Dummy values. See www.star-tools.com. If you use this, don't use a disk manager, do not put LILO in the MBR and do not use fdisk.
- b1 HP Volume Expansion (SpeedStor variant)
- b1 QNX Neutrino Power-Safe filesystem
- b2 QNX Neutrino Power-Safe filesystem
- b3 HP Volume Expansion (SpeedStor variant)
- b3 QNX Neutrino Power-Safe filesystem
-
Steve Reid (
stever@qnx.com
) writes: We've recently added a new Power-Safe filesystem to the QNX Neutrino RTOS, and it uses decimal 177, 178, and 179 (B1, B2, and B3) for its identifier. See QNX6 fs. Default is 179. - b4 HP Volume Expansion (SpeedStor variant)
- b6 HP Volume Expansion (SpeedStor variant)
- b6 Corrupted Windows NT mirror set (master), FAT16 file system
- b7 Corrupted Windows NT mirror set (master), NTFS file system
- b7 BSDI BSD/386 filesystem
- b8 BSDI BSD/386 swap partition
-
BSDI (Berkeley Software Design, Inc.) was founded by former CSRG (UCB Computer Systems Research Group) members. Their operating system, based on Net/2, was called BSD/386. After the USL (Unix System Laboratories, Inc./Novell Corp.) vs. BSDI lawsuit, new releases were based on BSD4.4-Lite. Now they are announcing BSD/OS V2.0.1. This is an operating for PCs (386 and up), boasting 3000 customers. (That was long ago. The current partition id is 9f, see above.)
- bb Boot Wizard hidden
-
(PTS) BootWizard 4.0 and its new version Acronis OS Selector 5.0 use this id (i) when hiding partitions with types other than 01, 04, 06, 07, 0b, 0c, 0e, and (ii) when creating a partition without file system. See www.PhysTechSoft.com. The boot software was purchased on 2001-01-05 by SWsoft. See www.acronis.com.
- bc Acronis backup partition
-
Recognized as Acronis Secure Zone, when labelled "ACRONIS SZ". A primary partition, formatted with FAT32, LBA mapped.
- bd BonnyDOS/286
- be Solaris 8 boot partition
- bf New Solaris x86 partition
-
The old 0x82 id conflicted with Linux swap. New Solaris installations will use the id 0xbf. (Larry Lee
<lclee@west.sun.com>
) - c0 CTOS
- c0 REAL/32 secure small partition
-
See d0 below.
- c0 NTFT Partition
-
According to
disk.c
in the Netware source. - c0 DR-DOS/Novell DOS secured partition
-
DR-DOS 7.02+ / OpenDOS 7.01 / Novell DOS 7 secured partition.
- c1 DRDOS/secured (FAT-12)
- c2 Unused
-
According to Powerquest IDs c2, c3, c8, c9, ca, cd are reserved for DR-DOS 7+. According to Matthias Paul c2, c3, cd are no longer reserved for DR-DOS.
- c2 Hidden Linux
- c3 Hidden Linux swap
-
Benedict Chong (
bchong@blueskyinnovations.com
) writes: BlueSky Innovations LLC does a boot manager product called Power Boot and we use, in addition, 0C2h and 0C3h for hidden Linux partitions (swap and ext2fs). See also ID c2. - c4 DRDOS/secured (FAT-16, < 32M)
- c5 DRDOS/secured (extended)
-
This ID may also be used in obscure trickery: on a shared MS-DOS / DR-DOS machine with DR-DOS 6.0-7.03 (so that the DR_DOS does not understand type 0f and the MS-DOS does not understand type c5) one may have two extended partitions, where each operating system sees only one.
- c6 DRDOS/secured (FAT-16, >= 32M)
-
DR-DOS 6.0 and higher (NetWare PalmDOS 1.0, Novell DOS 7, OpenDOS 7.01, DR-DOS 7.02+) will add 0xc0 to the partition type for a LOGIN.EXE-secured partition (so that people cannot avoid the password check by booting from an MS-DOS floppy). Otherwise it seems that the types c1, c4, c5, c6 and d1, d4, d5, d6 are used precisely like 01, 04, 05, 06 (but are accepted only when booting from disk).
- c6 Windows NT corrupted FAT16 volume/stripe set
-
NTFS will add 0xc0 to the partition type for disabled parts of a Fault Tolerant set. Thus, one gets types c6, c7. See also Windows NT Boot Process and Hard Disk Constraints and Switching from DR-DOS 6.0 to MS-DOS 5.0.
- c7 Windows NT corrupted NTFS volume/stripe set
- c7 Syrinx boot
-
Primary partition only.
- c8 Reserved for DR-DOS 8.0+
- c9 Reserved for DR-DOS 8.0+
- ca Reserved for DR-DOS 8.0+
- cb DR-DOS 7.04+ secured FAT32 (CHS)/
- cc DR-DOS 7.04+ secured FAT32 (LBA)/
- cd CTOS Memdump?
- ce DR-DOS 7.04+ FAT16X (LBA)/
- cf DR-DOS 7.04+ secured EXT DOS (LBA)/
- d0 REAL/32 secure big partition
-
REAL/32 is a continuation of DR Multiuser DOS. It supports FAT12, FAT16 and REAL/32 7.90 also supports FAT32. Andrew Freeman (
afreeman@imsltd.com
) writes: For partitions which have been marked as secure we use 0xC0 and 0xD0 as partition markers (C0 < 32mb, D0 >= 32mb). REAL/32 is an advanced 32-bit multitasking & multi-user MS-DOS & Windows compatible operating system. Home page is www.imsltd.com. - d0 Multiuser DOS secured partition
-
This applies to the whole MDOS family range, Digital Research DR Multiuser DOS and Novell DR Multiuser DOS, as well as to Concurrent Controls Multiuser DOS, Datapaq Australasia System Manager 7, and IMS Multiuser DOS.
- d1 Old Multiuser DOS secured FAT12
- d4 Old Multiuser DOS secured FAT16 <32M
- d5 Old Multiuser DOS secured extended partition
- d6 Old Multiuser DOS secured FAT16 >=32M
- d8 CP/M-86
- da Non-FS Data
-
Added on request of John Hardin (
johnh@aproposretail.com
). - da Powercopy Backup
-
Powercopy Backup (shielded disk), used by www.datapower.de.
- db Digital Research CP/M, Concurrent CP/M, Concurrent DOS
- db CTOS (Convergent Technologies OS -Unisys)
- db KDG Telemetry SCPU boot
-
Mark Morgan Lloyd (
markMLl.in@telemetry.co.uk
) writes: KDG Telemetry uses type 0xdb to store a protected-mode binary image of the code to be run on a 'x86-based SCPU (Supervisory CPU) module from the DT800 range. - dd Hidden CTOS Memdump?
- de Dell PowerEdge Server utilities (FAT fs)
- df DG/UX virtual disk manager partition
-
Glenn Steen (
glenn.steen@ap1.se
) writes: When I made an old Aviion 2000 triple-boot (DOS, DG/UX and Linux) I saw that Linux fdisk reported the DG/UX virtual disk manager partition as type 0xdf. - df BootIt EMBRM
-
The boot manager BootIt manages its own partition table, with up to 255 primary partitions. See www.terabyteunlimited.com. If you use this, don't use a disk manager, do not put LILO in the MBR and do not use fdisk. Reference for the ID: BOOTIT.TXT.
- e0 Reserved by STMicroelectronics for a filesystem called ST AVFS.
- e1 DOS access or SpeedStor 12-bit FAT extended partition
-
Kevin Cummings reports in alt.os.linux: it's a SSTOR partition on cylinders > 1023.
- e3 DOS R/O or SpeedStor
- e4 SpeedStor 16-bit FAT extended partition < 1024 cyl.
- e5 Tandy MSDOS with logically sectored FAT
- e6 Storage Dimensions SpeedStor
- e8 LUKS
-
LUKS (Linux Unified Key Setup) partition.
- eb BeOS BFS
-
BeOS is an operating system that runs on Power PCs and on Intel PCs. Version 5 (the last version) is distributed freely to individuals. The system was sold to Palm and is not developed any more. OpenBeOS tries to create an open source version.
- ec SkyOS SkyFS
-
SkyOS is an operating system written by Robert Szeleney. Its filesystem SkyFS is based on OpenBeFS.
- ed Unused
-
Matthias Paul plans to use this for an OS called Sprytix.
- ee Indication that this legacy MBR is followed by an EFI header
- ef Partition that contains an EFI file system
-
Bob Griswold (
rogris@Exchange.Microsoft.com
) writes: MS plans on using EE and EF in the future for support of non-legacy BIOS booting. Mark Doran (mark.doran@intel.com
) adds: these types are used to support the Extensible Firmware Interface specification (EFI); go to developer.intel.com and search for EFI. (For the types ee and ef, see Tables 16-6 and 16-7 of the EFI specification, EFISpec_091.pdf.) - f0 Linux/PA-RISC boot loader
-
Paul Bame (
bame@debian.org
) writes: the F0 partition will be located in the first 2GB of a drive and used to store the Linux/PA-RISC boot loader and boot command line, optionally including a kernel and ramdisk. - f1 Storage Dimensions SpeedStor
- f2 DOS 3.3+ secondary partition
-
Matthias Paul writes: "This ID was originally used by Sperry IT MS-DOS 3.xx for a logically sectored variant of FAT. When Sperry IT became part of Unisys, the operating system was called Unisys MS-DOS 3.3. Digital Research's DOS Plus 2.1 (for OEM machines such as the Amstrad/Schneider PC1512, the T.R.A.N. Jasmin Turbo (Speed 8M), or the Acorn BBC Master 512 also supports this ID and logs it in, as if this would be either a type 01h FAT12 or a type 04h FAT16 partition."
- f3 Reserved
-
Powerquest writes: Storage Dimensions SpeedStor.
- f4 SpeedStor large partition
- f4 Prologue single-volume partition
- f5 Prologue multi-volume partition
-
The type F4 partition contains one volume, and is not used anymore. The type F5 partition contains 1 to 10 volumes (called MD0 to MD9). It supports one or more systems (Prologue 3, 4, 5, Twin Server). Each volume can have as file system the NGF file system or TwinFS file system. NGF (old): volume size at most 512 MB, at most 895 files per directory, at most 256 directories per volume. TwinFS (new): volume size up to 4 GB. No limit in number of files and directories. See Prologue.
- f6 Storage Dimensions SpeedStor
- f7 DDRdrive Solid State File System
-
Christopher George writes: "0xF7 is the partition ID for an internally developed Solid State File System (SSFS) created to maximize IOPS performance by utilizing unique capabilities of solid state storage, e.g. the DDRdrive X1." See www.ddrdrive.com.
Maybe Natalia Portillo plans to use this for O.S.G. EFAT ("Enhanced File Allocation Techniques").
- f9 pCache
-
Ed Sawicki writes: "We propose using the F9 partition type as a pCache partition, which is our name for an "ext2/ext3 persistent cache partition". See www.alcpress.com.
- fa Bochs
-
Rob Judd writes: MandrakeSoft's Bochs x86 emulator (similar to VMWare) uses fa as a partition identifier.
- fb VMware File System partition
- fc VMware Swap partition
-
Also used as VMkernel dump partition. (Cf. vmwareguide.)
VMware offers virtual machines in which one can run Linux, Windows, FreeBSD.
- fd Linux raid partition with autodetect using persistent superblock
-
See the HOWTO and the kernel patches. Earlier, 86 was used instead of fd.
Powerquest writes: Reserved for FreeDOS ( www.freedos.org), but it seems FreeDOS never used this ID.
- fe SpeedStor > 1024 cyl.
- fe LANstep
- fe IBM PS/2 IML (Initial Microcode Load) partition, located at the end of the disk.
- fe Windows NT Disk Administrator hidden partition
-
Mark Morgan Lloyd (
markMLl.in@telemetry.co.uk
) writes: Windows NT Disk Administrator marks hidden partitions (i.e. present but not to be accessed) as type 0xfe. A primary partition of this type is also used by IBM to hold an image of the "Reference Diskettes" on many of their machines, particularly newer PS/2 systems (at a rough guess, anything built after about 1994). This clash can cause major confusion and grief if running NT on IBM kit. When this Reference Partition is activated, it changes its type into 1 (FAT12) and hides all other partitions by adding 0x10 to the type. - fe Linux Logical Volume Manager partition (old)
-
This has been in use since the early LVM days back in 1997, and has now (Sept. 1999) been renamed 0x8e.
- ff Xenix Bad Block Table
2. Properties of partition tables.
2.1 Why partitions?
The partition table of a disk cuts it into 'logical disks'. There are several reasons for wanting to do this. Old versions of DOS as well as Windows 95 do not support filesystems larger than 2 GB, so partitioning is required to break this '2 GB barrier'. Different partitions may carry different operating systems or different filesystems (FAT, HPFS, NTFS, ext2, ...) to be used by one operating system. Sometimes small partitions are used for special purposes (OS/2 Boot Manager uses a small partition for itself, various laptops have a 'hibernation' partition where the state of the system is stored when it goes asleep). Some 'reliable' systems have backup partitions. For backup purposes, say to tape, it is often convenient to have partitions of a size such that the entire partition can be written to a single tape.
It is a good idea to keep your own things (say under /home) and privately installed packages (say under /usr/local) separate from the software installed from a distribution. In case these are on a different partition, it is easier to do a complete reinstall (or switch to a different distribution) without losing your own stuff.
For well-designed systems it is often possible to have all basic system software on a read-only partition, thus diminishing the probability of corruption and saving backup time. There is also a security aspect; for example on a Unix system one might mount all filesystems other than the root filesystem 'nosuid,nodev', and have /tmp, /home, /var not on the root filesystem, to minimize the possibility that some suid program is tricked into overwriting a vital system file via a hard link to it.
Finally there is the old BIOS problem that can make it impossible to boot a system that lives past cylinder 1024. This may mean that one has to have a partition that ends before the 1024 cylinder limit where the stuff needed at boot time is stored.
2.2 What does a partition table look like?
One may have an arbitrary number of partitions on a disk. However, the Master Boot Record (MBR, sector 0 of the disk) only holds descriptors for 4 partitions, called the primary partitions. Usually the BIOS can boot only from a primary partition. (Of course it can boot a boot loader that itself is able to access nonprimary partitions or other disks.) The descriptors for the remaining partitions, called logical partitions, are scattered along the disk in a linked list of partition table sectors, starting with the MBR.
Each partition table sector contains 4 partition descriptors. A partition descriptor may be of type 05 (DOS extended partition), 0f (W95 extended partition), 85 (Linux extended partition), or c5 (DRDOS/secured extended partition), in which case it points to another partition table sector. In this way, we obtain a quaternary tree of partitions. Linux accepts 85 as a synonym for 05 - this is useful if one wants to have extended partitions past the 1024 cylinder limit (to prevent DOS fdisk from crashing or hanging). Windows 95 uses 0f for LBA mapped extended partitions. Thus, an extended partition is not a partition containing data, but is a box containing other partitions. Nevertheless, the partition table sector that starts an extended partition has enough room left to contain a boot loader like LILO, so that it is possible to boot an extended partition.
Most operating systems severely restrict the accepted trees. Usually branching is not allowed, and one gets a linear chain of partition table sectors. Linux will accept several extended primary partitions.
2.3 Partition descriptors
A partition table entry is 16 bytes long and contains 6 items (not listed in order). 1. A byte that is 0x80 or 0 denoting 'bootable' or not. The standard DOS MBR will not boot a partition unless it is the unique bootable primary partition. For nonprimary partitions this byte is unused. 2. A byte that gives the type. 3. A 4-byte starting sector number. 4. A 4-byte length (in sectors). 5. A 3-byte starting sector given in C/H/S (cylinder/head/sector) format. 6. A 3-byte final sector given in C/H/S format. Linux only uses items 2-4, and hence is not interested in the 'geometry' of the disk, and can use disks with up to 2^32 sectors (2 TiB). DOS uses 5-6 instead of 3-4, and this leads to the well-known problems with geometry, with the 1024 cylinder limit, the 500 MB limit, the 8 GB limit. For some details, see the large disk HOWTO.
For an extended partition, only the first sector is important - it contains the descriptors for its logical partitions. There are various conventions about how the descriptor of an extended partition (different from the outer one) should look like. There is the paradigm of 'nested boxes', where each extended partition covers a disk area containing all the logical partitions inside. There is also the paradigm of 'chained boxes', where each extended partition (except possibly the outer one) just contains the next logical partition. I don't know which systems follow which paradigms. (David A. Burton <dburton@burtonsys.com>
reports that System Commander uses the nested style.) However, for the outer (primary) extended partition it is common to contain all logical partitions inside (i.e., have a start and length field that describes a piece of the disk that contains all logical partitions). Of course the 'chained boxes' paradigm is more flexible since it allows logical partitions with a primary partition in between.
2.4 Partition hiding
The OS/2 Boot Manager does not want you to have more than one primary DOS partition (MS-DOS itself does not mind), and will change the type from 01, 04, 06, 07 to 11, 14, 16, 17.
Also other programs or systems use this 'partition hiding'. For example, System Commander will OR the type with 0x10, changing the Linux 83 into the Amoeba 93.
2.5 CHS vs LBA
Some partition IDs imply a particular method of disk access. In particular, IDs 0c, 0e, 0f (the LBA versions of 0b, 06, 05) go with partition table entries that have C/H/S = 1023/255/63 and expect access via the extended INT-13 functions (AH=4x) of the BIOS.
The OS/2 Boot Manager MBR code tests whether the extended INT-13 functions are present, and if so sets memory location 0030:0000 to 'I13X', and otherwise to 0. If the MBR contains other boot code then OS/2 no longer boots anything past the 1024 cyl mark.
2.6 Logically sectored FAT
Some systems use a filesystem that is fully compatible with a standard FAT12 or FAT16 partition, except for using a sector size larger than the usual 512 bytes, up to 8192 bytes. This is what is meant by "logically sectored FAT" in the above.
Logically sectored FATs have been a way to circumvent the dreaded 32 MB partition size limit before the introduction of DOS 3.31. Since the count of sectors was restricted to 16-bit on FAT16 (type 04h) the only way to grow the partition above the 32 MB limit in a reasonably compatible fashion was to increase the sector size instead. Physical sectors at ROM BIOS INT 13h level are always 512 bytes in size, but other devices may require support for other sector sizes in the operating system. Hence, when DOS logs in drives during bootstrap it will record the sector size values indicated in each partition it finds and if it is larger than the previously recorded value, it will slide up the maximum supported sector size to the found value. Very old DOS versions seem to have started with an initial value of 128 (showing some CP/M heritance here), but recent DOS versions use an initial value of 512 bytes. Once DOS has logged in all drives (including those not represented on INT 13h level, for example, SCSI disk, RAM disk or such), it will set up its internal buffering logic to use the maximum sector size found. This mechanism is present in all DOS versions (although it was partially broken in DOS 5.0 - 6.22).
(Matthias Paul)
2.7 What does FDISK /MBR do?
People often recommend the undocumented DOS command FDISK /MBR to solve problems with the MBR. This command however does not rewrite the entire MBR - it just rewrites the boot code, the first 446 bytes of the MBR, but leaves the 64-byte partition information alone. Thus, it won't help when the partition table has problems. Moreover, it can be dangerous to restore the boot code to its original state: if the cause of the problems was a boot sector virus, then vital information may have been stored elsewhere by the virus, and killing the virus may mean killing access to this information. (For example, the stoned.empire.monkey virus encrypts the original MBR to sector 0/0/3.) However, people who want to uninstall LILO, and do not know that LILO has a -u option, can use FDISK /MBR for this purpose.
In a Linux environment, one can wipe all of the MBR with a command like "dd if=/dev/zero of=/dev/hda count=1 bs=512". If only the boot code must be removed, but not the partition table, then "dd if=/dev/zero of=/dev/hda count=1 bs=446" will do. Be very careful with such commands. Usually one regrets them later.
2.8 Structure of the MBR - OS additions
As we saw, the structure of the MBR (Master Boot Record, sector 0) is as follows: First 446 bytes boot loader code, then 64 bytes partition table (starting at offset 0x1be = 446), finally 2 bytes signature 0xaa55.
Just before the partition table some operating systems save some interesting stuff. For example, DRDOS stores a password starting at offset 0x1b6.
Windows NT stores a 4-byte "disk signature" or "volume ID" or "Drive Serial Number" starting at offset 0x1b8. It is used to map drive letters to disks: in the HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices registry item the drive letter is coupled with this disk signature. It is used as a disk label to map disk info to disks in the HKEY_LOCAL_MACHINE\SYSTEM\DISK registry item. This signature is generated by the Disk Administrator when it initializes the disk, unless there already was a nonzero value there. Also Windows 2000 and Windows XP and Linux use this ID.
NetBSD has a magic word 0xb5e1 at offset 0x1bc to indicate that the boot selector area 0x190-0x1b7 (400-439) is valid. Earlier, the NetBSD boot selector area was at offsets 404-443 and the signature word was 0xaa55. The area was moved to avoid conflict with the Windows NT Drive Serial Number. (Problem: Grub preserves this signature, but overwrites the NetBSD boot selector area.) This area contains a 1-byte default key scancode, a 1-byte flags word, a 2-byte timeout (18.2/sec), and a 36-byte table with the boot selector menu entries for the 4 primary partitions (four times 8 bytes + terminating NUL).
Grub had a 4-byte stage2 start address at 0x1b8, and a 2-byte version at 0x1bc, but recent versions preserve 0x1b8-0x1bd. Also LILO v20 and later preserves this area.
Amilo M3438G notebooks have an "Instant on" button that boots a "Power Cinema" interface that runs on top of Linux. It is reported that bytes 0x1b2-0x1b5 are related to this feature, and should contain "PCML". It is unknown how the partition to boot is selected.
Some operating systems are reported to have 8 instead of 4 partition descriptors in the MBR. Cf. AST DOS under 14 and NEC DOS under 24 above.
2.9 The Advanced Active Partition of PTS
As mentioned above, the DOS MBR boot code will boot the (unique) primary partition that has been marked active. Usually, in a multi-boot situation, the boot manager toggles the active bit of the partition that is to be booted. PTS chose a different solution.
Matthias Paul writes: "So far the only DOS being able to boot out of a logical drive in an extended partition is PTS-DOS by use of so called "Advanced Active Partition" entries in the MBR. In order to remain as compatible as possible with existing DOS standards, this works a little bit different and requires a special 5th partition entry in front of the other four entries in the MBR and corresponding AAP-aware MBR bootstrap code. If the MBR contains a special AAP signature and this special entry exists and is flagged bootable, the MBR will use this instead of one of the other four entries. The entry may either point to the bootsector of a logical drive or to a 512 bytes long file (with system-attribute, so it won't be moved around during disk defragmentation) somewhere inside the filesystem, which makes up a boot sector (same "IBM" signature, same load address, same register interface). In contrast to the usual MBR code, this MBR code interprets the boot flag byte as physical drive unit (80h..FEh), instead of using it only as a active flag (80h or 00h in older DOS issues or bit 7 set or cleared in newer DOS issues). This way, the AAP MBR could even load a boot sector from other than the first harddisk."
2.10 Naming
DOS uses drive letters A: and B: for floppy disk drives, and assigns drive letters C: ... Z: in the order: first all primary DOS partitions on the first disk, then all primary DOS partitions on the second disk, ..., then all logical DOS partitions on first disk, etc. DOS will stop investigating logical partitions in a given extended partition as soon as a non-DOS partition is encountered. (DOS recognizes partition types 1, 4, 6 and 5 for extended.)
Systems like Windows 95, Windows 98, Windows NT, Windows 2000 and OS/2 follow a similar convention, but recognize different partition types. Thus, a drive can have a different drive letter for each of these operating systems. For details, see the Microsoft KnowledgeBase, e.g. Drive letters in Windows NT, Drive letters in Windows 2000 for unsupported partition types.
DRDOS 6 is reported to assign D: to your third floppy (e.g. Zip) drive, if you have one, while all other versions of DOS would put further removable drives at the end of the list.
DRDOS 7.03 is reported to assign drive letters in the order: first active DOS primary on the first disk, then active DOS primary on the second disk, ..., then all logical DOS partitions on first disk, then all logical DOS partitions on second disk, ..., then the nonactive DOS primaries on the first disk, ...
2.11 Limits
The partition table describes the location of partitions both in 1-dimensional ('LBA') and in 3-dimensional (CHS) form. The former is easy enough, as long as the number of sectors fits in a 4-byte integer, but for the latter one needs to know the disk geometry. Note that these days this geometry is entirely fake, and different systems use different faked geometries for the same disk, giving lots of problems. (For example, a modern disk may have 2 or 4 heads, but will probably report 15 or 16 heads to the BIOS, which in turn may report 255 heads to DOS or Windows.)
- ATA Specification (for IDE disks) - the 137 GB limit
-
At most 65536 cylinders (numbered 0-65535), 16 heads (numbered 0-15), 255 sectors/track (numbered 1-255), for a maximum total capacity of 267386880 sectors (of 512 bytes each), that is, 136902082560 bytes (137 GB).
- BIOS Int 13 - the 8.4 GB limit
-
At most 1024 cylinders (numbered 0-1023), 256 heads (numbered 0-255), 63 sectors/track (numbered 1-63) for a maximum total capacity of 8455716864 bytes (8.4 GB). This is a serious limitation today. It means that DOS cannot use present day large disks.
- The DOS 528 MB limit
-
If the same values for c,h,s are used for the BIOS Int 13 call and for the IDE disk I/O, then both limitations combine, and one can use at most 1024 cylinders, 16 heads, 63 sectors/track, for a maximum total capacity of 528482304 bytes (528MB), the infamous 504 MiB limit. This was already a problem many years ago, and all kinds of software, firmware and hardware solutions were invented. On the software side, there are Disk Managers, that circumvent the BIOS and go directly to the hardware. On the firmware side there are translating BIOSes, that use one geometry when talking to the disk, and another one when talking to the user program. (At best, this again allows access to 8.4 GB.) On the hardware side, there is LBA disk access, that no longer uses (c,h,s).
- The 2.1 GB limit
-
Some older BIOSes only allocate 12 bits for the field in CMOS RAM that gives the number of cylinders. Consequently, this number can be at most 4095, and only 4095*16*63*512=2113413120 bytes are accessible.
- The 3.2 GB limit
-
There was a bug in the Phoenix 4.03 and 4.04 BIOS firmware that would cause the system to lock up in the CMOS setup for drives with a capacity over 3277 MB.
- The 4.2 GB limit
-
Simple BIOS translation (ECHS=Extended CHS, sometimes called 'Large disk support' or just 'Large') works by repeatedly doubling the number of heads and halving the number of cylinders shown to DOS, until the number of cylinders is at most 1024. Now DOS and Windows 95 cannot handle 256 heads or more, and in the common case that the disk reports 16 heads, this means that this simple mechanism only works up to 8192*16*63*512=4227858432 bytes (with a fake geometry with 1024 cylinders, 128 heads, 63 sectors/track). Note that ECHS does not change the number of sectors per track, so if that is not 63, the limit will be lower.
- The 7.9 GB limit
-
Slightly smarter BIOSes avoid the previous problem by first adjusting the number of heads to 15 ('revised ECHS'), so that a fake geometry with 240 heads can be obtained, good for 1024*240*63*512=7927234560 bytes.
- The 8.4 GB limit
-
Finally, if the BIOS does all it can to make this translation a success, and uses 255 heads and 63 sectors/track ('assisted LBA' or just 'LBA') it may reach 1024*255*63*512=8422686720 bytes, slightly less than the earlier 8.4 GB limit because the geometries with 256 heads must be avoided. (This translation will use for the number of heads the first value H in the sequence 16, 32, 64, 128, 255 for which the total disk capacity fits in 1024*H*63*512, and then computes the number of cylinders C as total capacity divided by (H*63*512).)
- The 33.8 GB limit
-
Large disks report 16 heads, 63 sectors/track and 16383 cylinders. Many BIOSes compute an actual number of cylinders by dividing the total capacity by 16*63. For disks larger than 33.8 GB this leads to a number of cylinders larger than 65535. Now the BIOS crashes or hangs. The solution is to upgrade the BIOS. If that is impossible, it sometimes helps to take the disk out of the BIOS, but that won't work if one has to boot from the disk, and may also fail because the BIOS already hangs during initial probing. Usually one can use a jumper to make the disk appear smaller. Also many operating systems have problems - only the most recent versions work with these disks.
- The 137 GB limit
-
As already noted, the old ATA specification does not allow access to all of a disk that is larger than 137 GB. Indeed, it uses only 28 bits to specify a sector number. However, ATA-6 defines an extension with 48-bit sector number. The first disks needing the extension were Maxtor 160 GB disks, that came to market in Fall 2001.
Hard drives over 8.4 GB are supposed to report their geometry as 16383/16/63. This in effect means that the 'geometry' is obsolete, and the total disk size can no longer be computed from the geometry.
Of course various operating systems and file system types have their own limits, in addition to those mentioned above.
2.12 Details for various operating systems
Early MSDOS filled the partition table starting at the end. In particular, in the case of only one partition, the descriptor was stored in the fourth primary slot. These days DOS FDISK starts at the beginning, but other systems, like Unixware, still start at the end. Also Iomega writes the single partition of a ZIP disk in the last entry (so that it has to be mounted as /dev/sda4 or /dev/hdc4 or so).
MSDOS 6.22 FDISK creates the four entries in the partition table sector that starts an extended partition as 1. a data partition (or empty), 2. the next extended partition, 3. and 4. empty. (But old versions of MS-DOS start at the end, and first fill entry 4.) If the first logical partition (that is not the last one) is removed, only the link in position 2 remains. An extended partition table sector can describe only a single data partition (the first one encountered). When reading a table, FDISK accepts the entries in any order and position, but it will write the sector normalized as described.
DRDOS on the other hand expects zero to four entries in an extended partition table sector. Data partitions, possibly followed by the link to the next extended partition. Thus, this link is always the last significant entry, and will be the first entry if there is no data partition (because it has been deleted).
Many systems are willing to accept more than two nonempty parts in an extended partition, but will not create such themselves.
It is rumoured that the outer extended partition should be the 4th in the MBR, but I don't know any systems that have this restriction. DRDOS FDISK always puts the extended partition in the fourth entry no matter how many other entries you may have.
MSDOS fdisk shows 4 primary partitions, and of the logical partitions only those that have a DOS type (1, 4 or 6). It will list the type of a logical partition as 'Unknown' if the partition is not formatted.
It is rumoured that DRDOS ignores the high-order bit of the ID (and that is the reason for the additional Linux IDs 41, 42, 43), but I don't know whether that is true (and for which versions of DRDOS). It is also rumoured that DRDOS will write 1 sector past the end of a partition - I have never seen this either. Confirmation? It is however true, that DRDOS fdisk only looks at the last 4 bits when printing a type, so that types 11, 21, etc are printed as DOS 2.0, but such types are not acceptable for DRDOS itself.
The OS/2 Warp fdisk is very instable, and hangs or crashes with general protection fault as soon as the partition table is somewhat unusual, cf. Cannot set an installable partition with FDISK.
The Windows NT Disk Administrator will corrupt your disk when it writes a signature on a disk with two or more logical partitions. See Disk Administrator Corrupts Partitions.
Antoine reports that if the last partition in a chain of logical partitions is of a type unknown to DOS then the DOS partition table parser may leave data about it in its drive letter table and confuse this non-DOS logical partition with the next partition (maybe logical on another disk, or nonactive primary). This can cause data loss.
The use of Win95/Win98 FDISK in a mixed system is dangerous. It will delete a non-FAT logical partition when you had actually told it to delete a FAT partition somewhere farther down the chain of logical partitions. See Cannot View NTFS Logical Drive After Using FDISK.
The system partition in Windows NT 4 must be contained in the first 7.8 GB of the disk (or less, in case the BIOS geometry does not have 255 heads and 63 sectors/track; the actual restriction is that all of it must be accessible using BIOS Int 13). It must not be larger than 4 GB because Windows NT 4 first installs into a FAT16 partition and then converts it into NTFS during the second phase of the installation. It must start before the 4 GB mark (bug fixed in Service Pack 5). See Windows NT 4.0 Supports Maximum of 7.8-GB System Partition and Windows NT Partitioning Rules During Setup and Boot Partition Created During Setup Limited to 4 Gigabytes and Windows NT Does Not Boot to a Partition That Starts More Than 4 GB into Disk.
Windows NT and Windows 2000 use for SCSI disks whatever the BIOS says (usually C/H/S=C/255/63) for the boot drive, and C/64/32 for all other SCSI drives. See How Windows NT Handles Drive Translation.
Windows 2000 seems to require that the partition order agrees with the disk order.
The OS/2 fdisk writes some strange length in the descriptor of the last extended partition. This is probably a bug. OS/2 fdisk fails to update the length of the (outer) extended partition when a primary partition is created in the free space (space not used by a logical partition) at the end of this extended partition. This can lead to overlapping partitions.
OS/2 FDISK does not know about type f, but accepts DOS Extended Partitions extending beyond cylinder 1023. When some other partition handler, like Partition Magic 4.0, changes the type of a large extended partition from 05 to 0f, OS/2 loses access.
OS/2 Boot Manager keeps a private copy of the partition table data. This leads to problems when changing the partition table with 3rd party tools.
Windows 2000 tries to destroy OS/2 Boot Manager. Upon boot it ignores the 0a partition ID, and sees something resembling a FAT boot sector describing 2 FAT copies. When FASTFAT.SYS marks this partition as clean in the first reserved FAT entry, the mirror (2nd) FAT sector is also updated. However, there is no mirror FAT, and FASTFAT.SYS writes into the middle of the OS/2 Boot Manager code. This aggression was built into FASTFAT.SYS at a fairly late stage, and prerelease versions work without problems. See also kb/q265003. Update both \WINNT\SYSTEM\DRIVERS\FASTFAT.SYS and \WINNT\SYSTEM\DLLCACHE\FASTFAT.SYS .
Windows XP understands the OnTrack Disk Manager ID 54. It was reported that a custom partition that happened to use ID 54 was corrupted by Windows Disk Manager: it wrote a partition table entry to sector 0 of that partition, absolute sector 63 on disk, at offset 0x1be, and a disk serial number just before that.
Then there is the problem of what to write in (c,h,s) if the numbers do not fit. The main strategies seem to be
1. Mark (c,h,s) as invalid by writing some fixed value.
1a. Write (1023,255,63) for any nonrepresentable CHS.
1b. Write maximum valid values, typically (1023,254,63), for any nonrepresentable CHS.
1c. Write (1022,254,63) for any nonrepresentable CHS.
1d. Write (1023,0,1) for the begin CHS of a partition that starts at or past cylinder 1024, and write (1023,255,63) for the end.
1e. Write (1023,0,1) for the begin CHS of a partition that starts at or past cylinder 1024, and write (1023,254,63) for the end.
2. Leave h, s but do something to c. Of course, these fail if h or s does not fit.
2a. Truncate c to 1023, writing (1023, #heads-1, #sectors).
2b. Truncate c to 1022, writing (1022, #heads-1, #sectors).
2c. Reduce c mod 1024, writing only its last 10 bits.
Windows is said to follow 1a. OS/2 is said to follow 1b. Solaris 8 follows 1c or 2b. Andreas Jellinghaus reports that Partition Magic follows 1d and detects a problem if start CHS is set to (1023,255,63). Jan van Wijk's pcpartit.pdf
reports that Partition Magic follows 1e. Jeff Merkey reports that Novell Netware follows 2b. He writes: If you do not use their methods on NetWare partitions, NetWare will not recognize the partition entries correctly, and will attempt to reinitialize the entire partition table on a system if they are wrong (Ouch!). Some versions of Linux fdisk used 2a or 2c, and this confuses OS/2 fdisk - cf. Linux, OS/2 and >1024 Cylinder HDDs. David A. Burton <dburton@burtonsys.com>
reports that System Commander Deluxe (from V Communications) uses
1f. Mark (c,h,s) as invalid by writing c=1022. (Maybe this is really 2b?)
2.13 Partition Magic
A very convenient tool for manipulating partitions is Partition Magic, a commercial program from PowerQuest. Below a description of some of its error numbers. (The URL that gave this information no longer exists.) This is of interest also for those who do not have this program: it indicates what conditions the PowerQuest people think a partition table should satisfy.
(Not all of these conditions are complied with by DRDOS or OS/2 or Linux or Windows NT on Alpha, so a partition manipulator should accept a much wider range of partition tables, but such a program might try to follow these rules when creating partitions.)
- 100 - A forked extended partition
-
The MBR or some EPBR contains two extended partitions. (PowerQuest uses the acronym EPBR for a link in the chain of extended partition table sectors.) (Linux comment: there are three partition types indicating an extended partition, namely 0x5, 0xf, 0x85. DOS only recognizes the first. Recent Windows only recognizes the first two. Linux will accept two or more extended partitions in the MBR, and often it is useful to have a 0x5 chain for use by DOS (where this chain stays below the 1024 cylinder boundary) and a 0x85 chain for use by Linux. Nothing is wrong with having both 0x85 and one of 0x5, 0xf in the MBR. However, it is bad to have both 0x5 and 0xf. This is sometimes seen when people use some fdisk-type program that does not yet know about 0xf on a disk that already contains such an extended partition.) (DRDOS comment: extended partition types 0xc5 and 0x5 can coexist.)
- 104 - Partition contains no sectors
-
The LBA Number of sectors value in the partition table is 0.
- 105 - Partition does not start on cylinder boundary
-
The Head value of CHS begin is not 0 or 1. PartitionMagic expects all FAT, HPFS and NTFS partitions to start and end on cylinder boundaries. (Comment: Windows NT on Alpha does not comply with this rule, and can create partitions starting on arbitrary sectors. There is no known operating system that requires this restriction. However, there exists software that tries to guess the disk geometry by looking at the CHS start and end values in a partition table. Note that with large disks CHS values are entirely meaningless.)
- 106 - Partition does not start with sector 1
-
The Sector value of CHS begin is not 1. (Same comment.)
- 107 - Partition begins beyond the end of the disk
-
The Cylinder value of CHS begin is larger than the number of cylinders that the BIOS reports. (Comment: Usually this means that programs or operating systems that use the BIOS cannot use this partition. It may help to change the BIOS translation. For Linux it does not matter, except that the
/boot
partition containing LILO stuff should be accessible.) - 108 - Partition does not end on cylinder boundary
-
The Head value of CHS end is not one less than the number of heads that the BIOS reports, or the Sector value of CHS end is not equal to the number of sectors per track that the BIOS reports. (See above under 105.)
- 109 - Partition ends after end of disk
-
The Cylinder value of CHS end is larger than the number of cylinders that the BIOS reports.
- 110 - Partition has different CHS and LBA lengths
- 111 - Logical partition starts outside extended
-
(Comment: the model here is that the extended partition is one big box, taking a consecutive piece of disk area, containing the logical partitions. Linux allows the logical partitions to be anywhere on the disk, also with primary partitions in between.)
- 112 - Logical partition ends outside extended
- 113 - Partitions overlap
-
A partition ends past the start of another. If the filesystems don't actually overlap, which they rarely do, then this can be fixed by truncating the overlapping partition. (Sometimes overlapping partitions are created by OS/2 fdisk: if there is still room in an extended partition it allows the creation of a primary partition that overlaps the end of the extended partition. Now if someone afterwards creates a logical partition inside the extended partition, data loss might occur.)
- 114 - Logical partition does not start one head away from EPBR
-
If the EPBR is found at sector N, and there are 63 sectors per track, then Partition Magic expects the logical partition to start at sector N+63.
- 115 - Logical partition does not end where Partition Magic expects
-
(Comment: Partition Magic expects the extended partition to be a big box containing a chain of pairwise disjoint boxes. Here each logical partition except for the first one has the same ending sector as the surrounding box. Another model one finds is a big box containing a smaller box, containing a smaller box ... In that model all EPBR extended partition entries will show the same end sector. In reality the end sector of an EPBR does not play a role anywhere.)
- 116 - Partition has different CHS and LBA begin
- 120 - Logical partitions not in ascending order
-
PowerQuest states: DOS, OS/2, Windows 95 and Windows NT require that logical partitions occur in the chain in the on-disk order. (Comment: Linux does not require this. However, reordering the links in the chain is trivial (for example with sfdisk). Note that disk names will be different after reordering.)
2.14 Acknowledgements
A lot of useful information was supplied by various people: Thomas Wolfram (thomas@aeon.in-berlin.de
) - the author of os-bs, Peter Gutmann (pgut01@cs.auckland.ac.nz
) - the author of SFS, Cody Batt (codyb@powerquest.com
), Christian Carey (ccarey@CapAccess.ORG
), Dan Fandrich (dan@fch.wimsey.bc.ca
), David Faulks (david@santana.ca
), Kai Henningsen (kai@khms.westfalen.de
), Dan Hildebrand (danh@qnx.com
), Todd Larason (jtl@molehill.org
), Mark Morgan Lloyd (markMLl.in@telemetry.co.uk
). Marek Michalkiewicz (marekm@i17linuxb.ists.pwr.wroc.pl
), David C. Niemi (niemidc@clark.net
), Piotr Niemiec (PNiemiec@compuserve.com
), Matthias Paul (Matthias.Paul@post.rwth-aachen.de
), Loek Weerd (loekw@worldonline.nl
), S. Widlake (s.widlake@rl.ac.uk
), Gareth Randall (gareth.randall@virgin.net
).