システム構成を変更して新しいソフトウェアパッケージをインストールした後に、スワップ空間を追加しなければならないことがあります。その場合に望ましいのは、mkfile コマンドと swap コマンドを使用して、既存の UFS または NFS ファイルシステムの一部を補助スワップ空間として指定する方法です。次に説明するように、これらのコマンドを使用すると、ディスクをパーティションに分割し直さなくても、スワップ空間を追加できます。
スワップ空間を追加するもう 1 つの方法は、既存のディスクをパーティションに分割し直すか、別のディスクを追加することです。その方法については、第 28 章「ディスクの管理 (概要)」で使用中のシステムに該当する説明を参照してください。
次の手順でスワップファイルを作成します。
mkfile コマンドを使用してスワップファイルを作成する。
swap コマンドを使用してスワップファイルを有効にする。
システムのブート時に自動的に有効になるように、スワップファイルのエントリを /etc/vfstab ファイルに追加する。
mkfile コマンドは、NFS のマウント済みスワップ空間またはローカルスワップ空間に使用できるファイルを作成します。スティッキビットが設定され、ファイルは 0 が埋め込まれます。スワップファイルのサイズは、バイト数 (デフォルト) として指定するか、接尾辞 k、b、m を使用して、それぞれ K バイト数、ブロック数、M バイト数として指定できます。
表 38-3 に、mkfile コマンドのオプションを示します。
表 38-3 mkfile コマンドのオプション
オプション |
説明 |
---|---|
-n |
空のファイルを作成する。サイズは表示されるが、データが書き込まれるまでディスクブロックは割り当てられない。 |
-v |
詳細モード。作成されたファイル名とサイズが表示される。 |
-n オプションは、NFS スワップファイルの作成時のみ使用してください。
スーパーユーザーになります。
root の権限がなくてもスワップファイルを作成できますが、スワップファイルが誤って上書きされないように、root を所有者にしておくとよいでしょう。
# mkfile nnn[k|b|m] filename |
サイズ「nnn」(K バイト数、バイト数、M バイト数) の指定したファイル名のスワップファイルが作成されます。
スワップファイルを有効にします。
# /usr/sbin/swap -a /path/filename |
絶対パス名を使用してスワップファイルを指定しなければなりません。スワップファイルが追加され、ファイルシステムがマウント解除されるか、またはシステムがリブートされるまで使用可能になります。 プロセスまたはプログラムがスワップファイルにスワップしているときは、ファイルシステムのマウントを解除できないことに注意してください。
ファイルの完全パス名を指定し、ファイルシステムのタイプとして swap を指定して、スワップファイルのエントリを /etc/vfstab ファイルに追加します。
/path/filename - - swap - no -
スワップファイルが追加されたことを確認するには、次のように入力します。
/usr/sbin/swap -l |
次の例では、/files/swapfiles という 24M バイトのスワップファイルを作成します。
# mkfile 24m /files/swapfile # swap -a /files/swapfile # vi /etc/vfstab (エントリがスワップファイル用に追加される) /files/swapfile - - swap - no - # swap -l swapfile dev swaplo blocks free /dev/dsk/c0t2d0s1 32,17 8 205624 192704 /files/swapfile - 8 40952 40952 |