※2022/5/6追記: 今ではRaspberry Pi Imagerを使ってもっと簡単にHeadlessセットアップができます(この記事の方法も今でも使えますが)。↓の記事もぜひご覧ください。
Raspberry Pi OS Lite版はGUIがないバージョンということで、モニターを繋いでも黒い画面に文字がズラズラ出てくるだけです。 そもそもサーバー的に使いたい場合は、画面もキーボードもつなぎませんよね。
ここでは、画面もキーボードも繋がずに、別のパソコンからWiFi経由でセットアップする方法を説明します。 画面を繋がずにネットワーク越しにセットアップすることを、Headlessセットアップといいます。
OSのインストール
マイクロSDカードへのOSのインストール方法は、こちらの記事を参照してください。ここでは省略します。
Headlessセットアップ
Headlessセットアップのやり方は、公式のこちらのページに説明があります。
手順は簡単で、マイクロSDカードのbootパーティションに
- wpa_supplicant.conf - WiFi接続先情報
- ssh - SSHサーバー有効化
という2つのファイルを指定された内容で作成します。
先ほど作成したマイクロSDカードを、もういちどパソコンに差し込んでみましょう。 bootというドライブが認識されればOKです。
WiFi接続先情報
まず、WiFi接続先情報を設定します。bootドライブにwpa_supplicant.conf
というファイルを次の内容で新規作成します。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=JP network={ ssid="<Name of your WiFi>" psk="<Password for your WiFi>" }
ここにWiFiのSSIDとパスワードを入力します。これで、Raspberry Pi初回起動時に自動的にWiFiにつながります。
SSHサーバー有効化
デフォルトではSSHサーバーが無効になっているので、別のマシンからログインができません。
有効化するには、bootドライブにssh
というファイル名でファイルを作成します。
中身は空で大丈夫です。
起動
2つのファイルを作成すると、ついにマイクロSDカードの完成です。 bootドライブを右クリックして「取り外し」をして、マイクロSDカードを取り外しましょう。
Raspberry Pi電源ON!
取り外したマイクロSDカードをRaspberry Piに挿して、いよいよ電源ON!
しばらく待つと、起動します。とはいえ、ディスプレイを繋いでいないので、起動したかどうかよくわかりません。 Raspberry Piの緑ランプの点滅が少し落ち着いたかな?くらいを見計らいましょう。
SSH接続
起動したら、いよいよパソコンからSSHで繋いでみましょう。 PowerShell、TeraTerm、Poderosa、MinGW、Cygwin…などをお使いの方もいらっしゃるかもしれませんが、私は昔からPuTTYを使っています。
どれでもよいので、SSHでrapberrypi.local
に繋いでみましょう。例えば、Puttyならこのようにします。
Host Nameの欄にraspberrypi.local
と入力し、SSHを選択してOpenボタンを押します。
すんなり繋がればOKです。初期ユーザー名はpi
、パスワードはraspberry
です。
え?繋がらない?そう、ここが難関というか、ややこしいところです。
SSHが繋がらない場合
まず、WiFi設定やsshファイルの作成に何らかのミスがあった可能性があります。 何度でもやり直しできるので、もう一度パソコンにマイクロSDカードを差し込んで、ファイルを作成しなおしてください。
何回チェックしてもWiFi設定が間違いないのに繋がらない場合があるかもしれません。
マルチキャストDNSという機能を使うのですが、Windows10標準でこれがまともに使えるようになったのは比較的最近です。
Windows10でraspberrypi.local
で繋がるには、次の条件があります。
- パソコンとRaspberry Piが同一リンク上にあること
- 新しいWindows10を使っていること(たぶん1803以降ならOK?)
1は、同じご家庭のWiFiルータに繋がっていればまず大丈夫です(企業用WiFi APは場合による)。 2の条件を満たさない、または何らかの理由で繋がらない場合は、次の方法を試してみると良いでしょう。
こちらのBonjour for Windowsをインストールしてみてください。 これを使えばWindows8など古いOSでも繋がります。
これで無理なら、IPアドレスを調べて(WiFIルーターの管理画面などで振り出されたDHCPアドレスを調べる)IPアドレスで接続するなどして、なんとかがんばってください。個人的には、ここが一番の難関なのでは?という気がします。
2021/2/27追記 WiFiがつながらなくても使えるシリアルコンソールでのセットアップ方法を記事にしたので追加しました。
どうしてもWiFiがつながらなくて困る場合は、シリアルコンソールを使ってパソコンと直結してログインし、ifconfig
コマンドでIPアドレスを調べる方法もあります。
起動後のオススメ設定
ここからは無事にRaspberry PiにSSH接続できたとします。おめでとうございます😅 早速、初期設定をしましょう。SSH接続するとbashが使えますので、次のコマンドを実行します。
$ sudo raspi-config
で、Raspberry Pi用のセットアップ画面を出しましょう。
sudo
コマンドには自分のパスワードの入力が必要です。初期パスワードだとraspberry
です。
こんな画面が出ます。上下キーでメニューを選択し、Enterキーで実行できます。一通りの初期設定ができるので便利です。
次の設定は変更をお勧めします。
- ログインパスワードの変更
- 初期パスワードは全世界共通なので、パスワードがないのと同じです。変更しましょう。
1 Change User Password
から変更できます。
- 初期パスワードは全世界共通なので、パスワードがないのと同じです。変更しましょう。
- タイムゾーンを日本に変更
- Raspberry Piはイギリス生まれなので、デフォルトはイギリスのGMT(グリニッジ標準時)になっています。
4 Localisation Options
–>I2 Change Timezone
で、Asia/Tokyo
を選択します。
- Raspberry Piはイギリス生まれなので、デフォルトはイギリスのGMT(グリニッジ標準時)になっています。
その他、言語設定などお好みで変更できます。デフォルトはUTF-8(イギリス英語)ですが、私はそのままでもいいかな。 キーボード設定はRaspberry Piをネットワーク越しに使うのであれば関係ないのでそのままで良いです。
raspi-config
を終了するには、Tabキーを押して下のFinishを選択してEnterキーを押します。
最後に、Raspberry Piのソフトを最新版に更新しましょう。
$ sudo apt update && sudo apt upgrade
これでRaspberry Pi OSのソフトが最新になります。