Weblog

04/29: GLANTANKその2

GLANTANKいじり

ま、そんなわけで、仕事で使ってるんです。
WebDavの日本語版(文字化け対策)は、下記事の通り。

で、今回やったのは、再インストール(RAID1)と、手順書作成でした。
GLANTANKを購入して、まずやること。

(1) http://192.168.0.201/ へアクセスして、ログイン
(2) telnet有効化し、接続
(3) portの変更
(4) apt-get update
(5) Softwareのインストール設定

apt-get で入れた物。

一般ツール
less
rsync
ssh
nfs-server ?

共用ファイルサーバ
samba
swat
日本語マニュアル

ブラウザでのファイルサーバ(WevDav)日本語化
gcc
make
libiconv-hook-dev
apache2-prefork-dev
mode_encoding.so (日本語対応)


詳細は、後日、HPで公開しますね。
とりあえず眠いので、眠らせて〜……。Zzz

04/28: GLANTANK購入 WebDavを日本語対応に!

会社でGLANTANKを買いました。2台。
嵌ったところと、WebDavの日本語対応、文字化け対応の部分を載せておきます。

Link
GLANTANK公式サイト
IO-Hackのサイト

どんなものか一言でいうと、安価なLinuxBoxです。

中身はdebian、GigabitEther(10/100/1000)、RAID1で構築可能で、250Gx2がついて48,000円というお手軽な値段。

制作しなければなりませんが、まぁ、台数が少なければ、結構楽しめると思います。

この機械は、本来、NASとして扱うのですが、中身がLinuxなので、色々なサーバ機に使えてしまえるのがステキですね。

debianを初めて触ったのですが、なかなか良い感じです。
なんと言ってもapt-getが素晴らしい。FreeBSDでportsに初めて触れたときの事を思い出します。

で、依頼された要望があって、このGLANTANK(グラタン)を選んだのです。
要望は以下の通り。

 1.Internetから認証有りでFileのやりとりがしたい。
 2.自動的にBackupしたい

NASのみの機能なら、sambaを突っ込むのですが、Interenet越しにファイルのやりとりが必用とのことで、最初から入っているWebDavを利用しました。

自動でBackupはcron+rsyncですね。
apt-getでちょちょいのチョイ。

apache2のモジュールとして最初から入ってるヤツを使うと、日本語変換がおかしく、文字化けします。(どうやらapache13用の模様)。apache2用のmod_encoding.so を作ってやらなければなりません。初心者にとっては結構ヘビーな作業になるので、手順書を置いておきます。


WebDav日本語対応方法

GLANTANKへtelnetログインできるようにする。
debianモードじゃなくてOK!
apt-getは動くようにする。

/etc/resolv.conf、DefaultGWなどIntenetに単独で出られるようにして、apt-get update を済ませておく。

さ、いくよー。

(1)mod_encoding.soのソースをもってくる。

wgetでゲット
http://webdav.todo.gr.jp/download/mod_encoding-20021209.tar.gz
http://webdav.todo.gr.jp/download/experimental/\
mod_encoding.c.apache2.20040616

(2)解凍して、mod_encoding.cを置き換える。
tar xvzf mod_encoding-20021209.tar.gz
cp mod_encoding.c.apache2.20040616 ./mod_encoding-20021209/mod_encoding.c

(3)コンパイルするのに以下の物をapt-getでつっこむ。
apt-get install gcc
apt-get install make
apt-get install apache2-prefork-dev
apt-get install libiconv-hook-dev

(4)このままコンパイル失敗するので、一部を書き換える。
mod_encoding.cの2箇所を変更
ap_regexec((regex_t *)
→ ap_regexec((ap_regex_t *)
ap_pregcomp(cmd->pool, arg, REG_EXTENDED|REG_ICASE|REG_NOSUB);
→ ap_pregcomp(cmd->pool, arg, AP_REG_EXTENDED | AP_REG_ICASE | AP_REG_NOSUB);

(5)configureを通して、makeする
./configure --with-apxs=/usr/bin/apxs2 --with-iconv-hook=/usr/include/iconv_hook
make
gcc -shared -o mod_encoding.so mod_encoding.o -Wc,-Wall -L/usr/local/lib -Llib -liconv_hook
make install /usr/lib/apache2/modules/mod_encoding.so へ手動でコピーした気もする)

(6)apache2に、mod_encoding.so を読み込ませるようにする。
/etc/apach2/httpd.conf に以下の行を追加。
LoadModule encoding_module /usr/lib/apache2/modules/mod_encoding.so を追加

/etc/apache2/apache2.conf
Encoding Engine on → EncodingEngine on
※半角スペースを消す

apache2を再起動。

これでWebDav経由で日本語ファイルを置いた後、リロードor再アクセスしても文字化けしません。


参考にしたサイト
tamagomachanのめも
http://d.hatena.ne.jp/tamagomachan/20051211

詳細が載っていて助かりました。
わたしゃソースコード追っかけるのできないんですよorz