MKSWAP
Section: System Administration (8)
Updated: March 2009
Index
Return to Main Contents
名前
mkswap - Linux のスワップ領域を準備する
書式
mkswap
[options]
device
[size]
説明
mkswap
は Linux のスワップ領域をデバイス上またはファイル上に準備する。
引き数
device
は通常はディスクパーティション
(/dev/sdb7
のようなもの) であるが、ファイルを指定することもできる。
Linux カーネルはパーティション ID を参照しないが、
インストールスクリプトの多くでは、パーティション形式が
16 進の 82 (LINUX_SWAP) となっているものをスワップパーティション
とみなしている。
(警告: Solaris もこの形式を使う。
Solaris のパーティションを破壊しないように注意すること。)
size
パラメータは不要であるが、過去との互換性のために残してある。
(スワップ領域にしたいサイズを 1024 バイトブロック単位で指定する。
このパラメータが省略されると、
mkswap
はパーティション全体を用いる。
このパラメータは指定しないほうが賢い。タイプミスをすると
ディスクを壊してしまう。)
スワップ領域を準備した後にこの領域の利用を開始するには、
swapon
コマンドを用いる必要がある。通常スワップ領域は
/etc/fstab
にリストされ、起動スクリプトに記述されている
swapon -a
コマンドによって、起動時から利用できるようになっている。
警告
スワップヘッダは、最初のブロックに書き込まない。
ブートローダやディスクラベルをここに置くことができるが、
推奨される設定ではない。
推奨される設定としては、Linux スワップ領域に別のパーティションを使うことである。
mkswap
は他の mkfs ユーティリティのように、
以前のファイルシステムが見えなくなるように、
最初のパーティションブロックを消去する。
しかし、
mkswap
はディスクラベル (SUN, BSD, ...) が書かれた
デバイスの最初のブロックを消去しない。
オプション
- -c, --check
-
スワップ領域を作る前に、デバイスに対して不良ブロックの
チェックを行う。
不良ブロックが見つかった場合は、そのカウント数を表示する。
- -f, --force
-
馬鹿なコマンドでも実行する。
これを指定すると、ファイルまたはパーティションの実際の大きさよりも
大きなスワップファイルを作る動作ができてしまう。
また、このオプションを使わないと、
mkswap
はパーティションテーブルが書かれたデバイスの最初のブロックを
消去しない。
- -L, --label label
-
ラベル label を指定し、そのラベルで
swapon
できるようにする。
- -p, --pagesize size
-
指定されたページサイズ size (バイト単位) を使う。
mkswap
はページサイズをカーネルから読み出すので、
このオプションは通常は必要ない。
- -U, --uuid UUID
-
指定した UUID を使う。
デフォルトは UUID を生成する。
- -v, --swapversion 1
-
スワップ領域のバージョンを指定する。
(-v 0
オプションは廃止されていて、今は
-v 1
のみがサポートされているので、
このオプションは現在では意味がない。
カーネルは v0 のスワップ領域を 2.5.22 (2002 年 6 月) 以降でサポートしていない。
また、新しいバージョン v1 を 2.1.117 (1998 年 8 月) 以降でサポートしている。)
- -h, --help
-
ヘルプを表示して、終了する。
- -V, --version
-
バージョン情報を表示して、終了する。
注意
利用できるスワップ領域の最大値は、アーキテクチャとカーネルバージョンに
依存する。
スワップ領域のヘッダでアドレス指定可能な最大のページサイズは、
4294967295 (32-bit unsigned int) である。
スワップデバイスの残りの領域は無視される。
現時点では、 Linux は 32 個のスワップ領域を持つことができる。
利用している領域は
/proc/swaps
ファイルで見ることができる。
mkswap
では 10 ページより小さい領域を作ることはできない。
使っているマシンのページサイズがわからない場合は、"cat /proc/cpuinfo"
によって調べることができるかもしれない。
(できないかもしれない - このファイルの内容はアーキテクチャと
カーネルのバージョンに依存しているので。)
スワップファイルを作成する場合は、
mkswap
による初期化を行う前に、ファイルを作成しておく必要がある。
この目的には、以下のようなコマンドを用いれば良い:
- # dd if=/dev/zero of=swapfile bs=1MiB count=$((8*1024))
これで 8GiB スワップファイルが作成できる。
スワップファイル利用の制約
(ホール、事前確保、copy-on-write の問題)
については、
swapon(8)
の注意を読むこと。
環境変数
- LIBBLKID_DEBUG=all
-
libblkid デバッグ出力を有効にする。
関連項目
fdisk(8),
swapon(8)
入手方法
mkswap コマンドは util-linux パッケージの一部であり、
https://www.kernel.org/pub/linux/utils/util-linux/
から入手できる。
Index
- 名前
-
- 書式
-
- 説明
-
- 警告
-
- オプション
-
- 注意
-
- 環境変数
-
- 関連項目
-
- 入手方法
-
This document was created by
man2html,
using the manual pages.
Time: 13:25:23 GMT, March 23, 2020