Oracle® Solaris 10 から Oracle Solaris 11.2 への移行

印刷ビューの終了

更新: 2014 年 12 月
 
 

スワップデバイスおよびダンプデバイスの構成の変更点

スワップ領域は、Oracle Solaris OS ソフトウェアやアプリケーションソフトウェアが一時的なストレージとして使用できる、ディスクの予約領域です。スワップ領域は、実行されている現在のプロセスを処理するだけの十分な物理メモリーがシステムにない場合に、仮想メモリーストレージ領域として使用されます。Oracle Solaris 10 の UFS ルート環境では、スワップデバイスおよびダンプデバイスに対して 1 つのディスクスライスが提供されます。Oracle Solaris 11 では、2 つの個別のボリュームがスワップデバイスとダンプデバイスとして作成されます。ZFS ルートファイルシステムの場合、スワップ用に予約されるディスク領域は、ZFS ボリュームになります。これらの情報を表示するには、dumpadm コマンドを次のように使用します。

# dumpadm
Dump content: kernel pages
Dump device: /dev/zvol/dsk/rpool/dump (dedicated)
Savecore directory: /var/crash
Savecore enabled: yes
Save compressed: on
# swap -l
swapfile             dev    swaplo   blocks     free
/dev/zvol/dsk/rpool/swap 182,2         8  4061176  4061176

スワップとダンプのボリューム名およびサイズの情報を次のように表示します。

# zfs list -t volume -r rpool
NAME         USED  AVAIL  REFER  MOUNTPOINT
rpool/dump  4.13G  51.6G  4.00G  -
rpool/swap  4.13G  51.6G  4.00G  -

次の例に示すように、スワップ領域のサイズを人間が読むことのできる形式で表示できます。

# swap -sh
total: 1.4G allocated + 227M reserved = 1.6G used, 432G available
# swap -lh
swapfile                   dev    swaplo   blocks     free
/dev/zvol/dsk/rpool/swap 285,2        8K     4.0G     4.0G

    ZFS のスワップボリュームおよびダンプボリュームの管理方法は、UFS のスワップデバイスおよびダンプデバイスの単一スライスの管理方法とは次の点で異なります。

  • ZFS ルート環境では、スワップデバイスおよびダンプデバイスの両方のために単一ボリュームを使用することはできません。

  • ZFS ルート環境では、ファイルをスワップデバイスとして使用することはできません。

  • ダンプデバイスのサイズは、物理メモリーのおよそ 1/2 から 3/4 であることがシステムによって要求されます。ダンプデバイスが小さすぎる場合、次のようなエラーが表示されます。

    # dumpadm -d /dev/zvol/dsk/rpool/dump
    dumpadm: dump device /dev/zvol/dsk/rpool/dump is too small to hold a system dump
    dump size 36255432704 bytes, device size 34359738368 bytes

次の例に示すように、ダンプデバイスのサイズはボリュームの volsize プロパティーを増やすことによって簡単に大きくできますが、そのボリュームの再初期化に時間がかかることがあります。

# zfs get volsize rpool/dump
NAME        PROPERTY  VALUE  SOURCE
rpool/dump  volsize   1.94G  local
# zfs set volsize=3g rpool/dump
# zfs get volsize rpool/dump
NAME        PROPERTY  VALUE  SOURCE
rpool/dump  volsize   3G     local

スワップデバイスが使用中の場合は、スワップボリュームのサイズを変更することは困難です。次のように、2 つ目のスワップボリュームを作成して、スワップデバイスとして追加することを検討してください。

# zfs create -V 3G rpool/swap2
# swap -a /dev/zvol/dsk/rpool/swap2
# swap -l
swapfile             dev    swaplo   blocks     free
/dev/zvol/dsk/rpool/swap 182,2         8  4061176  4061176
/dev/zvol/dsk/rpool/swap2 182,4         8  6291448  6291448

次に、新しいスワップデバイスのエントリを /etc/vfstab ファイルに追加します。例:

/dev/zvol/dsk/rpool/swap2    -        -       swap    -       no      -

スワップ領域とダンプデバイスの構成の詳細は、Oracle Solaris 11.2 でのファイルシステムの管理 のスワップ空間についてを参照してください。