時には、インストールした後にスワップ領域を増加する必要がでてきます。 例えば、RAMの容量を64 MBから128 MBにアップグレードした場合、スワップ領域は そのままでは128 MBしかありません。メモリ使用の多い操作をしたり、大容量 メモリを要求するアプリケーションを実行したりする時は、スワップ領域を 256 MBまで増加するほうが有利になります。
それには 2つのオプションがあります。スワップパーティションを追加するか、またはスワップファイルを 追加するかです。スワップパーティションの追加が推奨されますが、空き領域がない場合は それは簡単にはできません。
スワップパーティションを追加(/dev/hdb2を、追加したい スワップパーティションと想定)するには、次の方法で実行します。
ハードドライブが使用中であってはいけません(パーティションはマウントされていない 状態で、スワップスペースは無効でなければなりません)。これを達成するのに 最も簡単な方法は、レスキューモードでシステムをブートすることです。レスキューモードでの ブートの仕方は第9章で御覧下さい。ファイルシステムをマウント するように要求された時には、Skipを選択します。
別の方法として、そのドライブが使用中のパーティションを含んでいない場合、 それをアンマウントして、swapoffコマンドを使用して ハードドライブ上の全てのスワップ領域を止めます。
parted又はfdiskを使用して、 スワップ領域を作成します。partedを使用する方が fdiskより簡単ですので、ここでは partedのみ説明します。partedで スワップ領域を作成するには、次のようにします:
シェルプロンプトで rootとして、コマンドparted /dev/hdbをタイプします。ここで /dev/hdbは、空き領域を持つハードドライブの デバイス名です。
(parted)プロンプトで、printと タイプして、現在のパーティションと空き領域のサイズを表示します。 開始と終了の値はメガバイトで表示しています。ハードドライブ上の空き領域を 判定し、新しいスワップパーティションに割り当てる容量を決定します。
(parted)プロンプトで、mkpartfs part-type linux-swap startendを入力 します。ここで、part-typeはプライマリか、拡張か、論理のどれか1つであり、 startとは、パーティションの開始点で、endとは パーティションの終了点を示します。
警告 | |
---|---|
変更はすぐに反映されます。注意して正しく入力して下さい。 |
quitとタイプしてpartedを 終了します。
これでスワップパーティションが出来ました。コマンドmkswapを 使用してスワップパーティションを設定します。rootとして、シェルプロンプトで 次を入力します。
mkswap /dev/hdb2 |
すぐにスワップパーティションを有効にするために、次のコマンドをタイプします。
swapon /dev/hdb2 |
ブート時に有効になるように、以下を含むようにして/etc/fstabを 編集します:
/dev/hdb2 swap swap defaults 0 0 |
次にシステムがブートする時には、新しいスワップパーティションが有効になります。
新しいスワップパーティションを追加して有効にした後は、コマンドcat /proc/swaps又は、freeの出力を表示してそれが 有効になっていることを確認します。
スワップファイルを追加するには次の方法で実行します。
新しいスワップファイルの容量を判定し、その数値に1024を掛けてブロックサイズを 決定します。例えば、64 MBのスワップファイルのブロックサイズは65536となります。
シェルプロンプトで rootとして、countが希望のブロックサイズと 同じになるようにして次のコマンドを入力します。
dd if=/dev/zero of=/swapfile bs=1024 count=65536 |
次のコマンドでスワップファイルを設定します:
mkswap /swapfile |
すぐにスワップファイルを有効にする為に(ブート時に自動的にではない)、次をタイプします。
swapon /swapfile |
ブート時に有効になるように、以下を含むようにして/etc/fstabを 編集します。
/swapfile swap swap defaults 0 0 |
次にシステムがブートする時には、新しいスワップファイルが有効になります。
新しいスワップファイルを追加して、有効にした後は、コマンドcat /proc/swaps又は freeの出力を表示して、それが有効になっていることを確認します。