Debianのサーバーを立ち上げましたが,久しぶりにLinuxいじりの気分になって,Manjaro ARMを復活させたりして遊んできました.
その中で気がついたのは,旧来,swap専用パーティションやルートディバイス上のファイルをswapに使ってきましたが,最近のdistroではzramというディバイスをswapに使っていることです.
zramについては,ネットで調べればいろいろ詳しく書いてあると思いますが,主記憶の一部を仮想的なディスクに使うものです.同じく主記憶を使うtmpfsとの違いは,保存するデータを圧縮する点のようです.
もちろん,旧来のディスク(実ディスク)のswapも併用可能ですが,zramにうんと高いプライオリティーが与えられて,実ディスクの方に書き込まれることはほとんどないようです.
この方法,Raspberry Piなどディスクとして書き込みが低速なSDカードを使っている場合特に効果的なのはいうまでもありません.
残念ながらSlackwareARM 15.0ではデフォルトではzramが使われませんが,ネットの情報を参考にして設定したら,うまく動くようになりました.
$ swapon
NAME TYPE SIZE USED PRIO
/dev/sda2 partition 4G 0B -2
/dev/zram0 partition 4G 0B 100
こんな感じです.
下記のページを参考にしました.元記事ではzram0〜3までの4つ,それぞれのサイズを512MBにしていますが,筆者の場合は,zram0ひとつだけ作って,その代わりサイズを4GBにしました(RAM 8GBのマシンです).
100など.