ラズベリーパイ4をヘッドレスで使いこなす!
※この記事は2020年1月23日に公開した記事を再編集し、2022年3月14日に再度公開しました。
第1回:新しい「ラズベリーパイ4」を使い始める!
第2回:ラズベリーパイ4をセットアップ!
こんにちは、ヨシケンです!
最新でハイパフォーマンスのラズベリーパイ4 Model B(ラズベリーパイ4)を使って、改めてラズベリーパイのセットアップから電子工作の基本までをおさらいしています。
第2回では手軽なNOOBSを使って、画面でのRaspbian OS Busterをインストールしました。今回は、今後よく使っていく画面無し(ヘッドレス)のリモート接続でのセットアップをしてみます。どこでもラズベリーパイが使えるようになりますし、ラズベリーパイの基本コマンドを学ぶことができますよ。
目次
- Raspbian Busterをラズベリーパイ4に直接インストール
- 1.1. Macでの方法:
- 1.2. Windowsでのやり方:
- ラズベリーパイを完全ヘッドレスでおこなう方法
- コマンドツールからのラズベリーパイ環境設定
- まとめ
1. Raspbian Busterをラズベリーパイ4に直接インストール
前回はSDカードにNOOBSを入れ、そこからHDMI経由の画面を見ながら、ラズベリーパイのセットアップをおこないました。このやり方が一番直感的でラズベリーパイをパソコン的に使えるので簡単なのですが、今後ラズベリーパイの小ささを活かして、どこでもプログラミングしたり、動く電子工作などをおこなうときに、リモートで別のパソコンやiPadなどから操作する方法を知っておくと便利です。まったく画面無し(ヘッドレス)でおこなう方法も後ほど記述します。
そのために、Raspbian OSを直接インストールする方法を習得しておきましょう。これには前回使ったSDカードと別のものを用意して、再度OSをインストールしてみます。もしNOOBSでインストールしたものをそのまま使う場合は、[3.コマンドツールからのラズベリーパイ環境設定]に移っても大丈夫ですよ。
それでは前回同様、ラズベリーパイ公式ページのDownloads画面に行きます。そこでNOOBSでなく、右側のRaspbianの方を選びます。
https://www.raspberrypi.org/downloads/
このRaspbianの方は、いわゆるOSのイメージファイルをダウンロードできるようになっています。ここには3つのパッケージがあって、NOOBSでもインストールしたフルOS(以下画面中の左上)、デスクトップ(右上)、そしてデスクトップなどがないLite(左下)が並んでいます。容量は、フルOSで2.5GBほど、Liteだと430MBほどになっています。SDカードも最低限で、画面も全く使わない場合は、Liteを使うと軽量なラズベリーパイをつくることができます。
ここではフルOSのZIPを選んで、パソコンなどにダウンロードします。
その後、Unzipなどで解凍して、イメージファイル(.img)の状態にします。
このイメージファイルをSDカードに焼き付けていきます。パソコンなどにSDカードを差し込みます。ここではNOOBSで使ったのとは別の32GBのマイクロSDを使っています。(以前使ったものをそのまま使用すると、上書かれてしまうので、注意!)
1.1. Macでの方法:
Macを使った場合は、コンソールを開いて、以下の一連のコマンド(水色部分)を使います。
まずdiskutilでSDカードがどこに認識されているかを確認します。ここでは32GBの/dev/disk2という部分がSDカードを認識しているディスクです(黄色部分)。
このdisk2を一度アンマウントしておきます。これをおこなうと画面上からディスクが見えなくなります。
それではddコマンドを使って、SDカードにOSイメージを書き込みます。この時、of=で指定するディスクを間違えないでください。Mac上のディスクを選んでしまうと、すべてが上書かれてしまいます。
フルOSですと、数分くらい時間がかかることもありますが、最後に、黄色で示したtransferredのメッセージが出て、画面にbootディレクトリが表示されれば、書き込みは完了です。
1.2. Windowsでのやり方:
Windowsでは、Win32 Disk Imagerなどの書き込みツールをダウンロードして使います。
こちらのリンクからツールのzipファイルを取得して、解凍し、Windows上でダブルクリックして起動します。
https://sourceforge.net/projects/win32diskimager/
Disk Imagerを立ち上げると以下のような画面が出てきます。Image Fileの部分に、先ほどのイメージファイルを指定します。DeviceにSDカードのディスクを指定して、下の”Write”を押して書き込みます。
これで、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直下に置くことにより、最初から読み込ませることができます。
[wpa_supplicant.confファイルの中のサンプル記述]
ssh と wpa_supplicant.conf を置いたSDカードを、ラズベリーパイに差し込みます。ラズベリーパイにはHDMI画面もキーボードなども接続せずに電源を入れます(ここではMacから給電しているだけです)。
使用するパソコンは、先ほどwpa_supplicant.confに記述したWifi環境と同じネットワークに入っているものとします。
ここでパソコンからコンソールを立ち上げます。コンソール上で、ssh(セキュア接続)を行う為に、ssh pi@(ラズベリーパイの接続名)を打ちます。ラズベリーパイデフォルトのユーザがpiで、接続名は、raspberrypi.local になります。黄色の部分でパスワードを聞かれますので、こちらもデフォルトの raspberry を入力します。
そうすると、HDMIにつなぐ画面など無しで、ラズベリーパイにつなぐことができます。
ラズベリーパイ上でlsなど打つと、Home直下のフォルダを見ることができます。
3. コマンドツールからのラズベリーパイの環境設定
これで、ラズベリーパイにリモートでつなぐ事ことができました。前回NOOBSを使った方も画面からsshを有効にしておくと、同様の方法で画面無しで接続することができます。画面からホスト名やパスワードを変えている場合は、その変更後の情報でログインしてみましょう。
それでは、リモート接続からラズベリーパイのセットアップを続けてやってみましょう。sudo raspi-config と打つと、以前画面で行ったような基本的セットアップをおこなうことができます。
raspi-configを行うと、Software Configuration Toolが立ち上がります。そこには以下のような9つのメニューがあります。
[Software Configuration Toolのメニュー]
- Change User Password(パスワードの変更)
- Network Options(ネットワーク・オプション)
- Boot Options(ブート・オプション)
- Localisation Options(ローカル・オプション)
- Interfacing Options(インターフェース・オプション)
- Overclock(オーバークロックの変更)
- Advanced Options(アドバンス・オプション)
- Update(ソフトウェアのアップデート)
- About raspi-config(コンフィグツールに関して)
ここでは画面で行ったような1、2のパスワードとホストネームの変更をおこなっておきます。
また4. Localisation Optionsを選んで、言語やキーボードの設定もおこないます。
I2. Change Timezoneを選んで、Tokyoの時間を設定しておきます。
また5. Interface Optionsを選んで、カメラなどの設定も行っておきます。
P2のSSH設定は既にEnableになっていると思いますので、P1のカメラを有効化して、カメラを接続した時に使えるようにします。またP5 I2Cという外部デバイスとの接続を有効にしておく事により、それに対応したセンサーなどを認識することができるようになります。
最後に、下の<Finish>に移動して、エンターを押すと、再起動を求められるので、変更すべてを有効化させる為に、リブートします。
ラズベリーパイが再起動したら、再度sshでつなぎます。
今度は、apt updateとupgradeというコマンドを使うことで、最新のラズベリーパイ・ライブラリに更新をおこなっておきます。
最初は少し時間がかかるかもしれませんが、これでインターネットとの接続も確認できますし、ラズベリーパイの中が最新の状態に更新されます。
4. まとめ
今回は、ラズベリーパイにHDMI画面やキーボードをつながずに、SSHリモート接続でインストール、セットアップをおこないました。若干地味ですが、今後ラズベリーパイへのリモート接続やコマンド操作などおこないますので、覚えておいてくださいね。
いよいよ次回はラズベリーパイ4を使った電子工作をおこなっていきます。
お楽しみに!
今回の連載の流れ
第1回:新しい「ラズベリーパイ4」を使い始める!
第2回:ラズベリーパイ4をセットアップ!
第3回:ラズベリーパイ4をヘッドレスで使いこなす!(今回)
第4回:ラズベリーパイ4とGPIOで基本的な電子工作に挑戦!