Raspberry Pi セットアップ

なんだか良く忘れるのでメモを残しておく.
（※追記　RASPBIAN JESSIE WITH PIXELに対応しました）

# Raspberry PiにRaspbianを焼く
1. [こちら](https://www.raspberrypi.org/downloads/)から好きなOSをダウンロードする
    * NOOBSはOSではなくインストーラ
    * 今回はRaspbianを直接ダウンロード
    * ダウンロードには1hくらいかかった気がする
1. SDカード挿す
2. `df -h`でSDカードのディスクを確認する
    * 誤ってPCのディスクを選択しないように

* ex) SDカードが/dev/disk2s1でディレクトリ直下の2017-01-11-raspbian-jessie.imgを焼く場合

```
sudo diskutil unmount /dev/disk2s1
sudo dd bs=1m if=2017-01-11-raspbian-jessie.img of=/dev/rdisk2
sudo diskutil eject /dev/disk2s1
```
* ※2017/07/28現在convパラメータ指定が必要

```
sudo dd bs=1m if=2017-07-05-raspbian-jessie.img of=/dev/rdisk2 conv=sync
```

# Raspberry Piを起動させる
諸々の設定（特に無線LAN）をするため初期起動のみキーボード・マウス・ディスプレイが必要。以降はsshで作業できます。

1. OSを入れたSDカードをラズパイに挿入＆電源入れて起動してみる
2. raspi-configを設定する
    * jessie以降初期起動でデスクトップが表示されるようになったためターミナルをひらく
1. `raspi-config`で諸々の設定を行う
    * 日本語フォントをいれないでLocaleの設定をすると文字化けするのでとりあえず以下の設定のみ
        * Internationalisation Options > Change Timezone > Asia > Tokyo
        * Internationalisation Options > Change Keyboard Layout > Generic 101-key PC > Other > Japanese > Japanese > The default for the keyboard layout > No compose key
    * ホスト名の変更
        * Advanced Options > Hostname > raspi
1. 上記の設定が完了したらrebootする  
```sudo reboot``` 

# 無線LAN設定(Model3では標準搭載されているので不要)
* WiFIアダプタは発熱や消費電力の評判を受けこちらを利用した  
<img src="https://qiita-image-store.s3.amazonaws.com/0/116692/a03e114c-196e-3ef4-bfd5-ff573df69a45.png" width="30%">  
[PLANEX 無線LAN子機 (USBアダプター型) 11n/g/b 150Mbps MacOS X10.10対応 GW-USNANO2A (FFP)](http://www.amazon.co.jp/exec/obidos/ASIN/B00ESA34GA/denshikosaku-22/)
* 接続するアクセスポイントのSSIDとパスを登録する
 * `wpa_passphrase [SSID] [PASSWORD]`
* 下記のようなものが出力されます

```
network={
        ssid="Your_SSID "
        #psk="Your_Passphrase"
        psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}
```
* 上記をコピーして```/etc/wpa_supplicant/wpa_supplicant.conf```にペーストします

* 再起動して接続がうまく言ったか確認します

```
sudo reboot
ifconfig
```

# ホスト名でsshログインできるように
自宅や研究室やら色々なとこから接続する際に毎回IPアドレスを探すのは面倒なので設定しておく.
↓のような感じで接続できるようになる.
`ex) ssh pi@192.168.0.6 → ssh pi@raspi.local`

* 最新の状態にする

```
sudo apt-get update
sudo apt-get upgrade
```

* Avahiをインストール

```
sudo apt-get install avahi-daemon 
```

* 一旦exitして再度接続してみると入れるはず

```
exit
ssh pi@raspi.local
```

### 公開鍵で入れるようにする
一回一回パスワードを入力するのが面倒なので公開鍵を登録します
色々聞かれますがEnter連打で大丈夫です

```
ssh-keygen -t rsa
```

* ssh-copy-idをbrewでインストールします

```
brew install ssh-copy-id
```

* 作成した秘密鍵をラズパイに登録する

```
ssh-copy-id -i ~/.ssh/id_rsa.pub [remote host]
ex) ssh-copy-id -i ~/.ssh/id_rsa.pub pi@raspi
```

* configに設定する

```filename:~/.ssh/config
Host raspi
  HostName raspi.local
  User pi
  Port 22
  IdentityFile ~/.ssh/raspi
```

* ログインする

```
> $ ssh raspi

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Feb  1 12:47:19 2017 from fe80::f65c:89ff:feaa:ea4b%wlan0
pi@raspi:~ $
```

これでかんたんにログインできるようになりましたね！


# その他必要な開発用ツールを落とす
とりあえずvimとgitを.

```
sudo apt-get install vim git
```

以上で初期セットアップは完了
以降はsshで作業します

### 参考
* [Raspberry Pi を無線 LAN 経由で SSH 接続できるようにする](http://qiita.com/kasei-san/items/087e5b33207c214c8db6)
* [Raspbian初期セットアップの備忘録](http://qiita.com/makoto_kw/items/393e098f214f81449c9f)
* [Raspberry Piに無線LANのUSBアダプタをつける](http://denshikousaku.net/raspberry-pi-wifi-lan-usb)