Raspberry Pi メモ ## セットアップ ### 必要なもの - 8GB以上かつClass10以上のMicroSDカード - USB電源とMicroUSBケーブル - USBに何かを接続するにはセルフパワーのハブ推奨 - EthernetケーブルとDHCP環境 - PCかMac ### セットアップ #### OSダウンロード http://www.raspberrypi.org/downloads/ 初心者に優しそうな RASPBIAN をチョイス。Raspberry Pi向けのDebian。 #### OSイメージをSDカードに書き込む http://www.raspberrypi.org/documentation/installation/installing-images/mac.md http://www.raspberrypi.org/documentation/installation/installing-images/linux.md ダウンロードしたzipの中身をSDカードに書き出す。Macの場合、以下のように実行。 ※ /dev/disk2がSDカードのBSD名、環境で異なるので適宜読み替えてください ``` $ diskutil list # SDカードを探す $ diskutil eraseDisk fat32 RASPBIAN /dev/disk2 # SDカードをFAT32でフォーマット $ diskutil umountDisk /dev/disk2 # フォーマット後自動マウントされるのでアンマウント $ dd if=2015-02-16-raspbian-wheezy.img of=/dev/disk2 # 結構長い、進捗はCtrl+T ``` #### 起動 1. EthernetケーブルをLANに接続し、SDカードを挿入して電源投入 1. 20秒ほど待ったらネットワークスキャンしてRaspberry PiのIPアドレスを探す (設定はDHCPがデフォルト) 1. SSHする - User: pi - Password: raspberry 1. 時刻設定 - ntpdの設定と、Raspbianは `ntpdate` が入ってないので `apt-get` で入れて初回の時計合わせを行う 1. Timezone設定 - .barshrc に `export TZ=Asia/Tokyo` を追記 1. locale設定 `$ sudo locale-gen ja_JP.UTF-8` `$ sudo dpkg-reconfigure locales # ja_JP.UTF-8を選ぶ` ※上記2つをやってもssh越しでシェルに日本語入れられないし、perlで警告が出るため、以下の3つを `~/.bashrc` に追記した。 `export LANGUAGE=ja_JP.UTF-8` `export LC_ALL=ja_JP.UTF-8` `export LC_TYPE=ja_JP.UTF-8` 1. SSH周りの設定 - パスワード変更 - 公開鍵の設置とパスワードログイン禁止 - rootログイン禁止 - rootのパスワードも変えておく - デフォルトのユーザ(pi)も消す方がよさそう - 必要に応じてクライアント側の `~/.ssh/config` に `ServerAliveInterval`を指定 1. 不要なものを消す SDカードの容量は貴重なので、不要なパッケージを削除。 - `$ sudo apt-get remove xserver* libx11*` などなど - このあとautoremoveしたらなんかrubyとかも消えました。1.9系だったし無問題です。 1. パーティション拡大 SDカードの空きを全て確保する。 `$ sudo raspi-config` の "Expand Filesystem" を選択 1. パッケージ周りを更新 `$ sudo apt-get update` `$ sudo apt-get upgrade` `$ sudo apt-get dist-upgrade` 2015/02半ば時点ではイメージのリリースから日が浅いせいか何もアップグレードされません 1. ファームウェア更新 `$ sudo rpi-update` 1. 放置時のサスペンドを防止 http://www.raspberrypi.org/forums/viewtopic.php?f=29&t=35054 より `/etc/kbd/config`に以下を設定 ``` LANK_TIME=0 POWERDOWN_TIME=0 ``` `$ sudo service kbd restart` でいいか不明 (念のため再起動した) #### その他設定について raspi-config で設定できる内容は大体 `/boot/config.txt` に保存される。 `/boot/`はFATなので大概のOSから書き替えられる。詳細は http://elinux.org/RPiconfig 参照。 #### (必要に応じて)無線LANを使えるようにする 今回はバッファローの WLI-UC-GNM2 ( http://buffalo.jp/product/wireless-lan/client/wli-uc-gnm2/ )という無線LANドングルを使用。市場価格1000円程度。 ``` $ lsusb Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 0411:01ee BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-GNM2 Wireless LAN Adapter [Ralink RT3070] ``` - APへの接続設定など `wpa_passphrase` コマンドの出力結果を `/etc/wpa_supplicant/wpa_supplicant.conf` に追記して、 `/etc/network/interfaces` を修正したら当該NICを `ifup` する。 接続先アクセスポイントを複数登録する場合は、`/etc/wpa_supplicant/wpa_supplicant.conf` の `network` を列挙する。 なお、 `wpa_passphrase` に無線LANのパスワードを引数として渡す( `wpa_passphrase {ap_name} {passphrase} >> /etc/wpa_supplicant/wpa_supplicant.conf` )のは嫌なので、以下のようにテキストファイルに書いて渡した。 ``` $ wpa_passphrase `cat wifi_setting.txt` >> /etc/wpa_supplicant/wpa_supplicant.conf` ``` -- #{14360} #{14625}