mokky14's IT diary

IT関係の仕事メモ、勉強会の感想など書いてます。

Solaris10のswapサイズ拡張

Solaris10のswapサイズ拡張に少し手こずったのでメモ残しとく。

Oracleswap空間の追加見てやってみたけど、エラー発生。

bash-3.2# /usr/sbin/mkfile 2g swap1
bash-3.2# ls -l /var/swap1
-rw------T   1 root     root     2147483648  4月  5日  09:19 /var/swap1
bash-3.2# /usr/sbin/swap -a /var/swap1
/var/swap1: このファイルシステムタイプに無効な処理です

最終的にここを参考にしてswap拡張した。
ちなみに環境はVirtualBox上で起動してるSolaris10の環境。

現在のswap状態を確認。

bash-3.2# swap -l
swap ファイル   デバイス  swaplo ブロック 空き容量
/dev/zvol/dsk/rpool/swap 181,1       8 1572856 1572856
bash-3.2# zfs list rpool/swap
NAME         USED  AVAIL  REFER  MOUNTPOINT
rpool/swap   817M  44.5G   491M  -
bash-3.2# zfs get all rpool/swap
NAME        PROPERTY              VALUE                    SOURCE
rpool/swap  type                  volume                   -
rpool/swap  creation              (水)  8月 31  1:36 2011  -
rpool/swap  used                  817M                     -
rpool/swap  available             44.5G                    -
rpool/swap  referenced            491M                     -
rpool/swap  compressratio         1.00x                    -
rpool/swap  reservation           none                     default
rpool/swap  volsize               768M                     local
rpool/swap  volblocksize          4K                       -
rpool/swap  checksum              on                       default
rpool/swap  compression           off                      default
rpool/swap  readonly              off                      default
rpool/swap  shareiscsi            off                      default
rpool/swap  copies                1                        default
rpool/swap  refreservation        817M                     local
rpool/swap  primarycache          metadata                 local
rpool/swap  secondarycache        all                      default
rpool/swap  usedbysnapshots       0                        -
rpool/swap  usedbydataset         491M                     -
rpool/swap  usedbychildren        0                        -
rpool/swap  usedbyrefreservation  325M                     -
rpool/swap  logbias               latency                  default
rpool/swap  sync                  standard                 default
bash-3.2#

現在のswapを一旦無効化。

bash-3.2# swap -d /dev/zvol/dsk/rpool/swap
bash-3.2# swap -l
swap デバイスが構成されていません

swapサイズを拡張。今回は2GBに拡張した。

bash-3.2# zfs set volsize=2G rpool/swap
bash-3.2# zfs get volsize rpool/swap
NAME        PROPERTY  VALUE    SOURCE
rpool/swap  volsize   2G       local
bash-3.2# /sbin/swapadd
/var/swap1: このファイルシステムタイプに無効な処理です

エラー?
と思ったけど、拡張したswapは有効になってた。

bash-3.2# swap -l
swap ファイル   デバイス  swaplo ブロック 空き容量
/dev/zvol/dsk/rpool/swap 181,1       8 4194296 4194296
bash-3.2# zfs list rpool/swap
NAME         USED  AVAIL  REFER  MOUNTPOINT
rpool/swap   817M  44.5G   491M  -

空き容量も変更前の4倍になってる。(変更前は512MB)

bash-3.2# df -k
ファイルシステム      kbytes 使用済み 使用可能 容量      マウント先
rpool/ROOT/s10_8-11  65544192 16567451 46297479    27%    /
/devices                   0       0       0     0%    /devices
ctfs                       0       0       0     0%    /system/contract
proc                       0       0       0     0%    /proc
mnttab                     0       0       0     0%    /etc/mnttab
swap                 2985016     364 2984652     1%    /etc/svc/volatile
objfs                      0       0       0     0%    /system/object
sharefs                    0       0       0     0%    /etc/dfs/sharetab
/usr/lib/libc/libc_hwcap1.so.1
                     62864930 16567451 46297479    27%    /lib/libc.so.1
fd                         0       0       0     0%    /dev/fd
swap                 2984728      76 2984652     1%    /tmp
swap                 2984680      28 2984652     1%    /var/run
rpool/export         65544192      32 46297479     1%    /export
rpool/export/home    65544192  793212 46297479     2%    /export/home
rpool                65544192      42 46297479     1%    /rpool
bash-3.2#

ということで一応成功したっぽい。
この後、Oralce11gのインストール実行してみたけど、swap不足で起動出来なかったOracleインストーラが起動出来たので多分大丈夫。