Raspbianのインストールのときだけ、キーボードやディスプレイや有線LANのケーブルを用意するのは面倒ですよね。sshと無線LANが使えるようになったら用無しになるのに。
そこで、別のLinuxマシンでsshと無線LANの設定までを行なったSDカードを用意する方法を紹介します。私はCentOS 6.8を使いましたが、どれを使っても大差無いと思います。
用意するもの
- Linuxマシン
- インターネットに接続されていること
- SDカードリーダーが接続できること
- wpa_supplicantパッケージがインストールされていること
- tcpdumpパッケージがインストールされていること
- SDカード (8GB)
- SDカードリーダー
- Raspberry Pi
- 無線LANアダプタ
Linuxマシンでの作業1 RaspbianのSDカード作成
- Raspbianをダウンロード
- → ~/Downloads/2017-04-10-raspbian-jessie-lite.zip
- 展開
- cd ~/Downloads
- unzip 2017-04-10-raspbian-jessie-lite.zip
- SDカードを接続、デバイス名を確認
- dmesg
- → 私の場合は/dev/sdhでした。以下/dev/sdhを読み替えてください。
- 以下rootで作業
- SDカードのパーティションがマウントされていればアンマウント
- umount /dev/sdh1
- umount /dev/sdh2
- 書き込み(デバイス名間違いに注意!!)
- dd if=2017-04-10-raspbian-jessie-lite.img of=/dev/sdh bs=1M
- sync; sync
Linuxマシンでの作業2 sshと無線LANの設定
- SDカードを一旦抜いて再接続
- df
- →sdカードのパーティション2つが自動マウントされていることを確認します。私の場合は/media/bootと/media/ f2100b2f-ed84-4647-b5ae-089280112716でした。
- 自動マウントされていなければマウント
- sshの有効化
- touch /media/boot/ssh
- 無線LANの設定ファイルをLinux上で作成
- wpa_passphrase SSID passphrase > /tmp/wpa.txt
- 必要に応じて/tmp/wpa.txtを編集
- 私の場合はSSIDをブロードキャストしていないので、scan_ssid=1を追加しました。
- 生のパスフレーズがコメントとして残っているので削除した方がよいでしょう。
- SDカード上の無線LAN設定ファイルに追記
- cat /tmp/wpa.txt >> /media/f2100b2f-ed84-4647-b5ae-089280112716/etc/wpa_supplicant/wpa_supplicant.conf
- SDカードをumount
- umount /dev/sdh1
- umount /dev/sdh2
Raspberry Pi起動
- SDカードをRasbperry Piに挿入
- LinuxマシンでDHCPパケットを確認しておく
- tcpdump port 67 or port 68 -e -n -vvv
- Raspberry Pi電源投入
- 赤いLEDが光る
- 緑のLEDが点滅
- tcpdumpの出力からIPアドレスを確認
192.168.20.1.bootps > 255.255.255.255.bootpc: [udp sum ok] BOOTP/DHCP, Reply, length 548, xid 0xc27a435c, Flags [none] (0x0000)
Your-IP 192.168.20.17
Client-Ethernet-Address cc:e1:d5:17:e9:6d
(略)
これで、Linuxマシンからsshで接続できます。
- ssh pi@192.168.20.17
0 件のコメント:
コメントを投稿