OpenRDサーバ稼働

Debian6のARM版で、UVCビデオカメラが繋いだだけで動いたり、ZoneMinderがパッケージで用意されていて簡単にインストールできたりと、x86版と何ら使い勝手が変わらず、連休を利用して格闘する事を想定していたのが、あっさり終わってしまって拍子抜けだ。

結局、OpenRD Ultimate に Debian6 ARM版のパッケージを使って次の環境を整えた。

・監視カメラ画像記録
・ファイルサーバ
・VPN接続
・Web Proxy
・IRCサーバ

これで今までLet’s note CF-W2のUbuntu 10.10のサーバでやっていた機能を完全に代替する事ができた。ハードディスクがハードウエアRAID1になったのと容量アップしたから、信頼性は多少上がったかもしれない。

Marvell Sheeva 1.2GHzのパフォーマンスはLet’s note CF-W2のIntel Pentium M 1.1GHzと余り変わらない感じ。

これで何が便利なのかとかは後々紹介しようと思う。
# いらないって? (^^;

またもや民主党のバカが寝言を言っている

給料の安い会社の社長で、自分が指導力を全く発揮せず、役割分担も決めないで社員が勝手にうまく動いてくれるなんて都合のいい妄想を抱いているのを過去に見た事がある。まあ、給料が安いからこそそういう人材しか居ないんだが、政府の中枢でそういう人材がいるってのは最早末期症状だねえ。

59:20頃
「きめ細かな支援の為に役割分担をしっかりとやるリーダーシップを発揮して貰いたい。」
「これを受けて政府は?」
「そういう体制を作りつつあります」

おい、震災から1週間以上経ってるのに、まだ作れてないのかよ。

「現地のスタッフは自分で責任を持って、覚悟を持ってやってもらいたい」

は?

組織ってのは、トップの下に数人のリーダが居て、そのリーダそれぞれの下に数人のスタッフが居て…とツリー状の階層構造を作り、それぞれに権限を与え、役割分担で責任区分を明確化し、命令伝達経路を作るから機能するんだぞ。

トップが階層構造を無視して、スタッフの言う事を直接聞いたり、直接指示したりするから、収拾が付かなくなるって民主党の他のバカどもが散々やってるのを見て来ただろうに、それでもまだやるか?

だから、「リーダーシップを発揮して貰いたい」と、組織立った行動をするべきだと言われてるのに、現場が責任を持ってやれって開いた口が塞がらん。

それに、「現場の人を信じてるから現場の判断で被災者を救って欲しい。責任は自分が取る」って言うなら分かるけど、責任は現場で持てって、それじゃ誰も何もできんわな。そもそも現場で何でも責任持ってできるんなら責任を取るのがお仕事の平野はいらねーじゃん。

こいつが寝言を言ってる間にも被災者はどんどん不幸になるから、平野には自決する事を strong recommended だ!一刻も早く腹を切れい。

【OpenRD Debian6】Zoneminderインストール

とりあえず、USBカメラをOprnRDにサクッと挿してみる。

Mar 21 02:13:10 silverfox kernel: [ 5419.372911] usb 1-1.1.2.1: New USB device found, idVendor=0ac8, idProduct=3420
Mar 21 02:13:10 silverfox kernel: [ 5419.380176] usb 1-1.1.2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Mar 21 02:13:10 silverfox kernel: [ 5419.387885] usb 1-1.1.2.1: Product: Venus USB2.0 Camera
Mar 21 02:13:10 silverfox kernel: [ 5419.393168] usb 1-1.1.2.1: Manufacturer: Vimicro Corp.
Mar 21 02:13:10 silverfox kernel: [ 5419.400835] usb 1-1.1.2.1: configuration #1 chosen from 1 choice
Mar 21 02:13:10 silverfox kernel: [ 5419.522914] Linux video capture interface: v2.00
Mar 21 02:13:10 silverfox kernel: [ 5419.588143] uvcvideo: Found UVC 1.00 device Venus USB2.0 Camera (0ac8:3420)
Mar 21 02:13:10 silverfox kernel: [ 5419.604133] input: Venus USB2.0 Camera as /devices/platform/orion-ehci.0/usb1/1-1/1-1.1/1-1.1.2/1-1.1.2.1/1-1.1.2.1:1.0/input/input0
Mar 21 02:13:10 silverfox kernel: [ 5419.617889] usbcore: registered new interface driver uvcvideo
Mar 21 02:13:10 silverfox kernel: [ 5419.639815] USB Video Class driver (v0.1.0)
Mar 21 02:13:11 silverfox kernel: [ 5420.784731] usbcore: registered new interface driver snd-usb-audio

挿しただけで認識。
ビデオデバイスのみならず、カメラ内蔵マイクロフォンも使えるようだ。

ZoneMinderをサクッと入れてみる。

root@silverfox:~# aptitude install zoneminder
The following NEW packages will be installed:
apache2{a} apache2-mpm-prefork{ab} apache2-mpm-worker{ab} apache2-utils{a}

さすがに何も入れてないから、apache2とかmysqldとか連鎖インストールするものが多いな。勿論Yと答えて暫し待つ。

終わったら、ZoneMinderのWebインターフェースの初期設定。

root@silverfox:~# ln -sf /etc/zm/apache.conf /etc/apache2/conf.d/zoneminder.conf
root@silverfox:~# adduser www-data video
Adding user www-data' to group video’ …
Adding user www-data to group video
Done.

グループ設定を有効にする為に再起動
root@silverfox:~# reboot

ブラウザで
http://192.168.11.8/zm/
とZoneMinderのWebインターフェースを開いてモニタ追加。
設定はこれと同じ。

で、あっさり動いた。しかし、メモリが少ないせいかWebの応答が遅いな…。
後はどの程度のパフォーマンスが出るのかを検証。

marvellの sheeva 1.2GHz は大体、今サーバにしているLet’s note CF-W2のIntel Pentium M 1.1GHzと同じ位ではないかと推測しているが、ZoneMinderをmodect状態にして放置してみる。

【OpenRD】Debian 6 インストール

今までARMとは何ぞや?ARM CPUにサックリ入るLinuxは?などと情報収集をしていたが、Debian 6 squeezeを入れる事にした。

ARMというCPUはlegacy ABIとEABIとかいうのがあるらしく、OpenRDはEABIで、armelというやつがそれらしい。未だに違いが良く分からないがバイナリのエンディアンの違いかな?

Debian installer for OpenRD という、英文だが非常にシンプルかつ簡単なインストールガイドがあったので、この通りにやる事にした。

中身を読むと、Debian インストーラは NAND flash へ書き込む事はできないので、USBメモリかSATA HDDへのインストールになるとか。

Corega のRAID HDDハードディスクケースを活用して、ファイルサーバ兼 Zoneminder監視カメラ画像記録サーバ兼家庭LANゲートウエイ兼IRCサーバを構築するつもりだったので、書き込む毎に劣化していくNAND flashを使わないのはむしろ有難いくらい。

まずは、やった事のメモ。

FATかext2またはext3でフォーマットしたUSBメモリにインストーライメージを配置して読み込ませる方法と、TFTPでインストーライメージを読み込ませる方法と2通り紹介されている。

わしは空いているUSBメモリが無いのでtftpでやる事にし、
sudo aptitude tftp-hpa tftpd-hpa

と入れて、

とやって、uImageとuInitrdを配置。

OpenRDを起動して、キー押してboot途中で止める。
OpenRD Ultimateなので次を実行。

次は、SATA HDDなので、

この時に、ちゃんとファイルが読めていると、#マークが多数表示される。
T T T…とか表示されていると、tftpdのファイルが正しく読めていない。

そしてインストーラ起動。

SATAインターフェースに繋いであるハードディスクが起動時に認識され、ハードディスクパーティションを適当に握ってくれるので、既定のままGO!GO!

途中色々聞かれるけど、適当に答え、インストールするのは、sshサーバだけ選んでインストール完了。

再起動後、再びキーを押してbootを止め
setenv bootargs_console console=ttyS0,115200
setenv bootcmd_sata ‘ide reset; ext2load ide 0:1 0x01100000 /uInitrd; ext2load ide 0:1 0x00800000 /uImage’
setenv bootcmd ‘setenv bootargs $(bootargs_console); run bootcmd_sata; bootm 0x00800000 0x01100000’
saveenv

と設定して

で起動!…

せぬわ!

Bad Magic Numberとか言われて怒られる。どうもパーティション指定が違っているようなのだが、どうやれば正しくなるのかさっぱり分からん。

で、困った時のOpenRDフォーラム頼り。
さすが Debian squeeze 出たばっかりだから、ヒトバシラーがおるわおるわw
これを参考にすると、ide reset とか ext2ls とか新たな技を覚えた。

Marvell>> ide reset

Reset IDE:
Marvell Serial ATA Adapter
Integrated Sata device found
[0 1 0]: Enable DMA mode
Device 1 @ 0 1:
Model: WDC WD5000AAKS-00A7B2                    Firm: 01.03B01 Ser#:      WD-WMASZ0170852
Type: Hard Disk
Supports 48-bit addressing
Capacity: 476940.0 MB = 465.7 GB (976773152 x 512)

これを見ると、ide 1:1 と指定するのが正しいようだ。
なるほど、内部のSATAが0で外部のeSATAソケットが1になる訳だな。

setenv bootargs_console console=ttyS0,115200
setenv bootcmd_sata ‘ide reset; ext2load ide 1:1 0x01100000 /uInitrd; ext2load ide 1:1 0x00800000 /uImage’
setenv bootcmd ‘setenv bootargs $(bootargs_console); run bootcmd_sata; bootm 0x00800000 0x01100000’

そして

無事起動。
とりあえず、今日はここまでで、後でV4Lとかzoneminderインストールとかやろう。