ラズパイその他工作

Rasberry Pi 4で始める電子工作入門! 第3回: ラズパイ4をヘッドレスで使いこなす!

こんにちは、ヨシケンです!
最新でハイパフォーマンスのRapberry Pi 4 Model B(ラズパイ4)を使って、改めてラズベリーパイのセットアップから電子工作の基本までをおさらいしています。

第2回では手軽なNOOBSを使って、画面でのRaspbian OS Busterをインストールしました。今回は、今後よく使っていく画面無し(ヘッドレス)のリモート接続でのセットアップをしてみます。どこでもラズパイが使えるようになりますし、ラズパイの基本コマンドを学ぶことができますよ。

今回の記事で必要な物一覧

Raspberry Pi 4 Model B
raspberrypi04_1

その他必要な部品などは第1回記事を参照ください。

 

今回の記事の流れ

1.Raspbian Busterをラズパイ4に直接インストール
2.ラズパイを完全ヘッドレスでおこなう方法
3.コマンドツールからのラズパイ環境設定
4.まとめ

1.Raspbian Busterをラズパイ4に直接インストール

前回はSDカードにNOOBSを入れ、そこからHDMI経由の画面を見ながら、ラズパイのセットアップをおこないました。このやり方が一番直感的でラズパイをパソコン的に使えるので簡単なのですが、今後ラズパイの小ささを活かして、どこでもプログラミングしたり、動く電子工作などをおこなうときに、リモートで別のパソコンやiPadなどから操作する方法を知っておくと便利です。まったく画面無し(ヘッドレス)でおこなう方法も後ほど記述します。

そのために、Raspbian OSを直接インストールする方法を習得しておきましょう。これには前回使ったSDカードと別のものを用意して、再度OSをインストールしてみます。もしNOOBSでインストールしたものをそのまま使う場合は、[3.コマンドツールからのラズパイ環境設定]に移っても大丈夫ですよ。

それでは前回同様、ラズパイ公式ページのDownloads画面に行きます。そこでNOOBSでなく、右側のRaspbianの方を選びます。
https://www.raspberrypi.org/downloads/
03-1

このRaspbianの方は、いわゆるOSのイメージファイルをダウンロードできるようになっています。ここには3つのパッケージがあって、NOOBSでもインストールしたフルOS(以下画面中の左上)、デスクトップ(右上)、そしてデスクトップなどがないLite(左下)が並んでいます。容量は、フルOSで2.5GBほど、Liteだと430MBほどになっています。SDカードも最低限で、画面も全く使わない場合は、Liteを使うと軽量なラズパイをつくることができます。
03-2

ここではフルOSのZIPを選んで、パソコンなどにダウンロードします。
その後、Unzipなどで解凍して、イメージファイル(.img)の状態にします。
03-3

このイメージファイルをSDカードに焼き付けていきます。パソコンなどにSDカードを差し込みます。ここではNOOBSで使ったのとは別の32GBのマイクロSDを使っています。(以前使ったものをそのまま使用すると、上書かれてしまうので、注意!)
03-4

Macでの方法:

Macを使った場合は、コンソールを開いて、以下の一連のコマンド(水色部分)を使います。
まずdiskutilでSDカードがどこに認識されているかを確認します。ここでは32GBの/dev/disk2という部分がSDカードを認識しているディスクです(黄色部分)。

03_a

このdisk2を一度アンマウントしておきます。これをおこなうと画面上からディスクが見えなくなります。
03_b

それではddコマンドを使って、SDカードにOSイメージを書き込みます。この時、of=で指定するディスクを間違えないでください。Mac上のディスクを選んでしまうと、すべてが上書かれてしまいます。
03_c

フルOSですと、数分くらい時間がかかることもありますが、最後に、黄色で示したtransferredのメッセージが出て、画面にbootディレクトリが表示されれば、書き込みは完了です。

[bootが見えたらイメージの書き込みが完了]

[bootが見えたらイメージの書き込みが完了]

Windowsでのやり方:

Windowsでは、Win32 Disk Imagerなどの書き込みツールをダウンロードして使います。
こちらのリンクからツールのzipファイルを取得して、解凍し、Windows上でダブルクリックして起動します。
https://sourceforge.net/projects/win32diskimager/
03-6

Disk Imagerを立ち上げると以下のような画面が出てきます。Image Fileの部分に、先ほどのイメージファイルを指定します。DeviceにSDカードのディスクを指定して、下の”Write”を押して書き込みます。
03-7

これで、SDカードにRaspbian OS Busterを直接インストールできたと思います。

2.ラズパイをヘッドレス(画面無し)でセットアップする方法

SDカードにOSが入りましたが、ラズパイのセットアップを始める際、HDMI接続のディスプレイが無くても、完全にヘッドレス(画面無しで)おこなう方法があります。
それにはRaspbianのイメージファイルの書き込みまでをおこなった後、パソコンからSDカードのbootディスク内に移動します。コンソールやエクスプローラーを使って、bootディスク直下に、ssh という名前の拡張子無しのファイルをつくります。中には何の記述も必要ありません。このsshファイルを置いておくと、最初にこのディスクをラズパイで読み込んだ時に、セキュア接続のsshがenable状態になり(OSのデフォルトではsshがdisableになっている)、画面でのセットアップ無しでも、いきなりリモート接続できるようになります。
また無線Wi-Fiも画面を使わずに、wpa_supplicant.conf というファイルをboot直下に置くことにより、最初から読み込ませることができます。

[ssh と wpa_supplicant.conf をboot直下に配置]

[ssh と wpa_supplicant.conf をboot直下に配置]

このwpa_supplicant.confの中には、以下のようなwifi接続の為の情報を書き込んでおく必要があります。ご自分の無線ネットワークの情報を適宜記述して、保存して下さい。

[wpa_supplicant.confファイルの中のサンプル記述]
03_d

ssh と wpa_supplicant.conf を置いたSDカードを、ラズパイに差し込みます。ラズパイにはHDMI画面もキーボードなども接続せずに電源を入れます(ここではMacから給電しているだけです)。
03-9

使用するパソコンは、先ほどwpa_supplicant.confに記述したWifi環境と同じネットワークに入っているものとします。

ここでパソコンからコンソールを立ち上げます。コンソール上で、ssh(セキュア接続)を行う為に、ssh pi@(ラズパイの接続名)を打ちます。ラズパイデフォルトのユーザがpiで、接続名は、raspberrypi.local になります。黄色の部分でパスワードを聞かれますので、こちらもデフォルトの raspberry を入力します。
03_e
そうすると、HDMIにつなぐ画面など無しで、ラズパイにつなぐことができます。
ラズパイ上でlsなど打つと、Home直下のフォルダを見ることができます。

3.コマンドツールからのラズパイの環境設定

これで、ラズパイにリモートでつなぐ事ことができました。前回NOOBSを使った方も画面からsshを有効にしておくと、同様の方法で画面無しで接続することができます。画面からホスト名やパスワードを変えている場合は、その変更後の情報でログインしてみましょう。

それでは、リモート接続からラズパイのセットアップを続けてやってみましょう。sudo raspi-config と打つと、以前画面で行ったような基本的セットアップをおこなうことができます。
03-10

raspi-configを行うと、Software Configuration Toolが立ち上がります。そこには以下のような9つのメニューがあります。
03-11

[Software Configuration Toolのメニュー]
03-14

  1. Change User Password(パスワードの変更)
  2. Network Options(ネットワーク・オプション)
  3. Boot Options(ブート・オプション)
  4. Localisation Options(ローカル・オプション)
  5. Interfacing Options(インターフェース・オプション)
  6. Overclock(オーバークロックの変更)
  7. Advanced Options(アドバンス・オプション)
  8. Update(ソフトウェアのアップデート)
  9. About raspi-config(コンフィグツールに関して)

ここでは画面で行ったような1、2のパスワードとホストネームの変更をおこなっておきます。
03-12

また4. Localisation Optionsを選んで、言語やキーボードの設定もおこないます。
03-13

I2. Change Timezoneを選んで、Tokyoの時間を設定しておきます。
03-14

また5. Interface Optionsを選んで、カメラなどの設定も行っておきます。
03-15

P2のSSH設定は既にEnableになっていると思いますので、P1のカメラを有効化して、カメラを接続した時に使えるようにします。またP5 I2Cという外部デバイスとの接続を有効にしておく事により、それに対応したセンサーなどを認識することができるようになります。
03-19

最後に、下の<Finish>に移動して、エンターを押すと、再起動を求められるので、変更すべてを有効化させる為に、リブートします。
03-17

ラズパイが再起動したら、再度sshでつなぎます。
今度は、apt updateとupgradeというコマンドを使うことで、最新のラズパイ・ライブラリに更新をおこなっておきます。
03-18

最初は少し時間がかかるかもしれませんが、これでインターネットとの接続も確認できますし、ラズパイの中が最新の状態に更新されます。

4.まとめ

今回は、ラズパイにHDMI画面やキーボードをつながずに、SSHリモート接続でインストール、セットアップをおこないました。若干地味ですが、今後ラズパイへのリモート接続やコマンド操作などおこないますので、覚えておいてくださいね。

いよいよ次回はラズパイ4を使った電子工作をおこなっていきます。
お楽しみに!

razero_580-230
ヨシケン(吉田 顕一)

普通の会社に勤めるサラリーマンですが、モノ作りが好きな週末メイカーで、電子書籍MESHBOOKを出したり、ブログを書いたりしています!

http://blog.ktrips.net