Raspberry Pi Zero WHのセットアップ(USBキーボード、マウスなし)
AlexaからRM mini 3を操作するのに必要だったため、Raspberry Pi を初めて使った。本記事はその時の自分用メモです。ググれば先人たちのリファレンスが大量に出てくるので、内容は、キーワードと手順の概要、参考にしたリンクをまとめるにとどめます。
- 前提
- Raspberry Pi Zero WHについて
- セットアップ手順
- 手順1 NOOBSでRaspbianのインストールをする(あきらめた)
- 手順2 Raspbian のOSイメージをSDカードに直接書き込む
- 手順3 ラズパイをノートPCにUSB接続し、CUI(Terminal)操作できるようにする
- 手順4 ラズパイをWifiに接続する
- 手順5 ラズパイをVNC接続して、ノートPCからGUI(画面)操作できるようにする
- 手順6 ラズパイがインターネットにつながるようにする
- 手順7 ルーターの設定を変更し、ラズパイに固定IPを割り振る
- その他 ユーザーのパスワード変更
- その他 メモリーチューニング
- その他 ブラウザのインストール
- その他 SDカードのイメージをバックアップ
前提
機器
- Raspberry Pi Zero WH
- ノートPC(Windows10、SDカード読み込み可能 )
- Wifiルーター
- microUSBケーブル(タブレットとか充電するやつ)
- 有線USBのキーボード、マウスが無い
- HDMI接続可能なモニタはある
スキル
Raspberry Pi Zero WHについて
買ったやつ
大した下調べをせずに「ラズパイ買お!」と思って以下の商品を買った。
これはまさに「ラズパイ買お!」と突然思った人向けの内容になっていて、「Pi Zero WH本体、公式ケース、USB電源アダプター、OS書込済み8GB microSD、mini HDMI変換アダプター、micro USB変換ケーブル」が約5000円でセットになっている。
今回の結論から言うと、「mini HDMI変換アダプター、micro USB変換ケーブル」は要らなかった。USBキーボードおよびマウスをつないだり、モニタに繋ぐために使うのだが「ノートPCからリモートでつなぐからいいわい」という理由で最終的には使わなかった。後述するが、「OS書込済み8GB microSD」も、初回のインストール時にUSBキーボードやマウスで操作する必要があったため、結局フォーマットしてOSを入れなおした。というわけで、Zero WH本体は頑張れば1000円くらいなので、実際には個別に集めたほうが安いと思う。
ラズパイの種類について
今回使ったのはRaspberry Pi Zero WHだが、買ってから「末尾のZero WHってなんじゃい」と気づいたので、調べた。詳しくは次の記事に詳しいので、ここではざっくりの理解を書く。
購入可能なラズパイ比較(2017年6月)Pi 3 Model B/Pi Zero/Pi Zero W/Pi2 Model B/Pi Model B+ - littlewing
- Raspberry Piは現在「1,2,3,Zero」のverがある。「Zero」は廉価版で、本体サイズが小さく、有線LANがなく、USBポートが少なかったりする
- 「Zero」「Zero W」「Zero WH」があり、WはWifi無線LANに対応、HはGPIO用のピンヘッダがつく
セットアップ手順
以下、セットアップ時に試した手順を書く。今回はラズパイをGUIとTerminalで操作できるようにする。GUI無しなら手順4とかはいらないかも。前提に書いた状況のために、一部断念して別の方法をとっているが、その点も記述する。
手順1 NOOBSでRaspbianのインストールをする(あきらめた)
ラズパイのソフトウェアは基本OSSで提供されている。RaspbianというOSが一般的で、NOOBSはそれをインストールするためのものである。
買った状態で、SDカードにNOOBSがインストール済みだったが、電源を入れても自動インストールはしない。そのためモニタとマウスを繋ぎ、画面操作が必要である。でもマウスはないので無理。
NOOBSには電源を入れると自動でインストールするsilentinstallオプションというものがあった(https://qiita.com/horidaisuke/items/f3a6955c2015fab76f2c)が、これには有線LANが必要で、Raspberry Pi Zeroの場合有線LANは接続できないので無理。
NOOBSのバージョンが1.5.0以前であれば有線LANのないRaspberry Pi Zeroでも自動インストールできるとのことだったが(https://thinkit.co.jp/article/9339)、貧弱回線過ぎてNOOBSのDLに半日かかるので断念。
手順2 Raspbian のOSイメージをSDカードに直接書き込む
NOOBSを入れられなかったので、SDカードをノートPCに差し込み、直接Raspbian OSイメージを書き込むことにした。
Raspbian OSイメージはRaspberryPiの公式HPからDLする。
SDカードへのOSイメージの書き込みはEtcherなどのソフトで行う。windowsならWin32DiskImagerでもいいみたい。 EtcherはインストーラーのDLにめちゃ時間がかかったので、Win32DiskImagerを使った。
手順3 ラズパイをノートPCにUSB接続し、CUI(Terminal)操作できるようにする
この時点でラズパイをモニタに繋ぐと、Raspbianの画面が表示できる。でもUSBマウスがないので操作できなず切ないことになり、ノートPCからラズパイを操作したいよ。。という気持ちになった。
そのために、ノートPCにラズパイをUSBで有線接続し、SSHでアクセスできるようにする。全体的な手順は以下を参照した。
USB接続するとデバイスとして読み込んでしまうので、Windows側の設定を変更してネットワークアダプタとして読み込む必要がある。以下を参照した。
ノートPCからUSB有線接続でSSHアクセスできるようになり、TeratermでラズパイのCUI(Terminal)を操作できるようになった。
手順4 ラズパイをWifiに接続する
USB接続だといちいちPCにつなげる必要があり色々だるいので、ラズパイをwifiに繋ぐ。手順3と同様に以下を参照した。
手順5 ラズパイをVNC接続して、ノートPCからGUI(画面)操作できるようにする
ラズパイをノートPCからTerminal操作できるようになったが、画面操作が必要な場面がある。VNC接続してノートPCからリモート操作できるようにした。以下を参照。
手順6 ラズパイがインターネットにつながるようにする
イーサネットには繋がるのに、インターネットにつながらず、ライブラリ等をダウンロードできず困った。調べると、countryの設定を行ってから、IPを振りなおす必要があるとのこと。前提として、手順5で画面操作をできるようにする必要がある。下記を参照した。
手順7 ルーターの設定を変更し、ラズパイに固定IPを割り振る
ラズパイをノートPCから操作できるようになった。しかし、ルーターのDHCPにより動的にラズパイのIPが割り振られるので、再起動のたびに変わってしまい困る。
ルーターの設定を変えて、ラズパイのmacアドレスから固定IPを割り当てる。
- Terminalを開き、ifconfigコマンドでラズパイのmacアドレスを調べる。
- ルーターの設定を開き、macアドレスに対し固定のIPを設定する。ルーターのメーカーによって設定画面が違うと思う。やり方はググれば出てくる。
以下、必要に応じて行ったほうがよいと思われる。
その他 ユーザーのパスワード変更
linuxコマンドで行う。
sudo passwd ユーザー名
その他 メモリーチューニング
Rasberry Pi ZeroはCPUやメモリがしょぼいので、挙動が重く困った。以下を簡単に試したが、改善したかは微妙。
- GPUのメモリ default 64MB→200MB
- 不要なサービスをオフ
以下を参考
その他 ブラウザのインストール
プリインストールされているブラウザはChrominium(中身はChromeと同じ)がある。しかしNode-RedなどブラウザでGUI操作したりすると重すぎて落ちるので、ラズパイ用のFirefoxをインストールした。まだまだ挙動は重いが少しはましになった。ラズパイ用のブラウザは色々あるので、ほかのも試すといい気がする。
その他 SDカードのイメージをバックアップ
microSDは割と壊れるので、OSイメージのバックアップをした。以下を参考。
Model BのSDカードをバックアップしてModel B+のマイクロSDカードにリストアして調整する | ものづくりエクスペリメント
SDカードの書き込みに使ったWin32DiskManagerを使う
- 出力先のディレクトリ入力
- DeviceでSDカードのドライブ選択
- Readでイメージ作成
以上