ラズベリーパイのスワップ(swap)の設定を変更します。
今回の内容はラズベリーパイ5とラズベリーパイゼロ2W(以後ゼロツー)のどちらも変更可能ですが、ゼロツーの方が重要な内容になります。
はじめにスワップについて触れておきます。
スワップは(物理)メモリが足りなくなった時にストレージ(ラズベリーパイであればSDカード)の方で用意する仮想のメモリ空間を指します。
ゼロツーであれば、物理メモリが512MBしかなく、複雑な処理をするには心許ないです。
物理メモリ以上の処理を行う必要が出てきた時はスワップを設定します。
最初に下記コマンドでスワップの設定を確認します。
$ free -m
total used free shared buff/cache available Mem: 416 127 202 0 141 289 Swap: 511 0 511
太字で示した箇所がスワップに割り当てられた容量になります。
ラズベリーパイのスワップは
/etc/dphys-swapfile
のファイルで管理をしています。
スワップの設定を512MBから1024MBに変更してみます。
※変更の前にMicroエディタがインストールされていない場合はターミナル上でコードを書くためのMicroをインストールするを参考にしてMicroエディタをインストールしてください。
ターミナルを起動し、下記のコマンドでスワップの設定画面を開きます。
$ sudo micro /etc/dphys-swapfile
CONF_SWAPSIZE=512
を探し
CONF_SWAPSIZE=1024
に変更をして、編集画面を閉じます。
ターミナルに戻ったら、
$ sudo /etc/init.d/dphys-swapfile restart
でスワップの設定の再読み込みを行います。
$ free -m
でスワップの設定を確認してみます。
total used free shared buff/cache available Mem: 416 130 198 0 142 286 Swap: 1023 0 1023
値が511から1023に変更されていました。