Raspberry Piをディスプレイ・キーボード・マウス無しの三重苦でもセットアップする方法

f:id:karaage:20150428225756j:plain:w640

おらの村にはディスプレイもねぇ!キーボードもねぇ!マウスもねぇ!

 色々な事情で、モニタやキーボードがないところでRaspberry Piをセットアップしたくなることありますよね?(私はあります)。sshにさえアクセスできれば!ファイルに直接アクセスできればなんとかなるのに!という人のための記事です。気分はヘレン・ケラー。

最低限必要なもの

 リモートログインできるパソコンやネットワーク環境、Etherケーブルは所有している前提です。

リンク:Raspberry Pi 3
Raspberry Pi 2でもOKです。


リンク:microSDカード
microSDカード。Jessieだと最低8GBは必要です。


[asin:B00PTGO146:detail]
リンク:USB給電ACアダプタ
電源。2Aは必要です。Raspberry Pi 3は推奨2.5Aですが、なかなか手頃で安い2.5A電源がないので自分は2Aで動かしています。

バッテリからの給電ケーブル。USBのタイプAオス- マイクロタイプBオスのものなら何でもOK

 合計約9000円!もしSDカードやUSBケーブル、電源を持っていたら、Raspberry Pi分の約5500円でOK!

 ちなみにとあるサイトによると一通り揃えようとすると2万はかかるとのこと。半分以下ですね、やった!

Raspbian書き込み

 初心者推奨のRaspberry Pi向けディストリビューションのNOOBSだとデフォルトだとsshでアクセスできないので、デフォルトでsshがenableのRaspbianを選んでやります。

 基本は以下のRaspbian Jessie SDディスク作成を参考にして下さい(こちらが最新です)。

 ただ、上記サイトみるのが面倒臭い人向けにディスク作成方法ここにも書いておきますので、このまま読み進んでいってもOKです。

Raspbianダウンロード

 以下サイトからダウンロード

 現時点で最新の`2016-11-25`をダウンロード。

 公式サイトが重い場合は、以下のミラーサイトを使用するのもよいと思います。

Index of /pub/raspberrypi/raspbian/images

ディスクのフォーマット

 次にディスクをフォーマットしましょう。好きな方法でよいですが、確実なのはSD Formatterを使う方法です。以下のサイトからダウンロードしたSD Formatterを使ってSDカードをフォーマットをしましょう。ドライブを選択するだけの簡単設計。

SD Memory Card Formatter | SD Association

イメージのSDへの書き込み

 イメージのSDへの書き込みは、以下記事参照ください。

qiita.com


 上記でうまくいかない場合や、コマンドで書き込みをどうしてもしたいという人は次の「ddコマンドを用いたイメージのSDへの書き込み」を参照下さい。

ddコマンドを用いたイメージのSDへの書き込み

ディスクのデバイスファイルを確認

 MacでコピーしたいSDカードを挿入後にdfコマンド実行してSDカードのデバイスファイルを確認。よくわからなければ、挿入前と挿入後でdfコマンド実行して比較しましょう。

$ df

 挿入後に増えているデバイスファイルがSDカードのデバイスファイルです。例えば /dev/disk2とか/dev/disk3とか。

イメージ書き込み

 書き込みしたいSDカードを挿入して、以下のコマンドでアンマウント

$ diskutil umountDisk /dev/disk2

 例えばドキュメントフォルダ直下にイメージファイルを置いた場合は以下のコマンドで書き込みできます。/dev/disk2の場合は /dev/rdisk2のようにrをつけるのがポイント。理由は…よくわからないです、すみません。なんでも、アンバッファモードになって速度が速くなるみたいです。bs=1mは一度に書き込む容量を表していて1m(1MB)くらいにしないとこれまた速度が遅くなります(2015/10/12修正)
 

$ sudo dd if=Documents/2015-05-05-raspbian-wheezy.img of=/dev/rdisk2 bs=1m

 しばらく(数分)待つと完了のメッセージが出るので、書き込み完了。途中経過が気になる方はCtrl+Tで進捗を表示できます。あとは以下のコマンドでアンマウントしてからSDカードを取り出しましょう。

$ diskutil eject /dev/disk2

IPアドレスを調べる

 Raspberry PiにRaspbianを書き込んだSDを挿入し、有線LANに繋いで電源を入れてやりましょう。すると勝手にIPを取得してくれます。次にRaspberry PiのIPアドレスを調べましょう。手当たり次第にIPをうっていっても良いのですが、Macならターミナルから以下コマンドを打つとネットワーク内のIPアドレスを表示してくれるので便利です。

$ arp -a

f:id:karaage:20150712152701p:plain:w640
 こんな感じね

 iPhoneからIPアドレス調べたい場合は、Fingというソフトが良い感じです。

Fing (フィング) - ネットワークツール

Fing (フィング) - ネットワークツール

  • Fing Limited
  • 仕事効率化
  • 無料

f:id:karaage:20150712153007j:plain:w480
 こんな感じです。どのポートが空いているかまで調べられる優れもの

 この場合は 192.168.2.108がRaspberry Pi 2です。Buffaloの無線LANで接続しているのでこんな感じの表示になっています。

 Windowsはよくわかりませんが、探せば似たようなことできるソフトは色々あるかなと思います。

sshでRaspberry Piにアクセス

Raspbianのsshの有効化

 早速sshでアクセスといきたいところですが、2016-11-25からのRaspbianでは、セキュリティの関係でデフォルトでsshサーバが無効化されてしまっています。えっ?じゃあダメじゃん!と思いきや回避策があります。以下記事参照下さい。

 具体的には以下とのこと(上記記事より引用)。まだ私は試していません。

そこで新しいRaspbianでは、/bootにsshという空のファイルを置いてから起動することで、SSHサーバーを有効に変更することができるように変更されました。

ターミナルからsshでアクセス

 先ほど調べたIPアドレスにアクセスします。Macの場合は、192.168.2.108の例だとターミナルで以下のとおり打ち込んで下さい。

$ ssh pi@192.168.2.108

 パスワードはデフォルトは「raspberry」です。

 WindowsだとMacのターミナルの代わりに、TeraTerm等のソフトを使えば同じようにログインできると思います。

iPhoneからRaspberry Piにssh

 sshするパソコンが無いという人はiPhoneからRaspberry Piにsshでログインすることもできます。Serverauditorというソフト。緊急時とかに備えて入れておくと何かと便利なのでお勧め。

Termius: Terminal & SSH client

Termius: Terminal & SSH client

  • Termius Corporation
  • 開発ツール
  • 無料

シリアル経由でRaspberry Piにログイン

 デバッグといえばシリアル通信というわけでやってみました。ネットワークが無い環境でもOK。ただRaspberry Pi3だと現時点では、設定変更必要なので注意下さい。詳細は下記記事参照。

ファイルに直接アクセス

 Raspberry Piの設定ファイルを他のPCで直接書き換える方法もあるようですが、時間と環境の関係でうまく行きませんでした。またできるようになったら追記します。

まとめ

 これでいつでもどこでもRaspberry Piライフが楽しめますね!

リンク:Raspberry Pi 3
リンク:SDカード
リンク:USB給電ACアダプタ
リンク:マイクロUSBケーブル

関連記事


変更履歴

2017/03/17 文章微修正
2016/12/30 文章構成修正
2016/12/01 最新のRaspbian 2016-11-25のSSH初期設定無効化に関して
2016/09/04 文章修正
2016/04/29 シリアルでのログインに関して追記
2015/10/11 iPhoneからのsshアクセスに関して追記