MacだけでRaspberry Pi 4(ラズパイ4)をゼロから動かす方法


概要

ラズパイを動かすのに、モニター・キーボード・マウスと色々必要という噂…。
でも、Macだけでも繋げられれば動くんじゃないの?→動いた!
その方法を、初心者向け(私レベル=Mac使ってて、ターミナルくらいは知ってる…くらいの方々向け)に噛み砕いて書いた記事です。

使ったもの

ハード・環境

  • MacBook (Retina, 12-inch, Early 2015) (macOS Mojave v10.14)
  • Raspberry Pi 4 ModelB 4GB (RS・OKdo版)
  • 16GB Micro SDカード(HI DISC社製SD HCカード)
  • Micro SDカードリーダー
  • Macbook付属のUSB type-Cケーブル・電源アダプタ(ラズパイの電源用)
  • Wi-Fi環境(契約していたポケットWi-Fi。接続台数が見られるものだと便利)

※ラズパイ、Micro SDカードリーダーはAmazonで買いました。
ラズパイ
Micro SDカードリーダー
※Micro SDカードは、最小で3.8GBないとRaspberry Pi OSが入らないようです。

アプリ・ソフト

  • Raspberry Pi Imager v1.4(OS導入用)
  • Visual Studio Code v1.49.0(テキストエディタとして)

1. Raspberry Pi OSの導入

まずは、このサイトからMacに、Raspberry Pi Imagerというアプリを入れます。「Raspberry Pi Imager for macOS」を選択してください。
これは、画面に従って操作を進めると、Micro SDカードにRaspberry Pi OSを入れてくれる便利アプリです。
Raspberry Pi Imagerを導入したら、MacにMicro SDカードを挿しましょう。
Raspberry Pi Imagerを起動します。
画面の左から順に、
CHOOSE OSでは「Raspberry Pi OS (32-bit)」
CHOOSE SD CARDでは、さっき挿したSDカード
を選択します。
最後にWRITEを選択すると、「SDカード内のデータ全部消えるけどいい?」表示が出てくるので「YES」で先に進みます。
書き込みが終わるまでしばらく待ちます(私の場合は10分程度でした)。
終わったら「もうSDカード取っていいよ」表示が出ますが、まだ挿しておいてください。
Raspberry Pi Imagerは、この時点で終了して大丈夫です。

2. SSH接続・Wi-Fiの設定

SSH接続とWi-Fi利用のための設定をしていきます。
それぞれ、Macとラズパイを繋ぐこと、ラズパイ自体がWi-Fiに繋がることに必要な設定です。
(SSH接続とは、同じローカルネットワーク内のコンピューターを遠隔操作するための技術です。)
Macでターミナルを開いて、以下の順にコマンドを打ち込み、先ほどbootという名前のついたSDカード内に
「sshファイル」
「wpa_supplicant.confファイル」
を作ります。
(cdで上に上がっているのは、Macのフォルダ構成の最上層に行くためです。そこにVolumes/bootが存在するので。)

macOS
$ cd ..
$ cd ..
$ cd Volumes/boot
$ touch ssh
$ touch wpa_supplicant.conf

sshファイルは空のままで大丈夫です。このファイルの存在自体が、ラズパイに「SSH接続を有効にする」という命令になるようです。
続いて、テキストエディタで、SDカード内のwpa_supplicant.confの内容を次のように書きます。

wpa_supplicant.conf
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
    ssid="自分のWi-FiのSSID"
    psk="自分のWi-Fiのパスワード"
}

「wpa_supplicant.conf」は、電源を入れたラズパイが、自動的に接続するWi-FiのSSID・パスワードその他を設定しているファイルです。

これらが完了したら、Micro SDカードをMacから外して、ラズパイの後ろに挿しましょう。

3. ラズパイの起動とWi-Fi接続確認

ここでは、ラズパイの起動が上手くいっているか、Wi-Fiに繋がっているかを確認します。
まず、ラズパイのUSB type-Cの穴に、電源を繋いだUSB type-Cケーブルを挿します。
赤は給電中は常に光るランプ、常時点灯です。
緑はSDカード読み込みの際に色々点滅し、読み込みが終わると消えます。
緑が消えた時点で、上手くいっていればWi-Fiに接続しています。
ポケットWi-Fiなどで接続台数の確認が可能なら、確認してみましょう。
1台増えていたらWi-Fi接続成功です!
※Wi-Fi機器のプライバシーセパレーター機能(機器同士の接続を遮断する機能)をオフにしておきましょう。でないと、ラズパイがWi-Fiに繋がってるのにMacと繋げないという自体が発生します。

4. ラズパイのIPアドレスを調べる

Macのターミナルで、次のコマンドを実行します。

macOS
$ arp -a

すると、同じネットワーク内のIPアドレスやMACアドレスが次のように表示されます。

macOS
? (IPアドレス) at MACアドレス on ~~~~~ [ethernet]

この中から、ラズパイのIPアドレスを探し、メモしておきます。
どのIPアドレスか分からない時は、一回ラズパイの電源を切ります(電源コードを抜きます、本当はあまり良くないようですが…)。
上記コマンドを再度実行し、消えてるやつがいたらそれがラズパイです。
(参考サイトでは、ラズパイのMACアドレスはb8:27:ebから始まると書いてありましたが、私のラズパイの場合はdc:a6:32から始まりました。ラズパイ4だから変わったのでしょうか?)
追記:b8:27:ebはラズパイ3のMACアドレスのようです。手に入れたラズパイ3で同様のことをして判明しました。

5. Macとラズパイの接続

いよいよMacとラズパイをSSH接続していきます。
緑ランプ消灯後、Macのターミナルで以下のコマンドを実行します。

macOS

パスワードを聞かれるので、「raspberry」(初期パスワード)と入力してreturnキーを押します。
上手くいくと、次のように表示され、接続成功していると分かります!

RaspberryPiOS
pi@raspberrypi:~ $

(上手くいかないと、ずっとターミナルの反応がありません。原因を探しましょう。)

SSH接続したまま、以下のコマンドでVNCサーバーをインストールします。

RaspberryPiOS
pi@raspberrypi:~ $ sudo apt-get install tightvncserver

続いて、以下のコマンドでサーバーを立ち上げます。

RaspberryPiOS
pi@raspberrypi:~ $ sudo tightvncserver

初めての立ち上げの場合は、接続に必要なパスワードを設定します。その後、
New 'X' desktop is raspberrypi:1
のように表示されたことを確認します。
この末尾プラス5900、すなわち5901がポート番号で、この後使います。

続いて、Finderの、移動→サーバへ接続

アドレスの欄に、
vnc://先ほどのIPアドレス:ポート番号
と入力して接続。
vnc://xxx.xxx.xx.x:5901
となると思います(xは数字)。

先ほど設定したパスワードを入力します。

すると、接続完了し、Raspberry Pi OSの画面が表示されます!!!

ラズパイでの作業が終わったら、ラズパイ画面上の左上のマークからシャットダウンするか、次のコマンドをSSH接続したMacのターミナルで打ち込んでシャットダウンしましょう。
(電源コードを引き抜くのは良くないみたいです。)

RaspberryPiOS
pi@raspberrypi:~ $ sudo shutdown -h now

まとめ

Macだけで動かせました!!
必要最低限のものは、Mac、ラズパイ、Micro SDカード、SDカードリーダー、電源、Wi-Fiと分かりました。
動かない・繋がらない時は、諸先輩方の記事をググると色々出てきます。

参考記事

Qiita|macだけでRaspberry Piに接続してみた
Qiita|ラズパイがSSHに繋がらないときに疑うこと
ラズパイダ|Raspbianのなどの書き込み総合ソフト「Raspberry Pi Imager」がリリース