diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 02:42:50 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 02:42:50 +0000 |
commit | 8cb83eee5a58b1fad74c34094ce3afb9e430b5a4 (patch) | |
tree | a9b2e7baeca1be40eb734371e3c8b11b02294497 /disk-utils/fdisk.8 | |
parent | Initial commit. (diff) | |
download | util-linux-upstream.tar.xz util-linux-upstream.zip |
Adding upstream version 2.33.1.upstream/2.33.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'disk-utils/fdisk.8')
-rw-r--r-- | disk-utils/fdisk.8 | 371 |
1 files changed, 371 insertions, 0 deletions
diff --git a/disk-utils/fdisk.8 b/disk-utils/fdisk.8 new file mode 100644 index 0000000..430c96c --- /dev/null +++ b/disk-utils/fdisk.8 @@ -0,0 +1,371 @@ +.\" Copyright 1992, 1993 Rickard E. Faith (faith@cs.unc.edu) +.\" Copyright 1998 Andries E. Brouwer (aeb@cwi.nl) +.\" Copyright 2012 Davidlohr Bueso <dave@gnu.org> +.\" Copyright (C) 2013 Karel Zak <kzak@redhat.com> +.\" May be distributed under the GNU General Public License +.TH FDISK 8 "February 2016" "util-linux" "System Administration" + +.SH NAME +fdisk \- manipulate disk partition table + +.SH SYNOPSIS +.B fdisk +[options] +.I device +.sp +.B fdisk \-l +.RI [ device ...] + +.SH DESCRIPTION +.B fdisk +is a dialog-driven program for creation and manipulation of partition tables. +It understands GPT, MBR, Sun, SGI and BSD partition tables. + +Block devices can be divided into one or more logical disks called +.IR partitions . +This division is recorded in the +.IR "partition table" , +usually found in sector 0 of the disk. +(In the BSD world one talks about `disk slices' and a `disklabel'.) + +All partitioning is driven by device I/O limits (the topology) by default. +.B fdisk +is able to optimize the disk layout for a 4K-sector size and use an alignment offset on +modern devices for MBR and GPT. It is always a good idea to follow \fBfdisk\fR's defaults +as the default values (e.g. first and last partition sectors) and partition +sizes specified by the +/-<size>{M,G,...} notation are always aligned according +to the device properties. + +Note that +.BR partx (8) +provides a rich interface for scripts to print disk layouts, +.B fdisk +is mostly designed for humans. Backward compatibility in the output of +.B fdisk +is not guaranteed. The input (the commands) should always be backward compatible. + +.SH OPTIONS +.TP +\fB\-b\fR, \fB\-\-sector\-size\fR \fIsectorsize\fP +Specify the sector size of the disk. Valid values are 512, 1024, 2048, and 4096. +(Recent kernels know the sector size. Use this option only on old kernels or +to override the kernel's ideas.) Since util-linux-2.17, \fBfdisk\fR differentiates +between logical and physical sector size. This option changes both sector sizes to +.IB sectorsize . +.TP +\fB\-B\fR, \fB\-\-protect\-boot\fP +Don't erase the begin of the first disk sector when create a new disk label. This +feature is supported for GPT and MBR. +.TP +\fB\-c\fR, \fB\-\-compatibility\fR[=\fImode\fR] +Specify the compatibility mode, 'dos' or 'nondos'. The default is non-DOS +mode. For backward compatibility, it is possible to use the option without +the \fImode\fR argument -- then the default is used. Note that the optional +\fImode\fR argument cannot be separated from the \fB-c\fR option by a space, +the correct form is for example '-c=dos'. +.TP +\fB\-h\fR, \fB\-\-help\fR +Display a help text and exit. +.TP +\fB\-L\fR, \fB\-\-color\fR[=\fIwhen\fR] +Colorize the output. The optional argument \fIwhen\fP +can be \fBauto\fR, \fBnever\fR or \fBalways\fR. If the \fIwhen\fR argument is omitted, +it defaults to \fBauto\fR. The colors can be disabled; for the current built-in default +see the \fB\-\-help\fR output. See also the \fBCOLORS\fR section. +.TP +\fB\-l\fR, \fB\-\-list\fR +List the partition tables for the specified devices and then exit. +If no devices are given, those mentioned in +.I /proc/partitions +(if that file exists) are used. +.TP +.BR \-o , " \-\-output " \fIlist\fP +Specify which output columns to print. Use +.B \-\-help +to get a list of all supported columns. + +The default list of columns may be extended if \fIlist\fP is +specified in the format \fI+list\fP (e.g. \fB-o +UUID\fP). +.TP +\fB\-s\fR, \fB\-\-getsz\fR +Print the size in 512-byte sectors of each given block device. This option is DEPRECATED +in favour of +.BR blockdev (1). +.TP +\fB\-t\fR, \fB\-\-type\fR \fItype\fR +Enable support only for disklabels of the specified \fItype\fP, and disable +support for all other types. +.TP +\fB\-u\fR, \fB\-\-units\fR[=\fIunit\fR] +When listing partition tables, show sizes in 'sectors' or in 'cylinders'. The +default is to show sizes in sectors. For backward compatibility, it is possible +to use the option without the \fIunit\fR argument -- then the default is used. +Note that the optional \fIunit\fR argument cannot be separated from the \fB-u\fR +option by a space, the correct form is for example '-u=cylinders'. + +.TP +\fB\-C\fR, \fB\-\-cylinders\fR \fInumber\fR +Specify the number of cylinders of the disk. +I have no idea why anybody would want to do so. +.TP +\fB\-H\fR, \fB\-\-heads\fR \fInumber\fR +Specify the number of heads of the disk. (Not the physical number, +of course, but the number used for partition tables.) +Reasonable values are 255 and 16. +.TP +\fB\-S\fR, \fB\-\-sectors\fR \fInumber\fR +Specify the number of sectors per track of the disk. +(Not the physical number, of course, but the number used for +partition tables.) A reasonable value is 63. + +.TP +\fB\-w\fR, \fB\-\-wipe\fR \fIwhen\fR +Wipe filesystem, RAID and partition-table signatures from the device, in order +to avoid possible collisions. The argument \fIwhen\fR can be \fBauto\fR, +\fBnever\fR or \fBalways\fR. When this option is not given, the default is +\fBauto\fR, in which case signatures are wiped only when in interactive mode. +In all cases detected signatures are reported by warning messages +before a new partition table is created. See also +.BR wipefs (8) +command. + +.TP +\fB\-W\fR, \fB\-\-wipe-partition\fR \fIwhen\fR +Wipe filesystem, RAID and partition-table signatures from a newly created +partitions, in order to avoid possible collisions. The argument \fIwhen\fR can +be \fBauto\fR, \fBnever\fR or \fBalways\fR. When this option is not given, the +default is \fBauto\fR, in which case signatures are wiped only when in +interactive mode and after confirmation by user. In all cases detected +signatures are reported by warning messages before a new partition is +created. See also +.BR wipefs (8) +command. + +.TP +\fB\-V\fR, \fB\-\-version\fR +Display version information and exit. + +.SH DEVICES +The +.I device +is usually /dev/sda, /dev/sdb or so. A device name refers to the entire disk. +Old systems without libata (a library used inside the Linux kernel to support +ATA host controllers and devices) make a difference between IDE and SCSI disks. +In such cases the device name will be /dev/hd* (IDE) or /dev/sd* (SCSI). + +The +.I partition +is a device name followed by a partition number. For example, /dev/sda1 is the +first partition on the first hard disk in the system. See also Linux kernel +documentation (the Documentation/devices.txt file). + +.SH SIZES +The "last sector" dialog accepts partition size specified by number of sectors +or by +/-<size>{K,B,M,G,...} notation. + +If the size is prefixed by '+' then it is interpreted as relative to the +partition first sector. If the size is prefixed by '-' then it is interpreted +as relative to the high limit (last available sector for the partition). + +In the case the size is specified in bytes than the number may be followed by +the multiplicative suffixes KiB=1024, MiB=1024*1024, and so on for GiB, TiB, +PiB, EiB, ZiB and YiB. The "iB" is optional, e.g. "K" has the same meaning as +"KiB". + +The relative sizes are always aligned according to device I/O limits. The ++/-<size>{K,B,M,G,...} notation is recommended. + +For backward compatibility fdisk also accepts the suffixes KB=1000, +MB=1000*1000, and so on for GB, TB, PB, EB, ZB and YB. These 10^N suffixes +are deprecated. + +.SH SCRIPT FILES +.B fdisk +allows to read (by 'I' command) sfdisk compatible script files. The script is +applied to in-memory partition table, and then it is possible to modify the +partition table before you write it to the device. +.PP +And vice-versa it is possible to write the current in-memory disk layout +to the script file by command 'O'. +.PP +The script files are compatible between cfdisk, sfdisk, fdisk and another +libfdisk applications. For more details see +.BR sfdisk (8). + +.SH DISK LABELS +.B GPT (GUID Partition Table) +.RS +GPT is modern standard for the layout of the partition table. GPT uses 64-bit +logical block addresses, checksums, UUIDs and names for partitions and an +unlimited number of partitions (although the number of partitions is +usually restricted to 128 in many partitioning tools). + +Note that the first sector is still reserved for a +.B protective MBR +in the GPT specification. It prevents MBR-only partitioning tools +from mis-recognizing and overwriting GPT disks. + +GPT is always a better choice than MBR, especially on modern hardware with a UEFI +boot loader. +.RE + +.B DOS-type (MBR) +.RS +A DOS-type partition table can describe an unlimited number of partitions. In sector 0 +there is room for the description of 4 partitions (called `primary'). One of +these may be an extended partition; this is a box holding logical partitions, +with descriptors found in a linked list of sectors, each preceding the +corresponding logical partitions. The four primary partitions, present or not, +get numbers 1-4. Logical partitions are numbered starting from 5. + +In a DOS-type partition table the starting offset and the size of each +partition is stored in two ways: as an absolute number of sectors (given in 32 +bits), and as a +.B Cylinders/Heads/Sectors +triple (given in 10+8+6 bits). The former is OK -- with 512-byte sectors this +will work up to 2 TB. The latter has two problems. First, these C/H/S fields +can be filled only when the number of heads and the number of sectors per track +are known. And second, even if we know what these numbers should be, the 24 +bits that are available do not suffice. DOS uses C/H/S only, Windows uses +both, Linux never uses C/H/S. The +.B C/H/S addressing is deprecated +and may be unsupported in some later fdisk version. + +.B Please, read the DOS-mode section if you want DOS-compatible partitions. +.B fdisk +does not care about cylinder boundaries by default. +.RE + +.B BSD/Sun-type +.RS +A BSD/Sun disklabel can describe 8 partitions, the third of which should be a `whole +disk' partition. Do not start a partition that actually uses its first sector +(like a swap partition) at cylinder 0, since that will destroy the disklabel. +Note that a +.B BSD label +is usually nested within a DOS partition. +.RE + +.B IRIX/SGI-type +.RS +An IRIX/SGI disklabel can describe 16 partitions, the eleventh of which should be an entire +`volume' partition, while the ninth should be labeled `volume header'. The +volume header will also cover the partition table, i.e., it starts at block +zero and extends by default over five cylinders. The remaining space in the +volume header may be used by header directory entries. No partitions may +overlap with the volume header. Also do not change its type or make some +filesystem on it, since you will lose the partition table. Use this type of +label only when working with Linux on IRIX/SGI machines or IRIX/SGI disks under +Linux. +.RE + +A sync() and an ioctl(BLKRRPART) (rereading the partition table from disk) +are performed before exiting when the partition table has been updated. + +.SH "DOS mode and DOS 6.x WARNING" +.B Note that all this is deprecated. You don't have to care about things like +.B geometry and cylinders on modern operating systems. If you really want +.B DOS-compatible partitioning then you have to enable DOS mode and cylinder +.B units by using the '-c=dos -u=cylinders' fdisk command-line options. + +The DOS 6.x FORMAT command looks for some information in the first sector of +the data area of the partition, and treats this information as more reliable +than the information in the partition table. DOS FORMAT expects DOS FDISK to +clear the first 512 bytes of the data area of a partition whenever a size +change occurs. DOS FORMAT will look at this extra information even if the /U +flag is given -- we consider this a bug in DOS FORMAT and DOS FDISK. + +The bottom line is that if you use \fBfdisk\fR or \fBcfdisk\fR to change the +size of a DOS partition table entry, then you must also use +.BR dd "(1) to " "zero the first 512 bytes" +of that partition before using DOS FORMAT to format the partition. For +example, if you were using \fBfdisk\fR to make a DOS partition table entry for +/dev/sda1, then (after exiting \fBfdisk\fR and rebooting Linux so that the +partition table information is valid) you would use the command "dd +if=/dev/zero of=/dev/sda1 bs=512 count=1" to zero the first 512 bytes of the +partition. + +.B fdisk +usually obtains the disk geometry automatically. This is not necessarily the +physical disk geometry (indeed, modern disks do not really have anything like a +physical geometry, certainly not something that can be described in the simplistic +Cylinders/Heads/Sectors form), but it is the disk geometry that MS-DOS uses for +the partition table. + +Usually all goes well by default, and there are no problems if Linux is the +only system on the disk. However, if the disk has to be shared with other +operating systems, it is often a good idea to let an fdisk from another +operating system make at least one partition. When Linux boots it looks at the +partition table, and tries to deduce what (fake) geometry is required for good +cooperation with other systems. + +Whenever a partition table is printed out in DOS mode, a consistency check is +performed on the partition table entries. This check verifies that the +physical and logical start and end points are identical, and that each +partition starts and ends on a cylinder boundary (except for the first +partition). + +Some versions of MS-DOS create a first partition which does not begin +on a cylinder boundary, but on sector 2 of the first cylinder. +Partitions beginning in cylinder 1 cannot begin on a cylinder boundary, but +this is unlikely to cause difficulty unless you have OS/2 on your machine. + +For best results, you should always use an OS-specific partition table +program. For example, you should make DOS partitions with the DOS FDISK +program and Linux partitions with the Linux fdisk or Linux cfdisk programs. +.SH COLORS +Implicit coloring can be disabled by an empty file \fI/etc/terminal-colors.d/fdisk.disable\fR. + +See +.BR terminal-colors.d (5) +for more details about colorization configuration. The logical color names +supported by +.B fdisk +are: +.TP +.B header +The header of the output tables. +.TP +.B help-title +The help section titles. +.TP +.B warn +The warning messages. +.TP +.B welcome +The welcome message. + +.SH AUTHORS +.MT kzak@redhat.com +Karel Zak +.ME +.br +.MT dave@gnu.org +Davidlohr Bueso +.ME +.br +.PP +The original version was written by +Andries E. Brouwer, A. V. Le Blanc and others. + +.SH ENVIRONMENT +.IP FDISK_DEBUG=all +enables fdisk debug output. +.IP LIBFDISK_DEBUG=all +enables libfdisk debug output. +.IP LIBBLKID_DEBUG=all +enables libblkid debug output. +.IP LIBSMARTCOLS_DEBUG=all +enables libsmartcols debug output. +.IP LIBSMARTCOLS_DEBUG_PADDING=on +use visible padding characters. Requires enabled LIBSMARTCOLS_DEBUG. + +.SH "SEE ALSO" +.BR cfdisk (8), +.BR mkfs (8), +.BR partx (8), +.BR sfdisk (8) + +.SH AVAILABILITY +The fdisk command is part of the util-linux package and is available from +https://www.kernel.org/pub/linux/utils/util-linux/. |