ラズパイ:シャットダウンフリー 準備

電源ブチ切りしてもファイルシステムが壊れない、シャットダウンフリーなラズパイを構築する。tmpfs,overlayの実体はSDRAMなので、その領域で更新したファイルは電源断で消えることに留意。保存したいデータがあるケースでは、MicroSDの別パーティションUSBメモリをrwマウントして運用する。ここでは下準備まで。

シャットダウンフリー実装 準備
ラズパイ:シャットダウンフリー fuse+overlay編 ①〜⑤
ラズパイ:シャットダウンフリー overlay編(fuse無し) ①〜③、⑤
ラズパイ:シャットダウンフリー tmpfs-chroot編 (未完成) ①〜③
ラズパイ:シャットダウンフリー tmpfs-bind編 ①〜③
前提:
  • Raspbian のバージョンは stretch (debian9.x)
  • root権限でオペレーション:「sudo su -」 または 「su -」でrootになる。
  • /dev/mmcblk0p2にユーザランド(rootfs)構成物がほぼ全てあるものとする。
① ベースのアップデート
apt update
apt upgrade
rpi-update  # FWアップデートは推奨されてはいないが私はやる主義。
② FAT領域をチェック/リペア

デフォルトでは、軟弱なFAT領域がrwでマウントされている。既に電源ブチ切りで壊れかけていることも多い。

dosfsck -w -r -l -a -v -t /dev/mmcblk0p1

参考:
https://askubuntu.com/questions/147228/how-to-repair-a-corrupted-fat32-file-system
https://explainshell.com/

スワップの無効化
systemctl stop dphys-swapfile.service
systemctl disable dphys-swapfile.service
rm /var/swap  ## ←swapファイルの実体。
④ パッケージ追加 fuse
 apt install fuse
⑤ /etc/modulesに"overlay"を追記

↓ 単に末尾にoverlayを追記しているだけなので、エディタ開けるなら手編集でどうぞ。

grep overlay /etc/modules > /dev/null; [ $? == 0 ]  || echo overlay >> /etc/modules


本件とは無関係だが、/etc/sysctl.confに下記を追記し、IPv6を無効化する。ただし、副作用にご注意。

/etc/sysctl.conf:

・・・
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1