9.4. スワップ領域の操作 【mkswap、swapon、swapoff】

スワップ領域を追加するには、スワップ用のパーティションを用意するか、スワップファイルを作成する方法があります。

スワップパーティションを追加するには、事前に、スワップパーティションとして追加するためのハードディスク領域を fdisk コマンドを使用して確保します。

次に、確保したスワップ用パーティションにスワップ領域を作成します。そのためには mkswap コマンドを実行します。ここでは、/dev/hda4 にスワップパーティションを作成するものとします。

# mkswap -c /dev/hda4

-c オプションは、ディスクの不良ブロックを検査するためのオプションです。

次に、swapon コマンドを実行して、作成したスワップ領域を有効にします。

# swapon /dev/hda4

有効後、free コマンドなどでスワップ領域が増加したことを確認します。

逆に、無効にするには swapoff コマンドを使用します。

# swapoff /dev/hda4

このままでは、コンピュータを再起動すると有効にしたスワップパーティションは無効になってしまいます。再起動後も有効にするには、/etc/fstab に次の行を追記します。

/dev/hda4          swap          swap    default     0 0

また、スワップ領域を追加するためにパーティションを用意できない場合には、スワップファイルを作成してスワップ領域を増やすことも可能です。

スワップファイルを作成するには dd コマンドを利用します。

# dd if=コピー元 of=コピー先 bs=ブロックサイズ count=ブロック数

例えば、次のように実行します。

# dd if=/dev/zero of=/swapfile bs=1024 count=65536

スワップファイルを作成する場合、コピー元 には /dev/zero を指定します。コピー先 には、スワップファイル名を指定します。ここでは、/swapfile と指定しています。ブロックサイズ1024 を指定します。ブロック数 には、スワップファイルのサイズをブロック数で指定します。例えば、約64MB のスワップファイルを作成する場合には 65536 と指定することになります。

スワップファイルを作成したら、スワップ領域を作成するために mkswap コマンドを実行します。

# mkswap /swapfile

スワップ領域を作成したら swapon コマンドを実行してスワップ領域を有効にします。

# swapon /swapfile

無効にするには swapoff コマンドを実行します。

# swapon /swapfile

コンピュータの再起動後にもスワップパーティションを有効にするには、/etc/fstab に次の記述を追加します。

/swapfile          swap          swap    default     0 0