質問

2007年04月19日 13時23分
  • SWAP領域の作成について

情シスのオープンナレッジ『Syszo』サービス終了のお知らせ

質問

Oracle 10g の検証用に
Red Hat Enterprise Linux AS 4 をインストールしようと思っております。

Oracle のマニュアルを参照したところ
要件として SWAP領域が 4GB以上必要ということが判りました。
そこで Redhat のインストールガイドを確認すると下記の記載がありました。

使用しているパーティション設定のスキームに 2 GB 以上の swap パーティションが必要な場合、
追加の swap パーティションを作成する必要があります。
例えば、4 GB の swap が必要なら、2 GB の swap パーティションを 2 つ作成しなければなりません。
4 GB の容量の RAM なら、2 GB の swap パーティションを 3 つ作成する必要があります。
Red Hat Enterprise Linux は 32 swap ファイルまで対応しています。

ということは、2 GB 以上の SWAP領域を作成しても、それ以上の容量としては
認識されないということではないかと思います。
インストール時に2 GB のSWAPパーティションを2つ作成する必要があると
考えられますが、実際に構築・運用をされている方は
どのような方法でSWAP領域を作成されてますでしょうか。

例えば、最初に2 GBしかSWAPを切っていない事が判った場合、
後で ddコマンド等で SWAPファイルを作成し、fstabでマウント定義する
方法等もあると思いますが(swapon で有効にすることを前提として)

正直、どの方法がベストなのか判らないので
皆さんのご意見をお聞かせ頂けると助かります。

以上、よろしくお願い申し上げます。

2件の回答があります

回答

以前複数のバージョンのLinuxをインストールしたところ、それぞれに
swapを用意したつもりが、稼動時には両方取り込まれているということが
ありました。
検証用にインストールして直ぐ削除する予定の案件がありますのでついでに
試したところ、以下の結果を得ました。

・メモリ2GBの状態でswap2GBを用意するためインストール時に200MBx10で
swapを準備する。

結果
OSからはまとめて1つとして認識されるらしい。
(topコマンドのヘッダから判断)

ですので足し算で必要な容量を確保できればおそらく問題ないと思います。

さらに気になるのであれば、保存先のドライブを物理的に分割して
RAIDではありませんが、別々のHDDに分けてあげるなどすれば気持ちの
分だけひょっとしたら速くなるかもしれません。


[root@xxxxx root]# fdisk -l

Disk /dev/sda: 160.0 GB, 160000000000 bytes
255 heads, 63 sectors/track, 19452 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス ブート 始点 終点 ブロック ID システム
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 13067 104856255 83 Linux
/dev/sda3 13068 13092 200812+ 82 Linux スワップ
/dev/sda4 13093 19452 51086700 f Win95 拡張領域 (LBA)
/dev/sda5 13093 13118 208813+ 82 Linux スワップ
/dev/sda6 13119 13143 200781 82 Linux スワップ
/dev/sda7 13144 13168 200781 82 Linux スワップ
/dev/sda8 13169 13193 200781 82 Linux スワップ
/dev/sda9 13194 13218 200781 82 Linux スワップ
/dev/sda10 13219 13243 200781 82 Linux スワップ
/dev/sda11 13244 13268 200781 82 Linux スワップ
/dev/sda12 13269 13293 200781 82 Linux スワップ

/dev/sda13 13294 13318 200781 82 Linux スワップ

[root@xxxxx root]# cat /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/sda3 swap swap defaults 0 0
/dev/sda5 swap swap defaults 0 0
/dev/sda6 swap swap defaults 0 0
/dev/sda7 swap swap defaults 0 0
/dev/sda8 swap swap defaults 0 0
/dev/sda9 swap swap defaults 0 0
/dev/sda10 swap swap defaults 0 0
/dev/sda11 swap swap defaults 0 0
/dev/sda12 swap swap defaults 0 0
/dev/sda13 swap swap defaults 0 0

/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0

09:17:35 up 17:53, 1 user, load average: 0.00, 0.00, 0.00
57 processes: 56 sleeping, 1 running, 0 zombie, 0 stopped
CPU states: cpu user nice system irq softirq iowait idle
total 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 100.0%
cpu00 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 100.0%
cpu01 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 100.0%
Mem: 2053508k av, 1729856k used, 323652k free, 0k shrd, 77700k buff
286936k active, 856920k inactive

Swap: 2015784k av, 0k used, 2015784k free 1276292k cached

2007年04月26日 09時30分

回答

ずいぶんと報告が遅くなりましたが、
4GBの単一SWAPを切ったところ、普通に容量通り認識されました。

2GB制限ってないんですかね・・・。
どうもお騒がせ致しました。

2007年07月22日 17時29分

あなたもコメントしましょう!