Linuxがやたら重いときはスワップ領域が原因かもしれない

デスクトップとしてLinuxマシンを使えるようにしましたが、Chromiumでネットサーフィンしているだけでマウスが動かなくなる事態に見舞われました。

原因は、スワップが無効になっていただけだったのでよかったですが、再設定の方法をメモしておこうと思います。

環境
OS : Arch Linux
CPU : Intel(R) Core(TM)2 Duo CPU E8500 @ 3.16GHz
メモリ : 2G

スワップ領域の確認方法

Swapが設定されているかは、swaponコマンドで確認できます。


% swapon -s 
Filename				Type		Size	Used	Priority
/dev/sda2                              	partition	4194300	236800	-1

“-s”オプションをつけると、今使っているスワップデバイスを一覧表示してくれます。もし、このコマンドの結果が「Filename
」で始まる行のみであれば、スワップ領域が設定されていないことになります。

スワップ領域を設定する

スワップ領域自体はArchLinuxのインストール時に作成済みだったので、今回はスワップ領域を有効にするだけで解決しました。

まず、スワップ領域として使うデバイスを確認します。fdiskコマンドの「-l」オプションで確認できます。


% sudo fdisk -l /dev/sda
Disk /dev/sda: 59.6 GiB, 64023257088 bytes, 125045424 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0009f2cd

Device     Boot   Start       End   Sectors  Size Id Type
/dev/sda1            63    409663    409601  200M 83 Linux
/dev/sda2        409664   8798272   8388609    4G 82 Linux swap / Solaris
/dev/sda3       8798273 125045423 116247151 55.4G 83 Linux

うちのデスクトップは「/dev/sda2」にスワップ領域を作成しています。

スワップ領域を有効にするには、swaponコマンドに使用するスワップ領域を引数として渡して実行します。


% swapon /dev/sda2
% swapon -s # 設定を確認

swapon -sで設定したスワップ領域が表示されれば完了です。しかし、この設定は一時的なものでPCを再起動したら消えてしまいます。

PC起動時にスワップ領域を読み込む

このままでは、PCを再起動したときにスワップ領域が有効にならないので、「/etc/fstab」にスワップ領域を読み込む設定を追記します。「/etc/fstab」はOSの起動時にファイルシステムをマウントするときに使うファイルで、自動でマウントするデバイスなどを記述します。スワップ領域の読み込みもこのタイミングで実行します。

以下の行を/etc/fstabの最後に追記します。行に書き込む内容の意味は、左から順に「デバイス名」「マウントポイント」
「ファイルシステムの種類」「マウントオプション」「dumpコマンドでバックアップするかのフラグ」「fsckでチェックするかのフラグ」です。


/dev/sda2       swap    swap    defaults        0       0 

再起動してみてスワップが有効になっていればOKです。

シェアする

  • このエントリーをはてなブックマークに追加