ラズパイでヘッドレスインストールが上手くいかない時の対処法

エンジニアのメモ帳
この記事は約5分で読めます。

先日購入したラズパイ3 ModelB+をヘッドレスインストールしようとしたら少しハマりました

 

ヘッドレスインストールとは、HDMIケーブルやキーボードなどを用意することなくラズパイを使用できるようにするためのインストール方法です

 

 

一般的にはラズパイは、OSを入れた後にHDMIケーブルやキーボード・マウスを接続し、デスクトップ画面を表示させて色々設定を行います

 

そしてWi-Fiや固定IPアドレスの設定をすることで、周辺機器を外してラズパイのみで使用できるようになります

 

 

ただ、最初の設定のために周辺機器を用意するのはめんどくさいですよね

 

そこで便利なのがヘッドレスインストールというわけです!

 

 

そんなめちゃくちゃ便利なヘッドレスインストールで少しハマったので、それの解決方法を今回は紹介していきます

 

開発環境

今回はRaspberryPi3 ModelB+を使っていきます

 

また、デスクトップよりSSHメインで運用する予定なので、OSはRaspbian Liteにしました

 

 

ちなみにラズパイをこれから購入しようと考えている方はこちらのキットがおすすめです!!

Amazonのリンクはこちら

 

ラズパイ3 ModelB+に加えて以下のものが同梱されています

  • スイッチ付きACアダプター(5.0V3.0A)
  • 本体ケース
  • OS入りSDカード
  • USBメモリ
  • ヒートシンク & ファン
  • HDMIケーブル

 

ぶっちゃけコスパ良すぎです

 

これ1セット持っていればラズパイ周りは完璧ですし、HDMIケーブルやUSBメモリなんかは他のことにも使えるので損なしどころかアドしかありません

 

超オススメなので、まだラズパイを持っていない方は是非!
Amazonのリンクはこちら

 

通常のヘッドレスインストール

ラズパイのOSイメージをmicroSDに書き込んである前提で話します

 

 

まずmicroSDの中に空のsshという名前のファイルを作ります

 

その後Wi-Fiの設定をwpa_supplicant.confに書き込みます

 

sshもwpa_supplicant.confも保存場所は/bootの中です(microSDを開いて一番最初に出てくるディレクトリ)

 

 

この状態でラズパイを起動するとssh可能な状態で自動的にWi-Fiに接続します

 

その後同じネットワーク内に接続されているPCで以下のコマンドを使用してSSH接続します

ssh pi@raspberrypi.local

 

 

…と、これが正しいやり方みたいなんですが私は上手くいきませんでした

 

その時に解決した方法を下でご紹介します

 

 

上手くいかないときの対処法

原因を探る

原因は大きく分けて下の2つが考えられます

①そもそもWi-Fiの設定が間違っていて接続できていない

②Wi-Fiには接続できているがSSH接続ができない

 

それぞれ解決策を下で紹介していきますね

 

解決策を試す

「①そもそもWi-Fiの設定が間違っていて接続できていない」の場合

 

考えられる原因として以下のことが挙げれらます

  • wpa_supplicant.confの内容に誤字、脱字が無いか
  • SSIDやパスワードにダブルクオーテーション(””のこと)が付いているか
  • 逆にハッシュで暗号化したパスワードにダブルクオーテーションを付けているか

 

「え、こんなことかよ」って思うかもしれませんが、地味にミスっていることもあるのでもう1度しっかり見てみましょう

 

 

「②Wi-Fiには接続できているがSSH接続ができない」の場合

ターミナルかpowershellで以下のコマンドで使用します

arp -a

 

すると、同じWi-Fiに接続されているデバイスのIPアドレスの一覧が出てきます

 

もしラズパイっぽいIPアドレスが見つかったら片っ端からSSHを仕掛けてみましょう

 

 

全部試してもダメな場合

私は上記の方法を全部試してみても上手くいきませんでした

 

そこで最終手段として使用した荒業が「Wi-FiルーターのアクセルログからIPアドレスを判断する」です

 

 

Wi-Fiルーターの管理画面にログインするとアクセスログを見ることができます

 

アクセスログを見るとどのデバイスがどのIPアドレスでWi-Fiに接続したかを確認できるので、ラズパイを起動したタイミングでWi-Fiに接続したデバイスのIPアドレスがラズパイのIPアドレスになります

 

IPアドレスが分かったので後は普通のsshコマンドでログインするだけです

ssh pi@ラズパイのIPアドレス

 

 

ただ、この方法は家庭用のルーターでしか用いることができないもろ刃の剣です

 

もしご自宅でRaspberryPiを使っているようでしたら是非試してみてください

 

 

コメント

タイトルとURLをコピーしました