]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
sfdisk: update man page
authorKarel Zak <kzak@redhat.com>
Tue, 23 Sep 2014 13:14:44 +0000 (15:14 +0200)
committerKarel Zak <kzak@redhat.com>
Tue, 7 Oct 2014 12:55:32 +0000 (14:55 +0200)
Signed-off-by: Karel Zak <kzak@redhat.com>
disk-utils/sfdisk.8

index 26065c2378e4ed9c761c7fe6a8552ba602697a37..4c75dc0d0cdd3cf834ed2cda448d326d016835b7 100644 (file)
-.\" Copyright 1995 Andries E. Brouwer (aeb@cwi.nl)
-.\" May be distributed under the GNU General Public License
-.\" The `DOS 6.x Warning' was taken from the old fdisk.8, which says
-.\" -- Copyright 1992, 1993 Rickard E. Faith (faith@cs.unc.edu)
-.\" -- May be distributed under the GNU General Public License
-.\" The `DRDOS Warning' was taken from a net post by Stephen Tweedie.
+.\" sfdisk.8 -- man page for sfdisk
+.\" Copyright (C) 2014 Karel Zak <kzak@redhat.com>
 .\"
-.TH SFDISK 8 "August 2011" "util-linux" "System Administration"
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.TH SFDISK 8 "September 2014" "util-linux" "System Administration"
 .SH NAME
-sfdisk \- partition table manipulator for Linux
+sfdisk \- display or manipulate a disk partition table
 .SH SYNOPSIS
 .B sfdisk
 .RB [ options ]
-.I device
-.br
-.B sfdisk \-s
-.RI [ partition ]
+.RI device
+.BR [ \-N
+.IR partno ]
+.sp
+.B sfdisk
+.RB [ options ]
+.RI command
 .SH DESCRIPTION
 .B sfdisk
-has four (main) uses: list the size of a partition, list the partitions
-on a device, check the partitions on a device, and \(en very dangerous \(en
-repartition a device.
+is a script oriented tool for partitioning any block device.
 
+Since version 2.25
 .B sfdisk
-doesn't understand the GUID Partition Table (GPT) format and it is not
-designed for large partitions.  In these cases use the more advanced GNU
-.BR parted (8).
+supports MBR (DOS), GPT, SUN and SGI disk labels, but no longer provides any
+functionality for CHS (Cylinder-Head-Sector) addressing.  CHS has
+never been important for Linux, and this addressing concept does not make any
+sense for new devices.
 
-Note that
 .B sfdisk
-does not align partitions to block-device I/O limits.  This functionality is
-provided by
-.BR fdisk (8).
-
-.SS "List sizes"
-.BI "sfdisk \-s " partition
-gives the size of
-.I partition
-in blocks.  This may be useful in connection with programs like
-.BR mkswap (8).
-Here
-.I partition
-is usually something like
-.I /dev/hda1
-or
-.IR /dev/sdb12 ,
-but may also be an entire disk, like
-.IR /dev/xda .
+(since version 2.25) aligns start and end of the partitions to
+block-device I/O limits when specified by relative sizes, or when default
+values expected.
 
-.RS
-.nf
-.if t .ft CW
-% sfdisk \-s /dev/hda9
-81599
-.if t .ft R
-.fi
-.RE
-
-If the partition argument is omitted,
+.SH "BACKUP PARTITION TABLE"
+It's recommended to save device layout.
 .B sfdisk
-will list the sizes of all block devices, and the total:
+supports two ways.
 
+Use \fB\-\-dump\fR command line option to save description of the device layout
+to text file. The dump format is suitable for later sfdisk input. For example
 .RS
-.nf
-.if t .ft CW
-% sfdisk \-s
-/dev/hda: 208896
-/dev/hdb: 1025136
-/dev/hdc: 1031063
-/dev/sda: 8877895
-/dev/sdb: 1758927
-total: 12901917 blocks
-.if t .ft R
-.fi
+.sp
+.B "sfdisk --dump /dev/sda > sda.dump"
+.sp
 .RE
-
-.SS "List partitions"
-The second type of invocation:
-.BI "sfdisk \-l " device
-will list the partitions on the specified device.  If the
-.I device
-argument is omitted, the partitions on all block devices are listed.
-
+and restore by:
 .RS
-.nf
-.if t .ft CW
-% sfdisk \-l /dev/hdc
-
-Disk /dev/hdc: 16 heads, 63 sectors, 2045 cylinders
-Units = cylinders of 516096 bytes, blocks of 1024 bytes, counting from 0
-
-   Device Boot Start     End   #cyls   #blocks   Id  System
-/dev/hdc1          0+    406     407\-   205096+  83  Linux native
-/dev/hdc2        407     813     407    205128   83  Linux native
-/dev/hdc3        814    2044    1231    620424   83  Linux native
-/dev/hdc4          0       \-       0         0    0  Empty
-.if t .ft R
-.fi
+.sp
+.B "sfdisk /dev/sda < sda.dump"
 .RE
 
-The trailing \- and + signs indicate that rounding has taken place,
-and that the actual value is slightly less or more.  To see the
-exact values, ask for a listing with sectors as unit (\fB\-u S\fR).
-
-.SS "Check partitions"
-The third type of invocation:
-.BI "sfdisk \-V " device
-will apply various consistency checks to the partition tables on
-.IR device .
-It prints `OK' or complains.  The \fB\-V\fR option can be used
-together with \fB\-l\fR.  In a shell script one might use
-.BI "sfdisk \-V \-q " device
-which only returns a status.
-
-.SS "Create partitions"
-The fourth type of invocation:
-.BI "sfdisk " device
-will cause
-.B sfdisk
-to read the specification for the desired partitioning of
-.I device
-from standard input, and then to change the partition tables
-on that block device.  Thus it is possible to use
-.B sfdisk
-from a shell script.  When
-.B sfdisk
-determines that its standard input is a terminal, it will be
-conversational; otherwise it will abort on any error.
-.LP
-BE EXTREMELY CAREFUL \(en ONE TYPING MISTAKE AND ALL YOUR DATA IS LOST
-.LP
-As a precaution, one can save the sectors changed by
-.BR sfdisk :
-
+If you want to full (binary) backup of all sectors where is stored partition table 
+then use \fB\-\-backup\fR command line option. It writes the sectors to 
+~/sfdisk-<device>-<offset>.bak files. The default name of the backup file might
+be changed by \fB\-\-backup\-file\fR command line option. The backup files
+contain only raw data from the \fIdevice\fR. Note that the same concept of
+backups files uses
+.B wipefs (8)
 .RS
-.nf
-.if t .ft CW
-% sfdisk /dev/hdd \-O hdd-partition-sectors.save
-\&...
-.if t .ft R
-.fi
+.sp
+.B "sfdisk --backup /dev/sda"
+.sp
 .RE
-
-.LP
-Then, if you discover that you did something stupid before anything
-else has been written to the block device, it may be possible to recover
-the old situation with:
-
+and later restore GPT header by:
 .RS
-.nf
-.if t .ft CW
-% sfdisk /dev/hdd \-I hdd-partition-sectors.save
-.if t .ft R
-.fi
+.sp
+.B dd if=~/sfdisk-sda-0x00000200.bak of=/dev/sda seek=$((0x00000200.bak)) bs=1 conv=notrunc
+.sp
 .RE
+Note that sfdisk since version 2.25 does not provide \fB\-I\fR command line option to
+restore sectors. 
+.B dd (1)
+provides all necessary functionality.
 
-.LP
-(This is not the same as saving the old partition table:
-a readable version of the old partition table can be saved
-using the \fB\-d\fR option.  However, if you create logical partitions,
-the sectors describing them are located somewhere on block device,
-possibly on sectors that were not part of the partition table
-before.  Thus, the information the \fB\-O\fR option saves
-is not a binary version of the output of \fB\-d\fR.)
-
-There are many options.
-
-.SH OPTIONS
-.TP
-.BR \-v ", " \-\-version
-Display version information and exit.
-.TP
-.BR \-h ", " \-\-help
-Display help text and exit.
-.TP
-.BR \-T ", " \-\-list-types
-Print the recognized types (system Id's).
-.TP
-.BR \-s ", " \-\-show-size
-List the size of a partition.
-.TP
-.BR \-g ", " \-\-show-geometry
-List the kernel's idea of the geometry of the indicated block device(s).
-.TP
-.BR \-G ", " \-\-show-pt-geometry
-List the geometry of the indicated block devices guessed by looking at
-the partition table.
-.TP
-.BR \-l ", " \-\-list
-List the partitions of a device.
-.TP
-.BR \-d ", " \-\-dump
-Dump the partitions of a device in a format that is usable as input
-to \fBsfdisk\fR.  For example,
-.br
-.nf
-.if t .ft CW
-    % sfdisk \-d /dev/hda > hda.out
-    % sfdisk /dev/hda < hda.out
-.if t .ft R
-.fi
-will correct the bad last extended partition that the OS/2
-fdisk creates.
-.TP
-.BR \-V ", " \-\-verify
-Test whether partitions seem correct.  (See the third invocation type above.)
-.TP
-.BR \-i ", " \-\-increment
-Number cylinders etc.\& starting from 1 instead of 0.
-.TP
-.BI \-N " number"
-Change only the single partition indicated.  For example:
-.nf
-.if t .ft CW
-    % sfdisk /dev/hdb \-N5
-    ,,,*
-.if t .ft R
-.fi
-will make the fifth partition on /dev/hdb bootable (`active')
-and change nothing else.  (Probably this fifth partition
-is called /dev/hdb5, but you are free to call it something else,
-like `/my_equipment/disks/2/5' or so).
-.TP
-\fB\-A\fR, \fB\-\-activate\fR[=\fIdevice_or_number\fR]
-Switch on the bootable flag.
-.IP
-This option takes an optional argument.  When no option argument is given,
-the command will list the partitions that have the bootable flag set
-for the device specified as command argument.  For example:
-.IP
-.nf
-.if t .ft CW
-    % sfdisk \-\-activate /dev/sda
-.fi
-.IP
-When a device name is given as option argument, the partitions specified
-as command argument will have the bootable flag switched on.
-Other partitions for the same device will have the bootable flag cleared.
-For example, with the following command the partitions 1 and 4 are set
-to be bootable, while 2 and 3 are cleared:
-.IP
-.nf
-.if t .ft CW
-    % sfdisk \-\-activate=/dev/sda 1 4
-.fi
-.IP
-If only a single partition needs to be activated, then the partition number
-must be given as option argument, and the device as command argument.  For example:
-.IP
-.nf
-.if t .ft CW
-    % sfdisk \-\-activate=1 /dev/sda
-.fi
-.IP
-The activate option is turned by default on when the program's invocation name is
-.BR activate .
-.TP
-.BR \-c ", " \-\-id " \fInumber\fR [\fIId\fR]"
-If no \fIId\fR argument given: print the partition Id of the indicated
-partition.  If an \fIId\fR argument is present: change the type (Id) of
-the indicated partition to the given value.
-This option has two longer forms, \fB\-\-print-id\fR and \fB\-\-change-id\fR.
-For example:
-.br
-.nf
-.if t .ft CW
-    % sfdisk \-\-print-id /dev/hdb 5
-    6
-    % sfdisk \-\-change-id /dev/hdb 5 83
-    OK
-.if t .ft R
-.fi
-first reports that /dev/hdb5 has Id 6, and then changes that into 83.
-.TP
-.BR \-u ", " \-\-unit " \fIletter\fR"
-Interpret the input and show the output in the units specified by
-.IR letter .
-This \fIletter\fR can be one of S, C, B or M, meaning Sectors, Cylinders,
-.\" FIXME:  The unit "megabyte" is ambiguous.  Use "mebibyte" if "mega"
-.\" does not mean 10^6.  Otherwise add "(mega = 10^6)" after it.
-Blocks and Megabytes, respectively.  The default is
-cylinders, at least when the geometry is known.
-.TP
-.BR \-x ", " \-\-show-extended
-Also list non-primary extended partitions on output,
-and expect descriptors for them on input.
-.TP
-.BR \-C ", " \-\-cylinders " \fIcylinders\fR"
-Specify the number of cylinders, possibly overriding what the kernel thinks.
-.TP
-.BR \-H ", " \-\-heads " \fIheads\fR"
-Specify the number of heads, possibly overriding what the kernel thinks.
-.TP
-.BR \-S ", " \-\-sectors " \fIsectors\fR"
-Specify the number of sectors, possibly overriding what the kernel thinks.
+.SH COMMANDS
+The commands are mutually exclusive.
 .TP
-.BR \-f ", " \-\-force
-Do what I say, even if it is stupid.
+.BR [\-N " \fIpartno\fR"] " " \fIdevice\fR
+The default sfdisk command is to read the specification for the desired 
+partitioning of \fIdevice\fR from standard input, and then create a partition
+table according to the specification. See below description of the input
+format. If the standard input is a terminal then sfdisk starts interactive session.
 .TP
-.BR \-q ", " \-\-quiet
-Suppress warning messages.
-.TP
-.BR \-L ", " \-\-Linux
-Do not complain about things irrelevant for Linux.
-.TP
-.BR \-D ", " \-\-DOS
-For DOS-compatibility: waste a little space.
-(More precisely: if a partition cannot contain sector 0,
-e.g.\& because that is the MBR of the device, or contains
-the partition table of an extended partition, then
-.B sfdisk
-would make it start the next sector.  However, when this
-option is given it skips to the start of the next track,
-wasting for example 33 sectors (in case of 34 sectors/track),
-just like certain versions of DOS do.)
-Certain Disk Managers and boot loaders (such as OSBS, but not
-LILO or the OS/2 Boot Manager) also live in this empty space,
-so maybe you want this option if you use one.
-.TP
-.BR \-E ", " \-\-DOS-extended
-Take the starting sector numbers of "inner" extended partitions
-to be relative to the starting cylinder boundary of the outer one
-(like some versions of DOS do), rather than relative to the actual
-starting sector (like Linux does).
-(The fact that there is a difference here means that one should
-always let extended partitions start at cylinder boundaries if
-DOS and Linux should interpret the partition table in the same way.
-Of course one can only know where cylinder boundaries are when
-one knows what geometry DOS will use for this block device.)
-.TP
-.BR \-U ", " "\-\-unhide " \fIdevice\fR
-Make various Microsoft partition types unhidden.  For full list see types
-output.
-.IP
-.nf
-.if t .ft CW
-    % sfdisk \-\-list-types | grep Hidden
-.fi
-.IP
-Notice that the
-.B Hidden NTFS WinRE
-(Windows Recovery Environment) does not have non-hidden equivalent.
-.TP
-.BR \-\-IBM ", " \-\-leave-last
-Certain IBM diagnostic programs assume that they can use the
-last cylinder on a device for disk-testing purposes.  If you think
-you might ever run such programs, use this option to tell
-.B sfdisk
-that it should not allocate the last cylinder.
-Sometimes the last cylinder contains a bad sector table.
-.TP
-.B \-n
-Go through all the motions, but do not actually write to block device.
-.TP
-.BR \-R ", " \-\-re-read
-Only execute the BLKRRPART ioctl (to make the kernel re-read
-the partition table).  This can be useful for checking in advance
-that the final BLKRRPART will be successful, and also when you
-changed the partition table `by hand' (e.g., using dd from a backup).
-If the kernel complains (`device busy for revalidation (usage = 2)')
-then something still uses the device, and you still have to unmount
-some file system, or say swapoff to some swap partition.
+.BR \-a , " \-\-activate " \fIdevice\fR " "[\fIpartno\fR]
+Switchs on the bootable flag. If \fIpartno\fR no specified then lists all partitions
+with enabled flag.
+
+.SH OPTIONS
 .TP
-.B \-\-no-reread
-When starting a repartitioning of a block device, \fBsfdisk\fR checks that this device
-is not mounted, or in use as a swap device, and refuses to continue
-if it is.  This option suppresses the test.  (On the other hand, the \fB\-f\fR
-option would force \fBsfdisk\fR to continue even when this test fails.)
+.BR \-A , " \-\-append"
+Don't create a new partition table, but rather appends specified partitions only.
 .TP
-.B \-\-in-order
-Partitions are in order.  See also warning section.
+.BR \-b , " \-\-backup"
+Backup the current partition table sectors before start partitioning. The defautl
+backup file name is ~/sfdisk-<device>-<offset>.bak, see \fI\-\-backup-file\fR.
 .TP
-.B \-\-not-in-order
-Partitions are not in order.  See also warning section.
+.BR \-f , " \-\-force"
+Disable all consistency checking.
 .TP
-.B \-\-inside-outer
-All logical partitions are inside outermost extended.  See also warning
-section and chaining.
+.BR \-O , " \-\-backup-file " \fIpath\fR
+Override default backup file name. Note that the device name and offset is always
+appended to the file name.
 .TP
-.B \-\-not-inside-outer
-Some, or none, of the logical partitions are not inside outermost
-extended.  See also warning section and chaining.
+.BR \-q , " \-\-quiet"
+Suppress extra info messages.
 .TP
-.B \-\-nested
-Caution, see warning section.  Every partition is contained in the
-surrounding partitions and is disjoint from all others.
+.BR \-n , " \-\-no\-act"
+Do everything except write to device.
 .TP
-.B \-\-chained
-Caution, see warning section.  Every data partition is contained in
-the surrounding partitions and disjoint from all others, but
-extended partitions may lie outside (insofar as allowed by
-all_logicals_inside_outermost_extended).
+.BR "\-\-no\-reread"
+Do not check by re-read-partition-table ioctl whether the device is in use.
 .TP
-.B \-\-onesector
-Caution, see warning section.  All data partitions are mutually
-disjoint; extended partitions each use one sector only (except
-perhaps for the outermost one).
+.BR \-u , " \-\-unit " S
+Deprecated option. Specify input units, only sector unit is supported.
 .TP
-.BI \-O " file"
-Just before writing the new partition, output the sectors
-that are going to be overwritten to
-.I file
-(where hopefully
-.I file
-resides on another block device, or on a floppy).
+.BR "\-\-Linux"
+Deprecated and ignored option. Linux (and another moder OS) compatible
+partitioning is the default.
 .TP
-.BI \-I " file"
-After destroying your filesystems with an unfortunate
-.B sfdisk
-command, you would have been able to restore the old situation
-if only you had preserved it using the \fB\-O\fR flag.
+.BR \-h , " \-\-help"
+Display help text and exit.
 .TP
-.BR \-1 ", " \-\-one-only
-Reserved option that does nothing currently.
-
-.SH THEORY
-Block 0 of a block device (the Master Boot Record) contains among
-other things four partition descriptors.  The partitions
-described here are called
-.I primary
-partitions.
-.LP
-A partition descriptor has 6 fields:
-.br
-.nf
-.RS
-struct partition {
-    unsigned char bootable;            /* 0 or 0x80 */
-    hsc begin_hsc;
-    unsigned char id;
-    hsc end_hsc;
-    unsigned int starting_sector;
-    unsigned int nr_of_sectors;
-}
-.RE
-.fi
-.LP
-The two hsc fields indicate head, sector and cylinder of the
-begin and the end of the partition.  Since each hsc field only
-takes 3 bytes, only 24 bits are available, which does not
-.\" FIXME
-.\" The unit "GB" is ambiguous.  Use "GiB" if "G" does not mean
-.\" 10^9.  Otherwise add "(G = 10^9)" after it.
-suffice for big block devices (say > 8\ GB).  In fact, due to the wasteful
-representation (that uses a byte for the number of heads, which
-.\" FIXME GB (see 4 lines earlier)
-is typically 16), problems already start with 0.5\ GB.
-However Linux does not use these fields, and problems can arise
-only at boot time, before Linux has been started.  For more
-details, see the
-.B lilo
-documentation.
-.LP
-Each partition has a type, its `Id', and if this type is 5 or f
-.IR "" "(`" "extended partition" "')"
-the starting sector of the partition
-again contains 4 partition descriptors.  MSDOS only uses the
-first two of these: the first one an actual data partition,
-and the second one again an extended partition (or empty).
-In this way one gets a chain of extended partitions.
-Other operating systems have slightly different conventions.
-Linux also accepts type 85 as equivalent to 5 and f \(en this can be
-useful if one wants to have extended partitions under Linux past
-the 1024 cylinder boundary, without DOS FDISK hanging.
-(If there is no good reason, you should just use 5, which is
-understood by other systems.)
-.LP
-Partitions that are not primary or extended are called
-.IR logical .
-Often, one cannot boot from logical partitions (because the
-process of finding them is more involved than just looking
-at the MBR).
-Note that of an extended partition only the Id and the start
-are used.  There are various conventions about what to write
-in the other fields.  One should not try to use extended partitions
-for data storage or swap.
-
-.SH "INPUT FORMAT"
-.B sfdisk
-reads lines of the form
-.br
-.RS
-<start> <size> <id> <bootable> <c,h,s> <c,h,s>
-.RE
-where each line fills one partition descriptor.
-.LP
-Fields are separated by whitespace, or comma or semicolon possibly
-followed by whitespace; initial and trailing whitespace is ignored.
-Numbers can be octal, decimal or hexadecimal, decimal is default.
-When a field is absent or empty, a default value is used.
-.LP
-The <c,h,s> parts can (and probably should) be omitted \(en
-.B sfdisk
-computes them from <start> and <size> and the block device geometry
-as given by the kernel or specified using the \-H, \-S, \-C flags.
-.LP
-Bootable is specified as [*|\-], with as default not-bootable.
-(The value of this field is irrelevant for Linux \(en when Linux
-runs it has been booted already \(en but might play a role for
-certain boot loaders and for other operating systems.
-For example, when there are several primary DOS partitions,
-DOS assigns C: to the first among these that is bootable.)
-.LP
-Id is given in hex, without the 0x prefix, or is [E\~|\~S\~|\~L\~|\~X], where
-L (LINUX_NATIVE (83)) is the default, S is LINUX_SWAP (82), E
-is EXTENDED_PARTITION (5), and X is LINUX_EXTENDED (85).
-.LP
-The default value of start is the first nonassigned sector/cylinder/...
-.LP
-The default value of size is as much as possible (until next
-partition or end-of-device).
-.LP
-However, for the four partitions inside an extended partition,
-the defaults are: Linux partition, Extended partition, Empty, Empty.
-.LP
-But when the \-N option (change a single partition only) is given,
-the default for each field is its previous value.
-.LP
-A '+' can be specified instead of a number for size, which means
-as much as possible.  This is useful with the \-N option.
-.SH EXAMPLE
-The command
-.RS
-.nf
-.if t .ft CW
-sfdisk /dev/hdc << EOF
-0,407
-,407
-;
-;
-EOF
-.if t .ft R
-.fi
-.RE
-will partition /dev/hdc just as indicated above.
-
-The command
-.RS
-.nf
-.if t .ft CW
-sfdisk /dev/hdb << EOF
-,3,L
-,60,L
-,19,S
-,,E
-,130,L
-,130,L
-,130,L
-,,L
-EOF
-.if t .ft R
-.fi
-.RE
-will partition /dev/hdb into two Linux partitions of 3 and 60
-cylinders, a swap space of 19 cylinders, and an extended partition
-covering the rest.  Inside the extended partition there are four
-Linux logical partitions, three of 130 cylinders and one
-covering the rest.
-
-With the \-x option, the number of input lines must be a multiple of 4:
-you have to list the two empty partitions that you never want
-using two blank lines.  Without the \-x option, you give one line
-for the partitions inside a extended partition, instead of four,
-and terminate with end-of-file (^D).
-(And
-.B sfdisk
-will assume that your input line represents the first of four,
-that the second one is extended, and the 3rd and 4th are empty.)
-.SH "CAUTION WARNINGS"
-
-The options marked with caution in the manual page are dangerous.
-For example not all functionality is completely implemented,
-which can be a reason for unexpected results.
-.SH "DOS 6.x WARNING"
-
-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 \(en we consider
-this a bug in DOS FORMAT and DOS FDISK.
-.LP
-The bottom line is that if you use sfdisk to change the size of a
-DOS partition table entry, then you must also use
-.B dd
-to zero the first 512 bytes of that partition before using DOS FORMAT to
-format the partition.  For example, if you were using sfdisk to make a DOS
-partition table entry for /dev/hda1, then (after exiting sfdisk and
-rebooting Linux so that the partition table information is valid) you
-would use the command "dd if=/dev/zero of=/dev/hda1 bs=512 count=1" to zero
-the first 512 bytes of the partition.
-.B BE EXTREMELY CAREFUL
-if you use the
-.B dd
-command, since a small typo can make all of the data on your block device useless.
-
-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 sfdisk program.
-
-.SH "DRDOS WARNINGS"
-
-Stephen Tweedie reported (930515): `Most reports of superblock
-corruption turn out to be due to bad partitioning, with one filesystem
-overrunning the start of the next and corrupting its superblock.
-I have even had this problem with the supposedly-reliable DRDOS.  This
-was quite possibly due to DRDOS-6.0's FDISK command.  Unless I created
-a blank track or cylinder between the DRDOS partition and the
-immediately following one, DRDOS would happily stamp all over the
-start of the next partition.  Mind you, as long as I keep a little
-free device space after any DRDOS partition, I don't have any other
-problems with the two coexisting on the one drive.'
-
-A.\& V.\& Le Blanc writes in README.efdisk: `Dr.\& DOS 5.0 and 6.0 has been
-reported to have problems cooperating with Linux, and with this version
-of efdisk in particular.  This efdisk sets the system type
-to hexadecimal 81.  Dr.\& DOS seems to confuse
-this with hexadecimal 1, a DOS code.  If you use Dr.\& DOS, use the
-efdisk command 't' to change the system code of any Linux partitions
-to some number less than hexadecimal 80; I suggest 41 and 42 for
-the moment.'
-
-A.\& V.\& Le Blanc writes in his README.fdisk: `DR-DOS 5.0 and 6.0
-are reported to have difficulties with partition ID codes of 80 or more.
-The Linux `fdisk' used to set the system type
-of new partitions to hexadecimal 81.  DR-DOS seems to confuse this with
-hexadecimal 1, a DOS code.  The values 82 for swap and 83 for file
-systems should not cause problems with DR-DOS.  If they do, you may use
-the `fdisk' command `t' to change the system code of any Linux
-partitions to some number less than hexadecimal 80; I suggest 42 and 43
-for the moment.'
-
-In fact, it seems that only 4 bits are significant for the DRDOS FDISK,
-so that for example 11 and 21 are listed as DOS 2.0.  However, DRDOS
-itself seems to use the full byte.  I have not been able to reproduce
-any corruption with DRDOS or its fdisk.
-
-.SH BUGS
-There are too many options.
-.LP
-There is no support for non-DOS partition types.
+.BR \-V , " \-\-version"
+Display version information and exit.
 
-.\" .SH AUTHOR
-.\" A. E. Brouwer (aeb@cwi.nl)
-.\"
 .SH "SEE ALSO"
-.BR cfdisk (8),
 .BR fdisk (8),
-.BR mkfs (8),
+.BR cfdisk (8),
 .BR parted (8),
 .BR partprobe (8),
-.BR kpartx (8)
+.BR partx(8)
+.SH AUTHOR
+Karel Zak <kzak@redhat.com>
+.PP
+The current sfdisk implementation is based on the original sfdisk
+from Andries E. Brouwer.
+
 .SH AVAILABILITY
 The sfdisk command is part of the util-linux package and is available from
 ftp://ftp.kernel.org/pub/linux/utils/util-linux/.