2010年9月アーカイブ

とっても便利なaipo
けどどうせならboot時に勝手に起動してくれないかな~?ってことで設定してみた。

まずcronに起動スクリプトを書いてみた。
こんな感じ

@reboot /usr/local/aipo/bin/startup.sh


が、起動せず。
/var/log/cronを見るときちんと呼び出されてはいるが /var/log/secureを見ると
sudoする権限ないからできないよん、、、ってエラーが出てる。

むむむ。。。

だったら、、、と思ってrootのcrontabに書くも結果は同じで・・・

いろいろググった末 sudoの権限をゆるめるのが早いみたい。
visudo でsudoのファイルが開けるので以下の行をコメントアウトする
#Defaults requiretty


■参考
http://open-groove.net/linux/sudo-requiretty/

上記で無事自動起動ができました♪

めでたしめでたし
最新のドコモのケータイが80番ポートしかアクセスできないようになってしまったようなのでaipoも80番で起動させることにする。

とはいえ80番はapacheが使ってるので直接80番を起動することはできないので
ajpってapache標準のproxyを使うことにする

使い方はこんな感じ。
グループウェアのaipoをお試しで入れてみた。
現在WEBサーバーとして稼働しているサーバーに入れたので81番ポートにて・・・

スケジュール管理とかワークフロートかやりたいことがだいたいできるしいい感じ~
モバイルも対応してて実際使ってみても最低限の要件は満たしてるし
うちの社内の標準スケジューラーにしようかなぁ?っと・・・

ちなみに今まではOpenPneのBizを使ってた

が、重大な問題が・・・

セキュリティの関係で WEBサーバーとWEBサーバーからしかアクセスできないDBサーバーの構成で・・・
一部プログラムをDBサーバー側に置く必要があるがDBサーバーには直でつなげないから
WEBサーバーに一度アップしてsftpでコマンド毎回たたいて送ってたけどメンドいのでlftpを使ってみた。

lftpのmirrorを使って完成~♪

#!/bin/sh

LOCAL_DIRNAME=$1
REMOTE_DIRNAME=$2
USERID=$3
PASSWAD=$4
FTPSITE=$5

if [ -d $LOCAL_DIRNAME ]
then
lftp <<- END
open -u $USERID,$PASSWAD $FTPSITE
lcd $LOCAL_DIRNAME
cd /$REMOTE_DIRNAME
mirror -Rv
END
else
echo "No such directry."
fi

けどなぜか転送できていないケースがある。
毎回じゃなくて短いスパンで何度も更新してると効かないことがある。
短いスパン+ファイルサイズが変更されていない場合に起きるみたい。

更新された、、、って判定条件がタイムスタンプとファイルサイズの両者なのかな?
ってことで--ignore_sizeオプションを入れるも変化なし。。。

なんでやねん?
っていろいろ調べた末 どうもタイムスタンプが悪さをしているみたい

ようは新しいかどうかローカルとリモートでタイムスタンプ比較しているわけだけど
比較の際にローカル時刻とGMTの時刻を比較してたみたい。


以下を追加したら無事毎回転送されるようになりました。
set ftp:use-mdtm no
set ftp:timezone -9


これ、lftpのバグって言ってもいいレベルじゃない?
結局2時間ぐらい悩んだわけだけど だったら自分でファイル転送プログラム書いた方が速かった気がするw
まぁ次回から役に立つわけでよかったけれど・・・


ちなみにlftpでmirrorするのは今回が2回目なんだけど 前回はこんなオプション入れていないから・・・
こっそりなおしておきました。
まぁ前回はバックアップ目的だったから実行が1日1回とかだから上のバグ条件に当てはまるケースはあまり多くはなかったとは思いますけどね。

2011年9月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30