新型コロナウイルスにかかる緊急事態宣言で外出を自粛していた頃、唐突にRaspberry Piで何かを作ってみたくなりまして。思い付きでドライブレコーダーを自作してみました。
そのRaspberry Pi Zero WHに実装したコマンドやら実際に作った物を記事にまとめようかと思ったのですが、1から全部書いていくと膨大な文字数になりそうなので、とりあえずこのページではRaspberry Piを動かすために最低限必要な初期設定についてだけまとめておきます。
Raspberry Piの初期設定について解説している記事は検索するとたくさんヒットしますが、古い情報や誤った情報が紹介されているものも多いようなので注意が必要です。
とりあえずRaspberry Piを買ったは良いものの何から手を付けたら良いのか分からないという方は、この記事を参考にしていただければと思います。
Raspberry Piの初期設定に必要な物
まず初めにRaspberry Piを使い始めるために必要な物についてまとめておきます。
Raspberry Pi OS(旧Raspbian)
Raspberry Piを動かすためにはOSが必要です。インストール可能なOS、ディストリビューションはいろいろありますが、ここではもっともスタンダードであろうRaspberry Pi OS(旧Raspbian)を使用します。OSのイメージファイルは下記のページからダウンロード可能です。
Raspberry Piは数百円で購入可能なRaspberry Pi Zeroから約1万円のRaspberry Pi 4Bまで様々なモデルが存在しますが、どのモデルでもRaspberry Pi OSは使用可能です。
ただしRaspberry Pi OSの中でもいくつかの種類が存在して、現状64bit版はRaspberry Pi 3/4系統しかサポートされていません。
また32bit版でもwith desktop and recommended software、with desktop、Liteの3種類が提供されています。
Raspberry Pi OSはGUI版とCUI版がある
with desktop and recommended softwareはWindowsやMacのようにGUIで操作することが可能で、推奨ソフトウェアも全部入りのバージョンです。
with desktopもGUIに対応していますが、必要なソフトウェアはその都度入れる必要があります。
LiteはGUIに対応しておらずCUI、コンソール画面でのみ操作することが可能です。
CUIが苦手な方はGUIに対応しているバージョンを入れておくのが無難ですが、ドライブレコーダーを自作するにあたっては何でも構いません。強いて言えば、無駄に容量を食わないためにLiteを入れるのがベストでしょう。
microSDカード
Raspberry PiはOSをインストールするストレージとしてmicroSDカードを使用します。USBメモリや外付けHDDなどには入れらません。
また対応フォーマットの関係でmicroSDXC規格のものは使えないため、基本的に最大32GBのmicroSDHC規格のものを使うことになります。
ただしmicroSDXCであっても、Disk Formatterなどのソフトウェアを使用してFAT32でフォーマットすればRaspberry Piで使用することが可能です。64GB以上のmicroSDXCを使いたい場合は、FAT32にフォーマットして使いましょう。
microSDカードを読み書きできるPCが必要
Raspberry Pi OSのイメージファイルをmicroSDカードに書き込み作業はPCで行います。
PCにSDカードスロットが搭載されていなければUSB接続のSDカードリーダーやハブ、ドックなどが必要です。
balenaEtcher
balenaEtcherはOSのイメージファイルを書き込むためのソフトウェアです。
特に問題がないので私はずっとbalenaEtcherを使い続けています。
ただし現在はRaspberry Pi財団よりRaspberry Pi Imagerが提供されていて、こちらのインストールソフトが推奨されています。
どちらも使い方は非常に簡単なので、気に入ったほうを使えば良いでしょう。
Tera Tarm
Tera TarmはWindows用のSSHクライアントです。
ぶっちゃけ現在はPowerShellなど標準で搭載されている機能でSSH接続が可能なので、わざわざクライアントソフトを入れる必要はなかったりするのですが、私はそんなことを知らずにTera Tarmを使い始めて今も使用中です。
ちなみにMacも標準でSSHクライアントが入っているので別途入れる必要はありません。
これも自分が使いやすいと感じるものを使うのが1番良いかと。
microSDカードにOSのイメージファイルや必要な設定ファイルを書き込む
必要な物が揃ったら、まずはmicroSDカードにOSのイメージファイルや必要な設定ファイルを書き込んでいきます。
なお新品のmicroSDカードを使用するなら下準備は不要ですが、既に使用中でデータが保存されているならバックアップを取っておきましょう。OSをインストールするとデータは消えてしまいます。
また64GB以上のmicroSDXCを使いたいなら事前にFAT32にフォーマットしておきましょう。
microSDカードにRaspberry Pi OSのイメージファイルを書き込む
microSDカードの用意ができたら、Raspberry Pi OSのイメージファイルをbalenaEtcherで書き込みます。
balenaEtcherの使い方は簡単で、ソフトを起動したら書き込みたいイメージファイルとmicroSDカードを選択してFlashするだけです。
OSのインストール作業はたったこれだけですが、microSDカードをRaspberry Piに入れ替える前にWi-FiとSSHの設定を済ませておきましょう。
microSDカードにWi-FiとSSHの設定ファイルを書き込む
Wi-Fi機能を搭載しているRaspberry Piなら、あらかじめWi-Fiの設定ファイルを書き込んでおくと初回起動時から自動的にWi-Fiに繋がって便利です。
また一緒にSSHの設定もしておけば、Raspberry Piを直接操作することなく、遠隔で操作したり開発作業を行うことも可能になります。特にLiteを入れるなら必ずこの作業も済ませておきましょう。
いずれもテキストエディタを使用してファイルを作成し、microSDカードのボリューム直下に保存します。
Wi-Fiの設定ファイルの記述方法
メモ帳などのテキストエディタでwpa_supplicant.confを作成して、下記のようにWi-Fiの接続情報を記述します。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=JP network={ ssid="gadgetlive" #SSID psk="password" #パスワード key_mgmt=WPA-PSK #暗号化方式 }
これでRaspbeyy Piが起動する際、自動的に該当するWi-Fiに接続してくれます。
もし複数のSSIDを登録したいなら、priorityで優先順位を付けておくと良いです。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=JP network={ ssid="main-gadgetlive" psk="main-password" key_mgmt=WPA-PSK priority=2 #優先度が高いWi-Fiは数字を大きくする } network={ ssid="sub-gadgetlive" psk="sub-password" key_mgmt=WPA-PSK priority=1 #優先度が低いWi-Fiは数字を小さくする }
これでpriorityの値が大きいWi-Fiを優先的に接続するようになります。
SSHの設定ファイルの記述方法
次にSSHの設定ファイルについてですが、こちらは名前がsshのファイルを用意するだけでOKです。つまりテキストエディタで中身が空っぽのファイルを作成してそのまま保存します。
以上の2つのファイルを作成してボリューム直下にコピーしておけば、初回起動時からすぐにSSHによる遠隔操作が可能です。
Raspberry PiにmicroSDカードを入れて設定する
準備が整ったらRaspberry Piを電源に繋ぎましょう。Raspberry Piは本体に電源をON/OFFするスイッチが搭載されておらず、通電と同時に起動します。
操作を受け付けるようになるまで1分ほどかかるので、その時間でルーターの管理画面にアクセスしてRaspberry Piの接続を待ち、IPアドレスを調べておきましょう。Raspberry PiからHDMIで映像を出力してるならデスクトップ画面でも確認可能です。
IPアドレスを確認したら、Tera TermなどでそのIPアドレスにSSH接続、ログインします。
デフォルトのユーザー名はpi、パスワードはraspberryです。初期値のままだとセキュリティ的によろしくないので、これらは後ほど任意の文字列に変更します。
無事ログインできたら、コマンドラインからパッケージの更新や各種設定の変更を行いましょう。
apt-get updateでパッケージ一覧を更新する
sudo apt-get update
まずはこのコマンドを実行して、インストール可能なパッケージの一覧を更新します。
apt-get upgradeでパッケージを更新する
sudo apt-get upgrade
次にこのコマンドで、先ほど更新した一覧に基づいてパッケージの更新を行います。
途中で更新して良いか確認が行われるので、問題がなければyを入力してEnterを押しましょう。
rpi-updateは行うべきではない
初期設定の解説でよく紹介されているrpi-updateについては行わなくて良いです。むしろ行うべきではありません。
ファームウェアを更新するためのコマンドとしてよく紹介されていますが、rpi-updateによって配信されるファームウェアは十分なテストが行われていないベータ版です。
Raspberry Pi OS以外のディストリビューションで使用することは想定されていないばかりか、Raspberry Pi OSにおいても不具合を引き起こす恐れがあるため、特別な理由がない限り実行すべきではないとされています。
apt-get updateやapt-get upgradeと一緒に紹介されることが多いですが、これらとはまったく性質が異なるコマンドなので注意してください。
raspi-configで各種設定を変更する
sudo raspi-config
パッケージの更新が済んだたらraspi-configで各種設定を変更します。
raspi-configの更新
raspi-configを開くと8番目の項目にUpdateがあります。
まずはこれを選択してraspi-configの更新を行いましょう。
パスワードの変更
次に1番上のChange User PasswordでEnterを叩き、次の確認画面でもう1度Enterを叩きましょう。
2回Enterを叩くと一旦コマンドラインに戻って新しいパスワードを入力するように促されるので、任意の文字列を設定してください。
ちなみに文字を入力しても画面には表示されません。故障やバグではないので安心してください。また確認のために2回入力する必要があります。
無事パスワードが更新されたら、次回からSSH接続する際にはraspberryではなく新しく設定したパスワードを入力しましょう。
ロケールの変更
次にraspi-configの4番目の項目、Location Optionsを設定していきます。
Location OptionsのChange Localeを選択するとしばらくコマンドラインが表示された後、ロケールの一覧が表示されます。
カーソルキーでja_JP.UTF-8 UTF-8まで移動した後、Spaceを押すと*が表示されるのでこの状態でEnterを押してください。
タイムゾーンの変更
次はLocation OptionsのChange Time Zoneです。
タイムゾーンは日本国内で使用するならAsia、Tokyoで良いでしょう。
Wi-Fiの地域設定の変更
Location Optionsの1番下の項目、Change WLAN CountryでWi-Fiの地域設定をJP Japanに変更します。
カメラモジュールの有効化
デフォルトの設定だとカメラモジュールの使用が許可されていませんので、カメラを使いたい場合はraspi-configの設定を変更する必要があります。
最初のメニューの5番目の項目、Interfacing Optionsを開くと1番上にカメラの項目があるのでこれを有効化しましょう。
ちなみにSSH接続でGUI操作をしたいなら、同じくInterfacing OptionsにあるVNCを有効化してください。これでVNCクライアントを使用して接続、操作することが可能になります。
以上で最低限の初期設定はOKです。
最低限知っておきたいRaspberry Piの基本コマンド
最後にRaspberry Piを使用する上で最低限知っておきたいコマンドを2つだけ紹介しておきます。
Raspberry Piを再起動するコマンド
sudo reboot
このコマンドでRaspberry Piを再起動することが可能です。
パッケージを更新したりraspi-configでシステム設定を変更した後、あるいは不具合が発生した場合などは再起動してみましょう。
Raspberry Piをシャットダウンするコマンド
sudo shutdown -h now
Raspberry Piの電源を切る場合、いきなりUSBケーブルを引っこ抜いてはいけません。最悪システムを破損したり、故障する原因となります。安全に電源を切るためには、シャットダウンが完了してからUSBケーブルを外しましょう。
一般的なLinuxとは異なりsudo shutdownだけでもシャットダウンは行われますが、実行されるまでに1分ほど時間がかかります。しかしオプションとして-h nowを記述しておけば即時にシャットダウンが行われます。即時に電源を切りたい場合がほとんどでしょうから、-h nowまでまとめて覚えておくと良いでしょう。
なおオプションを利用して指定した時間にシャットダウンすることも可能です。
sudo shutdown 10 #10秒後にシャットダウン
sudo shutdown 22:40 #午後10時40分にシャットダウン
シャットダウン完了後、再度起動させたい場合はUSBケーブルを抜き差しすればOKです。
まとめ
以上、Raspberry PiにRaspberry Pi OSをインストールする方法と初期設定についてまとめておきました。
ここまでの作業が済めばもう後は自由です。ドライブレコーダーを作るのもよし、スマートスピーカーを作るのもよし。Raspberry Pi OS以外のディストリビューションもたくさん配布されているので、OSもいろいろ試してみると良いでしょう。
自作ドライブレコーダーに実装したコマンド等々についてこちらの記事をお読みください。
コメント