123 lines
4.9 KiB
Plaintext
123 lines
4.9 KiB
Plaintext
|
//po4a: entry man manual
|
||
|
////
|
||
|
Copyright 1998 Andries E. Brouwer (aeb@cwi.nl)
|
||
|
May be distributed under the GNU General Public License
|
||
|
////
|
||
|
= mkswap(8)
|
||
|
:doctype: manpage
|
||
|
:man manual: System Administration
|
||
|
:man source: util-linux {release-version}
|
||
|
:page-layout: base
|
||
|
:command: mkswap
|
||
|
|
||
|
== NAME
|
||
|
|
||
|
mkswap - set up a Linux swap area
|
||
|
|
||
|
== SYNOPSIS
|
||
|
|
||
|
*mkswap* [options] _device_ [_size_]
|
||
|
|
||
|
== DESCRIPTION
|
||
|
|
||
|
*mkswap* sets up a Linux swap area on a device or in a file.
|
||
|
|
||
|
The _device_ argument will usually be a disk partition (something like _/dev/sdb7_) but can also be a file. 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. (*Warning: Solaris also uses this type. Be careful not to kill your Solaris partitions.*)
|
||
|
|
||
|
The _size_ parameter is superfluous but retained for backwards compatibility. (It specifies the desired size of the swap area in 1024-byte blocks. *mkswap* will use the entire partition or file if it is omitted. Specifying it is unwise - a typo may destroy your disk.)
|
||
|
|
||
|
After creating the swap area, you need the *swapon*(8) command to start using it. Usually swap areas are listed in _/etc/fstab_ so that they can be taken into use at boot time by a *swapon -a* command in some boot script.
|
||
|
|
||
|
== WARNING
|
||
|
|
||
|
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.
|
||
|
|
||
|
*mkswap*, like many others mkfs-like utils, *erases the first partition block to make any previous filesystem invisible.*
|
||
|
|
||
|
However, *mkswap* refuses to erase the first block on a device with a disk label (SUN, BSD, ...).
|
||
|
|
||
|
== OPTIONS
|
||
|
|
||
|
*-c*, *--check*::
|
||
|
Check the device (if it is a block device) for bad blocks before creating the swap area. If any bad blocks are found, the count is printed.
|
||
|
|
||
|
*-f*, *--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.
|
||
|
+
|
||
|
Also, without this option, *mkswap* will refuse to erase the first block on a device with a partition table.
|
||
|
|
||
|
*-q*, *--quiet*::
|
||
|
Suppress output and warning messages.
|
||
|
|
||
|
*-L*, *--label* _label_::
|
||
|
Specify a _label_ for the device, to allow *swapon*(8) by label.
|
||
|
|
||
|
*--lock*[=_mode_]::
|
||
|
Use exclusive BSD lock for device or file it operates. The optional argument _mode_ can be *yes*, *no* (or 1 and 0) or *nonblock*. If the _mode_ argument is omitted, it defaults to *yes*. This option overwrites environment variable *$LOCK_BLOCK_DEVICE*. The default is not to use any lock at all, but it's recommended to avoid collisions with *systemd-udevd*(8) or other tools.
|
||
|
|
||
|
*-p*, *--pagesize* _size_::
|
||
|
Specify the page _size_ (in bytes) to use. This option is usually unnecessary; *mkswap* reads the size from the kernel.
|
||
|
|
||
|
*-U*, *--uuid* _UUID_::
|
||
|
Specify the _UUID_ to use. The default is to generate a UUID. The format of the UUID is a series of
|
||
|
hex digits separated by hyphens, like this: "c1b9d5a2-f162-11cf-9ece-0020afc76f16". The UUID parameter
|
||
|
may also be one of the following:
|
||
|
+
|
||
|
*clear*;;
|
||
|
clear the filesystem UUID
|
||
|
*random*;;
|
||
|
generate a new randomly-generated UUID
|
||
|
*time*;;
|
||
|
generate a new time-based UUID
|
||
|
|
||
|
*-v*, *--swapversion 1*::
|
||
|
Specify the swap-space version. (This option is currently pointless, as the old *-v 0* option has become obsolete and now only *-v 1* is supported. The kernel has not supported v0 swap-space format since 2.5.22 (June 2002). The new version v1 is supported since 2.1.117 (August 1998).)
|
||
|
|
||
|
*--verbose*::
|
||
|
Verbose execution. With this option *mkswap* will output more details about detected problems during swap area set up.
|
||
|
|
||
|
include::man-common/help-version.adoc[]
|
||
|
|
||
|
== ENVIRONMENT
|
||
|
|
||
|
LIBBLKID_DEBUG=all::
|
||
|
enables libblkid debug output.
|
||
|
|
||
|
LOCK_BLOCK_DEVICE=<mode>::
|
||
|
use exclusive BSD lock. The mode is "1" or "0". See *--lock* for more details.
|
||
|
|
||
|
== NOTES
|
||
|
|
||
|
The maximum useful size of a swap area depends on the architecture and the kernel version.
|
||
|
|
||
|
The maximum number of the pages that is possible to address by swap area header is 4294967295 (32-bit unsigned int). The remaining space on the swap device is ignored.
|
||
|
|
||
|
Presently, Linux allows 32 swap areas. The areas in use can be seen in the file _/proc/swaps_.
|
||
|
|
||
|
*mkswap* refuses areas smaller than 10 pages.
|
||
|
|
||
|
If you don't know the page size that your machine uses, you can look it up with *getconf PAGESIZE*.
|
||
|
|
||
|
To set up a swap file, it is necessary to create that file before initializing it with *mkswap*, e.g. using a command like
|
||
|
|
||
|
....
|
||
|
# dd if=/dev/zero of=swapfile bs=1MiB count=$((8*1024))
|
||
|
....
|
||
|
|
||
|
to create 8GiB swapfile.
|
||
|
|
||
|
Please read notes from *swapon*(8) about *the swap file use restrictions* (holes, preallocation and copy-on-write issues).
|
||
|
|
||
|
== SEE ALSO
|
||
|
|
||
|
*fdisk*(8),
|
||
|
*swapon*(8)
|
||
|
|
||
|
include::man-common/bugreports.adoc[]
|
||
|
|
||
|
include::man-common/footer.adoc[]
|
||
|
|
||
|
ifdef::translation[]
|
||
|
include::man-common/translation.adoc[]
|
||
|
endif::[]
|