巷で人気のRaspberry Piを遅ればせながら英国から直輸入しました。発売当初は数ヶ月待ちという絶望的な入手困難さでしたが、注文から1週間程度で届きました。その後しばらく放置してしまいましたが、なんとか初期設定が終わり自宅サーバーとしてProwl三兄弟を快適に動かすことができました。忘れないうちに備忘録として残しておきます。
本体以外に何が必要なのか?
いろんなブログを見ると、SDカード、microUSBケーブル、HDMIケーブルやモニタ、マウス、キーボードを用意してから初期設定をされるのが一般的な様子。困っているわたしの姿を @hitoriblog さんと @tom_go さんがTwitterで拾ってくれました。何のことはなくすべて家にあるもので間に合いました。
- SDカード(Class10 16GB)
- microUSBケーブル
- LANケーブル
OSをSDカードに焼いて、本体にmicroUSBケーブルで電源を入れると勝手に起動します。あとはLANケーブルを無線ルーターに接続すればsshdが立ち上がっているので、MacBook AirからTerminal経由でログイン出来ます。当初の目的であるProwl通知サーバーにするだけならキーボードやモニタ、マウスは不要でした。
SDカードにOSを焼く
Downloads | Raspberry PiからArch Linux ARMをダウンロードし、SDカードをMacBook AirのスロットにUSBカードリーダー経由で挿し、df -h でVolumeを確認します。
MyMac$ df -h
CleanMyDriveという外部ストレージを管理するアプリを使っていたらエラー。終了させてからもう一度実行。
MyMac$ diskutil umount /dev/disk2s1
Volume (null) on disk2s1 failed to unmount: ‘Unmount disallowed by CleanMyDrive’
MyMac$ diskutil umount /dev/disk2s1
Volume (null) on disk2s1 unmounted
ダウンロードしたArch LinuxをSDカードに焼きます。出力先の指定の仕方に注意。ZIPファイルは200MB程でしたが解凍したイメージファイルは約1.9GB。終了まで2分程度。
MyMac$ sudo dd bs=1m if=~/Desktop/archlinux-hf-2013-01-22.img of=/dev/rdisk2
Password:
1850+0 records in
1850+0 records out
1939865600 bytes transferred in 134.501313 secs (14422652 bytes/sec)
起動とホストの確認
microUSBケーブルを接続すると起動します。無線ルーターとLANケーブルで接続。ルーター管理画面にアクセスしてRaspberry Piを探します。ホスト名はalarmpiです。
Raspberry PiにSSHでシェルログインします。ユーザ名はroot、パスワードもrootです。
MyMac$ ssh root@192.168.11.2
The authenticity of host ‘192.168.11.2 (192.168.11.2)’ can’t be established.
RSA key fingerprint is xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘192.168.11.2’ (RSA) to the list of known hosts.
root@192.168.11.2’s password:
めでたくログインできました。データベースを更新します。
[root@alarmpi ~]# pacman -Syu
日本時間に修正。
[root@alarmpi ~]# cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
Ruby環境の構築
TwiProwl、IMAProwl、EgoProwlに必要なRuby環境を構築します。バージョンは1.9.3でしたが問題なく動作しています。ついでにgitも入れておきます。
[root@alarmpi ~]# pacman -S ruby
[root@alarmpi ~]# ruby -v
ruby 1.9.3p385 (2013-02-06 revision 39114) [armv6l-linux-eabi]
[root@alarmpi ~]# pacman -S git
自分専用なので/etc/gemrcには”gem: –no-user-install”を指定しておきます。アップデートとTwiProwl、EgoProwlに必要なライブラリをインストール。
[root@alarmpi ~]# gem update –system –no-user-install
[root@alarmpi ~]# gem install ruby-hmac oauth –no-user-install
TwiProwlをインストール
@northeye さんのTwiProwlをインストールします。
[root@alarmpi ~]# git clone https://github.com/takuo/TwiProwl.git
config.ymlは母艦PCに移してから編集した方が簡単。Twitter認証がエラーにならないようCAPathを”/etc/ssl/certs”に変更する(デフォルトではコメントアウトされている方)。
IMAProwlをインストール
同じく @northeye さんのIMAProwlをインストールします。
[root@alarmpi ~]# git clone https://github.com/takuo/TwiProwl.git
config.ymlでメールアカウント情報を設定。
EgoProwlをインストール
TwiProwlをエゴサーチ用に修正した @tom_go さん作のEgoProwlをインストールします。以下のエントリを参考にしてください。
その他
レンタルサーバーと違ってプロセスが勝手にkillされることはないし、停電に遭う以外は稼働し続けるはずですが、念のためプロセス終了している場合は立ち上げ直すスクリプトをcronに登録しておきます。
Raspberry Piについて
とりあえず通知サーバーにするというRasperry Pi購入当初の目的は達成しました。全く知識がないけどいろいろできそうで楽しい。