2年くらい前に購入したRaspberry Pi Model BのRaspbianを新しくしようと思います。OSX YosemiteにはBeagleBone Blackとの接続用にUSB-Serialドライバがインストールしてあります。Raspberry Piも同様にディスプレイとキーボードを接続しないで、OSXとUSB-Serial接続をしてヘッドレスインストールします。
SDカードにRaspbianイメージを焼く
DownloadsページからRaspbianイメージをダウンロードします。バージョンはFebruary 2015
です。
$ cd ~/Downloads |
diskutilコマンドでイメージを焼くためのSDカードのデバイスを確認します。SDカードを挿しているデバイスは/dev/disk2
です。SDカードには以前インストールしてあったBeagleBone Blackのが入ったままでした。
$ diskutil list |
diskutilコマンドでSDカードをアンマウントしてからddコマンドでイメージを焼きます。microSDカードをアダプタに挿して使っているためか、2時間くらいかかりました。
$ diskutil unmountDisk /dev/disk2 |
OSXとUSB-Serial接続
Raspberry PiをヘッドレスインストールするためにOSXとUSB-Serial接続できるようにします。シリアル接続については以下のサイトを参考にします。
ドライバのインストール
すでにOSXにはBeagleBone Blackを接続しているので、FTDIのVCPドライバのEnergiaFTDIDrivers2.2.18をインストールしています。
USB-Serial変換
PL2303HX内蔵USB-Serial変換ケーブルはアマゾンから購入しました。Software Installation (Mac)を参考にしてGPIOピンにつなぎます。
- 赤: 5V
- 黒: GND
- 白: RXD
- 緑: TXD
USB-Serial接続
OSXからシリアル接続する場合はターミナルから以下を実行します。Yosemiteの場合デバイスファイル名はcu.usbserial
です。
$ screen /dev/cu.usbserial 115200 |
ちなみにChromebookのUbuntuからシリアル接続する場合は以下です。
$ sudo screen /dev/ttyUSB0 115200 |
デフォルトのusernameとpasswordでログインします。
- username: pi
- password: raspberry
Raspbian GNU/Linux 7 raspberrypi ttyAMA0 |
初期設定
コンソールに接続したらガイドに従って初期設定をします。
$ sudo raspi-config |
オプションのリストが表示されるまでにちょっと時間がかかりました。
- Expand Filesystem > Select
- Internationalisation Options > Change Locale > ja_JP.UTF-8
- Internationalisation Options > Change Timezone > Asia > Tokyo
無線LAN
無線LANのUSBドングルはBUFFALO WLI-UC-GNMを使います。
電源不足
USB-Serialケーブルは給電もしてくれますが、無線LANを使う時は電源不足になるので別途microUSB電源ケーブルを接続します。USB ACアダプタは1.8Aくらいないとapt-get update
したときにRaspberry Piが落ちてしまします。
アクセスポイント検知 - wpa_supplicant.confを使わない場合
最初はアクセスポイントの検知ができる無線LAN環境での設定です。wpa_supplicant.confを使わずに/etc/network/interfaces
にSSIDのパスフレーズを直接書きます。
auto lo |
NICを再起動します。
$ sudo ifdown wlan0 |
IPアドレスがDHCPから取得できました。
$ ip addr show wlan0 |
名前解決とインターネット接続を確認します。
$ ping -c 1 www.yahoo.co.jp |
アクセスポイント検知 - wpa_supplicant.confを使わない場合
wpa_supplicant.confファイルを使う場合は、/etc/network/interfaces
から読み込むようにします。今回はEthernetポートは使わずにUSBドングルの無線LANだけをつかうので、wpa-roamでなくwpa-confのディレクティブで指定する必要があります。
auto lo |
wpa_passphraseコマンドを使いwpa_supplicant.confファイルを作成します。
$ sudo sh -c "wpa_passphrase $1 $2 >> /etc/wpa_supplicant/wpa_supplicant.conf" |
wpa_supplicant.confには平文でパスフレーズがコメントアウトされた状態で残っているので削除しておきます。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev |
ステルスモード - wpa_supplicant.confを使わない場合
無線LANのアクセスポイントがステルスモードの場合はwpa-scan-ssid 1
を追加します。
auto lo |
ステルスモード - wpa_supplicant.confを使う場合
同様にwpa_supplicant.confはscan_ssid=1
を追加します。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev |
/etc/network/interfaces
はwpa-confディレクティブでwpa_supplicant.confを読み込むようにします。
auto lo |