QNAP TS-209 ProII で Perl を動かす
NAS選び
会社のファイルサーバが老朽化してきたので、NASの導入を検討していました。
- 詳しい人がいなくても運用できる
- ブラウザで管理できる
- ある程度放置しておける
- でも定時処理がしたい(古いゴミファイルを消すなど)
- 二重化しておきたい(RAID 1)
- プリントサーバにもなるといい
- iTunesサーバも使うかも
普通に使う分には簡単に使えて、さらに LinuxBox的にも使えるもの・・・ということで選んだのが、QNAP TS-209 ProII です。先日、秋葉のオリオ・スペックに行って買ってきました。
Perlで定時処理する
もろもろの設定を済ませた後、早速 QNAP TS-209 ProII に Perlを実行できる環境を作ったので、その時のことをメモしておきます。ちなみにファームウェアのバージョンは「2.1.0 Build 0624T」です。
もっといろいろやりたい人は Debian化したりするそうですが、導入した TS-209 はファイルサーバとしての運用しかしないつもりなので、最低限 Perlを動かす最も簡単そうな方法として、QNAP純正の「QPKG」から ipkgを導入する方法にしてみました。
ipkgとは、以下のようなものだそうです(管理画面の「QPKGの取得」で出てくるページから引用)。
Ipkg、またはItsy Package Management System(Itsyパッケージ管理システム)は埋め込みデバイス用に設計された計量のパッケージ管理システムです。OpenWRT、 OpenMoko、Gumstix、iPAQ、QNAP NASでLinksys NSLU2用のUnslungオペレーティングシステムで使用されます。
参考)QNAP TS-109 Japanese Forum などが大変参考になりました。
QPKG から Optware-ipkg を入手
- ブラウザで TS-209 にアクセス。
- 管理画面から「システムツール」→「QPKG」に移動
- 画面右上の方(QPKGの見出しの帯)にある「QPKGの取得」をクリック
- 出てきた画面から、「Optware IPKG (Itsy Package Management System)」をクリックし、TS-209用のファイルをダウンロード。
- 管理画面の「システムツール」→「アップデート」に移動。上記でダウンロードしたファイルを指定して、更新。
- 更新が終わったら、管理画面「システムツール」→「QPKG」から「Optware-ipkg」をクリックして、有効にする。
ipkg から Perl をインストール
perl の実行
Perlを実行する際には chrootする必要がある。そうしないと、以下のようなエラーが出る。
perl: relocation error: /opt/lib/perl5/5.8.8/arm-linux/CORE/libperl.so: symbol __aeabi_uidiv, version GCC_3.5 not defined in file libgcc_s.so.1 with link time reference
予め、
$ /usr/sbin/chroot /share/MD0_DATA/optware
としておくか、
$ /usr/sbin/chroot /share/MD0_DATA/optware /opt/bin/perl ...
とすればいい。
参考)chroot とは?
crontab の設定
単に crontab -e admin としても、crontab を書き換えることができない(書き換えたつもりでも、元に戻ってしまう)。
/etc/config/crontab を書き換えれば、再起動後に反映される。