ラズベリーパイをタイムマシンに使えるNASに仕立てあげる

RaspberryPi2(以下ラズパイ)買いました。なんだかめちゃくちゃスペック高くなっているのでこれは買ってもいいかなと思ったのと、丁度、確認してみたい情報があったので。 でもせっかく買うわけだから、そのまま死蔵するなら買わないほうがいい(というか雑誌の付録がいっぱいある)のでNASにすることにしました。

だいぶ前に黒箱がお亡くなりになり、メインマシンにデータを集めていたけど、電気代的に常時つけておけない。 常時起動できる何か代わりの物が欲しかったし、嫁がMacユーザーなのでバックアップに使えるAFPのNASにしてあげるとちょうどいいですね。

linuxでAFPのサーバーにはnetatalkを使うのが一般的らしい。(他にあるかどうかは探していないけど) 構成は

ラズパイ - USBHDD(RAID1)

まずはラズパイにOSを入れないと…と思ったら手元には2GBのマイクロSDしかありません。 ubuntuとdebian(rasbian)は 4GB 以上を要求している、データサイズのインフレしすぎでしょ、正直つらい。 調べたらarchlinuxならなんとかなりそうだったので、OSの選択肢がなくなりました。

初archlinuxです、なんでこうなった。とりあえず入れましょう。

英語の手順はこちら http://elinux.org/ArchLinux_Install_Guide

SDカードをマシンに放り込みフォーマット

fdisk /dev/sdb

“n”押して”p”でパーテーションを切ります。”1” にしてサイズは “+100M” です。 ここはfatでないといけないので”t”押して”c”でfatに変えます “n”押して”p”でパーテーションを切ります。”2” にしてサイズは そのままエンターで全部使います。 あとは”w”で書き込み

次にフォーマットとOSの書き込み

mkfs.vfat /dev/sdb1
mkfs.ext4 /dev/sdb2
mkdir root
mkdir root/boot
#ここからOSの書き込み作業
mount /dev/sdb2 root
mount /dev/sdb1 root/boot
wget http://archlinuxarm.org/os/ArchLinuxARM-rpi-latest.tar.gz
bsdtar -xpf ArchLinuxARM-rpi-latest.tar.gz -C root
sync

あとはラズパイに挿してそのまま起動します、初期はrootユーザーのみでパスワードもrootになっています。 archlinuxだとHDMI+USBキーボードかシリアル、sshdも起動しているので有線ネットワークのある環境であれば有線でsshで接続できます。 sshで接続してnetatalkを入れます。バイナリパッケージは pacman を使えばいいらしい。

pacman -Sy netatalk

あとはUSB接続のHDDをマウントしてそこを netatalk で共有できるようにコンフィグを設定します。 マウントの設定は以下のようにしました。何故か起動時にマウントできないことがあったのでオプションは nofail,auto,rw に設定。 これで起動時にマウントできなくてもリカバリーモードに入らなくなる。

/dev/sdb2 /opt/afp ext3 nofail,auto,rw 0 0

netatalk は /etc/afp.conf がコンフィグファイルで以下の設定を追記した。

[TimeMachine]
path = /opt/afp
time machine = yes
vol size limit = 1024000

タイムマシンで使えるかどうかと使える領域を書いておくと良いらしい。 あとはrebootすれば動くようになる。