Hi, The current man page of fdisk mistakenly mentions that the "deprecated DOS behavior could be enabled by '-cdos -ucyl' command line options". The first patch corrects this to 'c=dos u=cylinders'. It takes the opportunity to also make many small textual and consistency improvements. The second patch removes the obsolete -v0 option from the mkswap man page. And also makes several small textual improvements. The third patch tweaks two READMEs. Regards, Benno -- http://www.fastmail.fm - Same, same, but different...
From 3a8a394d2acace6c16cc829eef8cc3ac7be837f1 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg <bensberg@xxxxxxxxxxxxx> Date: Sun, 20 Jun 2010 12:19:46 +0200 Subject: [PATCH 1/3] fdisk: improve the description of -c and -u options on man page Also doublespace sentences, hyphenate compound adjectives, alphabetize the options (except for -CHS), and further tweak some descriptions. Signed-off-by: Benno Schulenberg <bensberg@xxxxxxxxxxxxx> --- fdisk/fdisk.8 | 127 +++++++++++++++++++++++++++----------------------------- 1 files changed, 61 insertions(+), 66 deletions(-) diff --git a/fdisk/fdisk.8 b/fdisk/fdisk.8 index 26a47d2..a2d8e43 100644 --- a/fdisk/fdisk.8 +++ b/fdisk/fdisk.8 @@ -3,7 +3,7 @@ .\" May be distributed under the GNU General Public License .TH FDISK 8 "11 June 1998" "Linux 2.0" "Linux Programmer's Manual" .SH NAME -fdisk \- Partition table manipulator for Linux +fdisk \- partition table manipulator for Linux .SH SYNOPSIS .B fdisk .RB [ \-uc ] @@ -30,32 +30,32 @@ fdisk \- Partition table manipulator for Linux .SH DESCRIPTION .B fdisk (in the first form of invocation) -is a menu driven program for creation and manipulation of +is a menu-driven program for creation and manipulation of partition tables. -It understands DOS type partition tables and BSD or SUN type disklabels. +It understands DOS-type partition tables and BSD- or SUN-type disklabels. .B fdisk -does not understand GUID Partition Table (GPT) and -it is not designed for large partitions. In particular case use more advanced GNU +does not understand GUID partition tables (GPTs) and it is not designed +for large partitions. In these cases, use the more advanced GNU .BR parted (8). -.B fdisk does not use DOS-compatible mode and cylinders -as display units by default. The old deprecated DOS behavior could be -enabled by '-cdos -ucyl' command line options. +.B fdisk +does not use DOS-compatible mode and cylinders as display units by default. +The old deprecated DOS behavior can be enabled with +the '-c=dos -u=cylinders' command-line options. Hard disks can be divided into one or more logical disks called .IR partitions . -This division is described in the -.I "partition table" +This division is recorded in the +.IR "partition table" , found in sector 0 of the disk. - -In the BSD world one talks about `disk slices' and a `disklabel'. +(In the BSD world one talks about `disk slices' and a `disklabel'.) Linux needs at least one partition, namely for its root file system. It can use swap files and/or swap partitions, but the latter are more -efficient. So, usually one will want a second Linux partition +efficient. So, usually one will want a second Linux partition dedicated as swap partition. -On Intel compatible hardware, the BIOS that boots the system +On Intel-compatible hardware, the BIOS that boots the system can often only access the first 1024 cylinders of the disk. For this reason people with large disks often create a third partition, just a few MB large, typically mounted on @@ -68,56 +68,53 @@ or testing, to use more than the minimum number of partitions. .SH DEVICES The .I device -is usually /dev/sda, /dev/sdb or so. A device name refers to the entire disk. -The old systems without libata (a library used inside the Linux kernel to +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 a case the device name will be /dev/hd* (IDE) or /dev/sd* +SCSI disks. In such cases the device name will be /dev/hd* (IDE) or /dev/sd* (SCSI). The .I partition -is a -.I device -name followed by a partition number. For example, -.B /dev/sda1 +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 DISK LABELS -A BSD/SUN type disklabel can describe 8 partitions, +A BSD/SUN-type 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. -An IRIX/SGI type disklabel can describe 16 partitions, +An IRIX/SGI-type 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 and make some file system on it, since +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. -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 +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 start numbering from 5. -In a DOS type partition table the starting offset and the size +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 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 different -problems. First of all, these C/H/S fields can be filled only +of sectors (given in 32 bits), and as a 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. Secondly, even if we know what these numbers should be, +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. @@ -127,19 +124,19 @@ will obtain 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 simplistic Cylinders/Heads/Sectors form), -but is the disk geometry that MS-DOS uses for the partition table. +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 +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 +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, 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 the partition starts +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 @@ -147,11 +144,11 @@ 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. -A sync() and a BLKRRPART ioctl() (reread partition table from disk) +A sync() and an ioctl(BLKRRPART) (reread partition table from disk) are performed before exiting when the partition table has been updated. Long ago it used to be necessary to reboot after the use of fdisk. -I do not think this is the case anymore - indeed, rebooting too quickly -might cause loss of not-yet-written data. Note that both the kernel +I do not think this is the case anymore -- indeed, rebooting too quickly +might cause loss of not-yet-written data. Note that both the kernel and the disk hardware may buffer data. .SH "DOS 6.x WARNING" @@ -186,20 +183,17 @@ program and Linux partitions with the Linux fdisk or Linux cfdisk program. .SH OPTIONS .TP .BI "\-b " sectorsize -Specify the sector size of the disk. Valid values are 512, 1024, 2048 or 4096. -(Recent kernels know the sector size. Use this only on old kernels or -to override the kernel's ideas.) Since util-linux-ng 2.17 fdisk differentiates -between logical and physical sector size. This option changes both sector sizes to +Specify the sector size of the disk. Valid values are 512, 1024, 2048 or 4096. +(Recent kernels know the sector size. Use this only on old kernels or +to override the kernel's ideas.) Since util-linux-ng-2.17, fdisk differentiates +between logical and physical sector size. This option changes both sector sizes to .IB sectorsize . .TP -.BI \-h -Print help and then exit. -.TP .BI "\-c"[=mode] -Specifies the compatiblity mode, 'dos' or 'nondos' mode. The default is non-DOS -compatibility mode. For backward compatibility the option is possible to use -without <mode> argument, then the default is used. Note that the optional -<mode> argument cannot be separated from the -c option by space, the correct +Specify the compatiblity mode, 'dos' or 'nondos'. The default is non-DOS +mode. For backward compatibility, it is possible to use the option without +the <mode> argument -- then the default is used. Note that the optional +<mode> argument cannot be separated from the -c option by a space, the correct form is for example '-c=dos'. .TP .BI "\-C " cyls @@ -207,7 +201,7 @@ Specify the number of cylinders of the disk. I have no idea why anybody would want to do so. .TP .BI "\-H " heads -Specify the number of heads of the disk. (Not the physical number, +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 @@ -217,23 +211,24 @@ Specify the number of sectors per track of the disk. partition tables.) A reasonable value is 63. .TP +.BI \-h +Print help and then exit. +.TP .B \-l List the partition tables for the specified devices and then exit. If no devices are given, those mentioned in .I /proc/partitions (if that exists) are used. .TP -.BI "\-u"[=unit] -When listing partition tables, give sizes in 'sectors' or in 'cylinders'. The -default is to give sizes in sectors. For backward compatibility the option is -possible to use without <units> argument, then the default is used. Note that -the optional <unit> argument cannot be separated from the -u option by space, -the correct form is for example '-u=cylinders'. +.BI "\-s " partition... +Print the size (in blocks) of each given partition. .TP -.BI "\-s " partition -The -.I size -of the partition (in blocks) is printed on the standard output. +.BI "\-u"[=unit] +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 <units> argument -- then the default is used. +Note that the optional <unit> argument cannot be separated from the -u option +by a space, the correct form is for example '-u=cylinders'. .TP .B \-v Print version number of @@ -250,14 +245,14 @@ Try them in the order .B cfdisk is a beautiful program that has strict requirements on the partition tables it accepts, and produces high quality partition -tables. Use it if you can. +tables. Use it if you can. .B fdisk is a buggy program that does fuzzy things - usually it happens to -produce reasonable results. Its single advantage is that it has +produce reasonable results. Its single advantage is that it has some support for BSD disk labels and other non-DOS partition tables. Avoid it if you can. .B sfdisk -is for hackers only - the user interface is terrible, but it is +is for hackers only -- the user interface is terrible, but it is more correct than fdisk and more powerful than both fdisk and cfdisk. Moreover, it can be used noninteractively.) .PP @@ -266,7 +261,7 @@ These days there also is The cfdisk interface is nicer, but parted does much more: it not only resizes partitions, but also the filesystems that live in them. .PP -The IRIX/SGI type disklabel is currently not supported by the kernel. +The IRIX/SGI-type disklabel is currently not supported by the kernel. Moreover, IRIX/SGI header directories are not fully supported yet. .PP The option `dump partition table to file' is missing. -- 1.6.3.3
From 8ef504d30a1337da268c9853b3006af846c1e9c0 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg <bensberg@xxxxxxxxxxxxx> Date: Sun, 20 Jun 2010 14:39:59 +0200 Subject: [PATCH 2/3] mkswap: tweak the man page Note that option -v0 is obsolete, and remove the now unneeded comment about new-style swap areas. Further doublespace sentences, add some commas and articles, and alphabetize the options. Signed-off-by: Benno Schulenberg <bensberg@xxxxxxxxxxxxx> --- disk-utils/mkswap.8 | 70 +++++++++++++++++++++++++------------------------- 1 files changed, 35 insertions(+), 35 deletions(-) diff --git a/disk-utils/mkswap.8 b/disk-utils/mkswap.8 index cab1a6e..283a933 100644 --- a/disk-utils/mkswap.8 +++ b/disk-utils/mkswap.8 @@ -27,10 +27,10 @@ The argument will usually be a disk partition (something like .IR /dev/sdb7 ) but can also be a file. -The Linux kernel does not look at partition Id's, but +The Linux kernel does not look at partition IDs, but many installation scripts will assume that partitions of hex type 82 (LINUX_SWAP) are meant to be swap partitions. -(\fBWarning: Solaris also uses this type. Be careful not to kill +(\fBWarning: Solaris also uses this type. Be careful not to kill your Solaris partitions.\fP) The @@ -39,39 +39,39 @@ parameter is superfluous but retained for backwards compatibility. (It specifies the desired size of the swap area in 1024-byte blocks. .B mkswap will use the entire partition or file if it is omitted. -Specifying it is unwise - a typo may destroy your disk.) +Specifying it is unwise -- a typo may destroy your disk.) The .I PSZ -parameter specifies the page size to use. It is almost always +parameter specifies the page size to use. It is almost always unnecessary (even unwise) to specify it, but certain old libc versions lie about the page size, so it is possible that .B mkswap -gets it wrong. The symptom is that a subsequent +gets it wrong. The symptom is that a subsequent .B swapon -fails because no swap signature is found. Typical values for +fails because no swap signature is found. Typical values for .I PSZ are 4096 or 8192. After creating the swap area, you need the .B swapon -command to start using it. Usually swap areas are listed in +command to start using it. Usually swap areas are listed in .I /etc/fstab so that they can be taken into use at boot time by a .B swapon -a command in some boot script. .SH WARNING -The swap header does not touch the first block. A boot loader or disk label -can be there, but it is not recommended setup. The recommended setup is to +The swap header does not touch the first block. A boot loader or disk label +can be there, but it is not a recommended setup. The recommended setup is to use a separate partition for a Linux swap area. -.B mkswap like many others mkfs-like utils erases the first block to remove +.B mkswap, like many others mkfs-like utils, erases the first block to remove .B old on-disk filesystems. .B mkswap refuses to erase the first block on a device with a disk -label (SUN, BSD, ...) or on whole disk (e.g. /dev/sda). +label (SUN, BSD, ...) or on a whole disk (e.g. /dev/sda). .SH OPTIONS .TP @@ -81,45 +81,45 @@ before creating the swap area. If any are found, the count is printed. .TP .B \-f -Force - go ahead even if the command is stupid. +Force -- go ahead even if the command is stupid. This allows the creation of a swap area larger than the file or partition it resides on. -Without this option +Without this option, .B mkswap will refuse to erase the first block on a device with a partition table or on -whole disk (e.g. /dec/sda). +a whole disk (e.g. /dev/sda). +.TP +.BI \-L \ label +Specify a label, to allow +.B swapon +by label. .TP .BI \-p \ PSZ -Specify the page size in bytes to use. This option is usually unnecessary, +Specify the page size (in bytes) to use. This option is usually unnecessary, .B mkswap -reads the size from kernel. +reads the size from the kernel. .TP -.BI \-L \ label -Specify a label, to allow swapon by label. -(Only for new style swap areas.) +.BI \-U \ uuid +Specify the uuid to use. The default is to generate a UUID. .TP -.BR \-v0 , \ \-v1 -Specify the swap space version. This option is deprecated and \-v1 is -supported only. - -The kernel has not supported v0 swap space format since 2.5.22. The new version -v1 is supported since 2.1.117. +.BR \-v1 +Specify the swap-space version. The old \-v0 option has become obsolete +and now only \-v1 is supported. -.TP -.BI \-U \ uuid -Specify the uuid to use. The default is to generate UUIDs. +The kernel has not supported v0 swap-space format since 2.5.22. +The new version v1 is supported since 2.1.117. .SH NOTES The maximum useful size of a swap area depends on the architecture and the kernel version. -It is roughly 2GiB on i386, PPC, m68k, ARM, 1GiB on sparc, 512MiB on mips, -128GiB on alpha and 3TiB on sparc64. For kernels after 2.3.3 there is no +It is roughly 2GiB on i386, PPC, m68k and ARM, 1GiB on sparc, 512MiB on mips, +128GiB on alpha, and 3TiB on sparc64. For kernels after 2.3.3 there is no such limitation. -Note that before 2.1.117 the kernel allocated one byte for each page, -while it now allocates two bytes, so that taking a swap area of 2 GiB -in use might require 2 MiB of kernel memory. +Note that before version 2.1.117 the kernel allocated one byte for each page, +while it now allocates two bytes, so that taking into use a swap area of 2 GiB +might require 2 MiB of kernel memory. Presently, Linux allows 32 swap areas (this was 8 before Linux 2.4.10). The areas in use can be seen in the file @@ -130,10 +130,10 @@ The areas in use can be seen in the file refuses areas smaller than 10 pages. If you don't know the page size that your machine uses, you may be -able to look it up with "cat /proc/cpuinfo" (or you may not - +able to look it up with "cat /proc/cpuinfo" (or you may not -- the contents of this file depend on architecture and kernel version). -To setup a swap file, it is necessary to create that file before +To set up a swap file, it is necessary to create that file before initializing it with .BR mkswap , e.g. using a command like -- 1.6.3.3
From 514779e25b82bdc0db71e59e9933ac60fac54578 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg <bensberg@xxxxxxxxxxxxx> Date: Sun, 20 Jun 2010 14:51:44 +0200 Subject: [PATCH 3/3] textual: slightly improve two README files Signed-off-by: Benno Schulenberg <bensberg@xxxxxxxxxxxxx> --- README.devel | 14 +++++++------- README.licensing | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/README.devel b/README.devel index d813574..3ffc9c0 100644 --- a/README.devel +++ b/README.devel @@ -4,19 +4,19 @@ AUTOTOOLS: - * "./autogen.sh" generates all necessary files (run it after checkout from - git) + * "./autogen.sh" generates all files needed to compile and install the code + (run it after checkout from git) - * "make distclean" removes all unnecessary files, but code is still possible - recompile by "./configure; make" + * "make distclean" removes all unnecessary files, but the code can still be + recompiled with "./configure; make" - * "make dist-gzip" (or -bzip2) creates tarball which is possible use without - autogen.sh + * "make dist-gzip" (or -bzip2) creates a tarball that can be configured and + compiled without running "./autogen.sh" PATCHES: - * send your patches to the mailing list or to upstream maintainer + * send your patches to the mailing list or to the upstream maintainer (see the AUTHORS file) * diff -u diff --git a/README.licensing b/README.licensing index 0f4fef0..6beb96e 100644 --- a/README.licensing +++ b/README.licensing @@ -1,6 +1,6 @@ -The project utils-linux-ng doesn't use same license for all code. There are -code with: +The project util-linux-ng doesn't use the same license for all of the code. +There is code under: * GPLv3+ (GNU General Public License version 3, or any later version) @@ -14,7 +14,7 @@ code with: * Public Domain -Please, check source code for more details. A license is usually at the start +Please, check the source code for more details. A license is usually at the start of each source file. The /COPYING file (GPLv2+) is the default license for code without an explicitly -- 1.6.3.3