2018年12月18日火曜日

Rasp Pi Zero WH:Alipine Linux インストール

 Raspberry Pi Zero を組み込み用に使おうとうしたときに、問題となるのが電源断時の SD カードの内容の保護。
 
 Qiita で RaspberryPi2 の SD カードを aufs と fsprotect で保護する という記事を見つけたが、クロスビルドの環境構築で挫折 ><。他に何か中と調べたら RaspberryPiで「alpinelinux」 という記事を発見。いろいろと特徴が書かれていたのだが、
 
>よほどのことがないと起動パーティションは壊れない(書き換えようとするプロセスが居ない)
>機器の電源断やCPUの誤動作程度ではほぼほぼ起動パーティションの破壊はおこりません

の二点に惹かれて試してみることに。

↑のサイトの内容だけではうまくいかなかったので Raspberry Pi3 ZERO(W) Alpine Linux(3.8.1)インストール と合わせて何とかうまくいった。

実際に行ったのは、結局、
・こちらのページ(https://alpinelinux.org/downloads/)から Version 3.8.1 の Raspberry Pi->armhf 向けをダウンロードして解凍

・16G の SD カードを Windows マシンで FAT32 でフォーマット。↑で解凍したファイルをまるっとコピー

・手元にあった Raspberry Pi 1 Model B にディスプレイとキーボードをつなぎ↑で作った SD カードを入れて立ち上げ、setup-alpine を実行。eth0 に固定 IP を割り当て。
※Pi Zero ではなく、Pi 1 Model B を使ったのは Pi Zero の HDMI コネクターに合うケーブルが無かったから。

・'lbu ci -d' 実行後に電源断。SD カードを Pi Zero に差し替え。Pi Zero は USB-Ethernet の変換アダプタを使ってネットワークに接続。ssh でログイン(アダプタは LAN-GTJU3 を使った。特にセットアップ無しで動いた)

・ping google.com などでネットワークが外につながることを確認してから、setup-alpine を再実行。apk のレポジトリをアップデート。(setup-apkrepos を実行するだけでいけそう)

・「/etc/modprobe.d/8192cu.conf」を作成してに以下の内容を記述。
># disable power saving
>options 8192cu rtw_power_mgnt=0 rtw_enusbss=1 rtw_ips_mode=1

・rc-update add wpa_supplicant boot を実行

※ 3.8.1 は'apk add linux-firmware-brcm' の実行は不要っぽい?

・'lbu ci -d' 実行後再起動

・再度 setup-alpine を起動して wlan0 を設定。固定 IP を割り当てた。(setup-interfaces でいけそう)

・'lbu ci -d' 実行後 LAN ケーブルを外して再起動

WiFi 経由で固定 IP を使って ssh でログインできることを確認。
(一回は動いたのだが、2回目以降なぜか動かず、格闘中><)



0 件のコメント:

コメントを投稿