USBキーボードを一切使わずにRaspberry Pi に SSH 接続
タオルは3枚をヘビーローテーションして生活しているミニマリスト。好きな言葉は"在庫はコストだ"。最近、ミニマリストの面白い本を読んだ。オフ会に行ってみたいなと思ったりしている。
Raspberry PiのためにUSBキーボード買うくらいなら、タオル増やすよって感じなので、RasPiの操作は当然SSH接続。ネットワーク上にRasPiを発見できずに2時間も費やしてしまった(2週間ぶり2度目)ので、さすがに備忘録として残しておく。
必要なもの
※No.6のLANからUSBへの変換器は、No.2のSSH接続用の端末自体にLANケーブルが挿せれば必要ない。
No. | 名称 | 値段 |
---|---|---|
1 | Raspberry Pi | 5000円 |
2 | SSH接続用の端末 (ここではMacBook Pro Retina, 13-inch, Mid 2014, OS 10.10.5) |
- |
3 | LANケーブル | 500円 |
4 | USB電源 | 500円 |
5 | microSDカード | 1000円 |
6 | LANからUSBへの変換器 | 1000円 |
ケーブル類配線
- コンセントとRasPiをUSB電源で接続
- RasPiにLANケーブルを挿して、LANからUSBへの変換器で(または直接)SSH接続用端末に接続
SSH接続用端末側のNICのIPアドレスを確認
shellでifconfig
を叩くとズラズラっとでてくるのでen0以外のen〜のinetを確認する。
どれに該当するかは、LANケーブルを外した時に消えてなくなるやつというアナログな方法でも確認できるかと思う。
もしくはシステム環境設定>ネットワーク>USB EthernetのIPアドレスを確認する。
不明なRasPi側のNICのIPアドレスを確認
SSH端末側のIPアドレスが169.254.110.128でサブネットマスクが255.255.0.0ならば、RasPi側のNICのIPアドレスが169.254.〜であることが予測できる。ここでshellでarp -a
を叩くと
? (169.254.15.26) at (incomplete) on en0 [ethernet] ? (172.20.10.1) at 72:72:72:72:72:72 on en0 ifscope [ethernet] ? (172.20.10.2) at 72:72:72:72:72:72 on en0 ifscope permanent [ethernet]
という結果が得られ、これより169.254.15.26がRasPi側NICのIPアドレスであることがわかる。
RasPiにSSH接続
ssh pi@169.254.15.26
デフォルトのパスワードであるraspberry
を入力してログイン。
その他
SSH接続用の端末側のNICのIPアドレスは固定にする必要はなかった。
RasPi側で何かをinstallするとraspberrypi.local
で名前解決できるようになる。
つまり、
ssh pi@raspberrypi.local
でSSH接続できるようになる。
sudo apt-get install avahi-daemon
をすればできるようになるとの記述もあるがこれじゃなかった気がする。
arp -aってしたときに表示されるARP entryの表記の正確なリファレンスが欲しかったのだけど見つけられなかった。Mac OS XはFreeBSDをベースにしてるってはなしから、FreeBSDのリファレンスを見るんだけどどうもarpのオプションが何とかコマンドの使い方しか見あたらない。 こういうときどんな英語で調べるべきなんだろう。ちなみにunix arp entry formatとかで調べたんだけど。英語力がまだまだってことかな。