ddup-3.0.1-unix.tar.gzというファイルを探してきて解凍後、./install。 インストール先などを聞かれるが大体デフォルトでOK。 IDとパスワードもここで設定して、/etcに格納される。 使用許可はrootではなく、一般ユーザに与えた。 このddupというツールの使い方だが、
$/sbin/ddup --host xbee.homeip.net --wildcard
を実行すればよい。だったらこれを頻繁に実行していれば良いかといえば、 情報のアップデートにも負荷がかかるので必要以上に更新するとサーバから 怒られてしまうらしい。
そこで前回登録したIPアドレスと、今自分が持っているIPアドレスを比較して、 変わっていたら登録に行く、というのを5分おきにチェックするというのはどうだろうか。
#!/bin/sh # getip.sh if ! wget -q -O .router.sjis http://DRのプライベートアドレス/wans.htm then exit fi tail -n 76 .router.sjis|head -n 1 > .router awk -f putip.awk .router
そこで、上のシェルスクリプトをcronに登録する。 WAN状況を見るHTMLがwans.htmlなので、そのページをゲットし、 IPアドレスの書かれた行をローテク、head+tailで切り出し、putip.awkに渡す。
#!/bin/awk
# putip.awk
{
if ($0 ~ // ) {
$0 = substr( $0,index ( $0 , "D" ) +2 );
CurrentIP = substr($0,1,index( $0 , "<" ) -1 );
if ( CurrentIP !~ /^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$/) { exit }
getline FormerIP < ".ipaddress";
if ( CurrentIP != FormerIP ) {
print CurrentIP > ".ipaddress";
if (system("/sbin/ddup --host xbee.homeip.net --wildcard") !=0 ) { exit }
}
exit;
}
}
awkが良く分からないので美しくないが動いてるのでよしとする。
要はIPアドレスを切り出して、.ipaddressというファイルに書き出しておき、
それと今のIPアドレスを比較して、異なっていたらddupで更新に行く、ということ。
www.xbee.homeip.netでもアクセスできるように、--wildcardオプションもつけた。
$crontab -e
*/30 * * * * /home/yoshi/getip.sh
そうそうIPアドレスもかわるものでもないし、ということで、30分おきに
チェックするようにした。
Analog-4.16
たまたま買ったUNIXUSERにanalogのRPMが入っていたので、それを使ってみる。
$rpm -Uvh analog-4.16-2utf.i386.rpm
エラーのようなものがでるが、別にいいらしい(?)
/etc/analog.confをちょっと修正する必要がある。
LANGFILE /var/analog-4.16/lang/jp.lng ←追加
DOMAINSFILE /var/analog-4.16/lang/jpdom.tab ←修正
UTF8FILE /var/analog-4.16/lang/jputf8.lng ←修正
あとはanalogを実行すればとりあえずrootなら動く。
できれば、analog.conf内のHOSTNAMEくらいは、書き換えておきたいところ。
ログの集計は自動でやりたいので、
面倒なので、そのままrootでcronで回す(いいのか?)
/home/httpd/html/stats.html
でデフォルトで出力されるので、それにリンクを貼って完成。
Ng
TELNETで作業をしているとき、viだけだと非常につらい。
そこで、思い出したようにNgを入れてみた。ソースは適当にとってくる(ぉ。
$tar xfvz ng13Lcanna1.0.2.tar.gz
$ln -s sys/sys/Makefile.canna Makefile
$make
$su
#cp ng /usr/local/bin
これでとりあえず、動くようになったが、付属のdot.ngでは
カーソルキーで上下左右にいかなくて、自分のような弱弱ユーザにはつらいので、
.ngに以下の設定を追加
; 矢印キーでカーソル移動できるようにする(canuumを利用しない場合)
(global-unset-key "\^[\[" 'backward-paragraph)
(global-set-key "\^[\[A" 'previous-line)
(global-set-key "\^[\[B" 'next-line)
(global-set-key "\^[\[C" 'forward-char)
(global-set-key "\^[\[D" 'backward-char)
ちなみに参考にしたのはここありがたき。
プリンタサーバ
今までWindows2000にUSBで繋がっていたEPSON-PM3000をLinuxサーバに繋いで
プリンタサーバを作ってみることに下。
まず、/etc/printcapを以下のような感じで記述。
lp:\
:sd=/var/spool/lpd/lp:\
:mx#0:\
:sh:\
:lp=/dev/lp0:
あとはスプール先として/var/spool/lpd/lpをmkdirして書き込めるようにchmod。
おまじないとして、/etc/modules.confに
alias partport_lowlevel partport_pc
options partport_pc io=0x378 irq=7,auto
これでlpdを起動すれば後はlprとかで印刷できるはず。Windowsからの共有も
sambaを起動しておけば、大体いけるはず(ぉ
適宜更新・・・・。。
今日はここまで