Raspberry PiのRaspbian導入

2013年5月16日

これまで初代玄箱(Debian)でサーバとNASを稼働していましたが、サーバがHDDの寿命に依存されないようにするため、Raspberry PiのOSをRaspbianにして常用のサーバにします。
玄箱上で動いているのはcronでDDNSの更新とIRCプロキシであるTiarraです。
どちらもPerlで組んであって、これをRaspbian上で稼働させます。
RaspbianはDebianベースなので、移行は難しくないはず。

kurobox
面影が無くなって、みすぼらしくなってしまった初代玄箱。
貫禄はありますが、将来性は不安です。

さて、Raspberry Piの良いところは、SDカードの交換でシステムが変えられる点です。
前回のraspbmcのSDカードを残しつつ、余っていた2GBのSDカードで構築します。
Raspberry Piの以前の記事はこちら
Raspberry Piのraspbmc導入

Raspbianのセットアップは、Windows上でhttp://www.raspberrypi.org/downloadsからイメージを落としてきて、Win32DiskImagerでSDカードに書き込むだけです。
設定のため、初回起動だけモニタとUSBキーボードを接続します。
常用になると、接続はLANケーブルと電源だけになります。

SDカードをRaspberry Piに差して起動すると、しばらくして設定画面が表示されます。
expand_rootfsをSDカード全体を使うように
change_passでパスワードの変更
change_timezoneをAsiaの中のTokyoに
コンソールしか使わないので、memory_splitを16MBにします。
Finishすると再起動します。
後で設定しなおすときは、コンソールからsudo raspi-configで表示できます。

以降はIPアドレスが自動取得できる環境の場合

モニタとキーボードは必要ないので、外します。
TeleWatchのようなソフトでネットワーク上のコンピュータの一覧を表示してRaspberry PiのIPアドレスを見つけます。
WindowsからTera TermのようなソフトでSSH接続します。
ユーザpi、変更したパスワードで入ります。

まずはOSのアップグレードします。
sudo aptitude update
sudo aptitude dist-upgrade

続けて、データの受け渡し用にSambaをインストールします。
sudo aptitude install samba
sudo aptitude install samba-common-bin

設定用にSWATのインストールします。
sudo aptitude install swat
SWAT用にユーザを作ります。
sudo passwd root

共有用のディレクトリを作成します。
sudo mkdir /share

Windows上のブラウザから、http://[Raspberry PiのIPアドレス]:901にアクセスします。
GLOBALSでホスト名やワークグループなどを設定し、SHAREで/shareを共有するように設定します。(read only:No、browseable:Yes、available:Yes、guest ok:Yes)

これでWindows上からホスト名でアクセスできるようになったので、エクスプローラから\\[Raspberry Piのホスト名]で共有フォルダにアクセスします。
共有フォルダに読み書きをできることが確認できたら、不要なSWATを削除します。
sudo aptitude remove swat

SDカードの使用量がパンパンなので、SWATの分20MBでも空けば有りがたいです。
今回のように余ったSDカードの流用でなければ、4GB以上をお勧めします。

これでようやく、共有フォルダに玄箱からコピーしたDDNSの更新スクリプトとTiarraを書き込みます。
コンソールでDDNSの更新スクリプトを/var/ddns、Tiarraを/etc/tiarraに移動します。

DDNSの更新スクリプトは、玄箱のcrontabの内容をそのまま記述して動作しました。
Tiarraはperl /etc/tiarra/tiarraで起動することを確認した後、viで起動スクリプトを作成して登録します。
起動スクリプトは玄箱のDebianと記述が違うようなので、あちこち参考にして作成しました。
vi /etc/init.d/tiarra

——————–
#!/bin/sh

test -f /etc/tiarra/tiarra || exit 0

case “$1" in
start|force-reload)
  echo -n “Starting: tiarra"
  /etc/tiarra/tiarra –config=/etc/tiarra/tiarra.conf
  echo “."
  ;;
restart|reload)
  ;;
stop)
  ;;
*)
  echo “Usage: /etc/init.d/tiarra {start|stop|restart|reload|force-reload}"
  exit 1
esac

exit 0
——————–

起動スクリプトの登録をします。
update-rc.d tiarra defaults 99 1

rebootで再起動して、Tiarraが自働でIRCに接続できれば完成です。
消費電力は3W、環境に優しいサーバです。
raspberrypi_02

一方、NASは以前コンデンサの修理で復活したLinkstationにしました。
OMRONのUPSと接続して、異常時に自分自身をシャットダウンするように設定してあります。
これは初代玄箱に無かったので、NASの安全性が増しました。
稼働時12W。常時稼働なのであまり気にしないですが、スタンバイ時に5Wも電気を食うのは気に入らないです。
ため込んだ300GBをコピーするのに、100BASEでまる1日かかりました。
linkstation_02linkstation_01

従来の初代玄箱が13Wだったので、全体の消費電力は上がりましたが、メンテナンスが楽になりました。
初代玄箱はHDDを取り外して引退させます。