ホーム » コンピュータ (ページ 94)

コンピュータ」カテゴリーアーカイブ

システム

最近の投稿

アーカイブ

カテゴリー

munin-limitsで警告メール

USBRHで室温監視ができるようになったけど、 暑くなったのに気づかなければいけないので、 munin-limits でメールを送るように設定。

/etc/cron.d/munin-nodeを見ると、警告を送るコンタクト名は”nagios”になっているので、 “contact.nagios.command” に送付先の携帯のメールアドレスを登録することにする。 Debianなら、余計な設定ファイルは細かく触らないに限る…

(( /etc/munin/munin.conf ))
# メールの送り先とSubjectの設定
contact.nagios.command mail -s "[Munin] ${var:group}::${var:host}" 携帯メアド
contact.root.command mail -s "[Munin] ${var:group}::${var:host}" root
# a simple host tree
[localhost.localdomain]
address 127.0.0.1
use_node_name yes
# USBRHの警告範囲
usbrh.tempreture.warning            31
usbrh.tempreture.critical           34
# CPU負荷の警告
load.load.warning                   2.5
load.load.critical                  3.5
# ディスク使用量の警告
df._dev_sdc1.warning                70
df._dev_sdc1.critical               90
df._dev_mapper_lvm_lvm0.warning     70
df._dev_mapper_lvm_lvm0.critical    90
# プロセス総数の警告
processes.processes.warning         300
processes.processes.critical        400
# S.M.A.R.Tの警告文章は大量で長いから報告させない
smart_sda.contacts                  no
smart_sdb.contacts                  no
smart_sdc.contacts                  no

熱くなってきたしUSBRH復活

USB接続の温度・湿度センサーのUSBRHだけど、 新しいサーバに切り替えて、ドライバの認識がうまくいかないので、 外してあった。 そろそろ部屋も暑くなってきたので、気まぐれで復活をさせてみた。 CPU温度やらHDDのS.M.A.R.Tセンサーで大体の温度は測れているけど、 バックアップ処理で急激に温度変化するし、やはりサーバ処理とは関係のない 温度センサーじゃないとだめ…

以前は、 USBRH driver for Linuxを 使っていたけど、x64のせいなのか、ダメ。 USBRH on Linuxを 使ってみた。以前は、どうもデータ取得に失敗していたけど、 今思うと、"USBRH driver…"と競合してただけかもしんない。 あっさりデータ取得に成功する。

継続して温度観察できるように、muninの設定をしてみた。 センサーは1つだけだし、必要最小限のコードにて…
あとは、警告メールの送信機能の設定かな… munin-limitsあたりを参考に、設定をしてみよう。

#!/bin/bash
#%# family=auto
#%# capabilities=autoconf
USBRH="/usr/local/bin/usbrh"
available="yes"
case $1 in
config)
echo "graph_title USBRH Tempreture/Humidity"
echo "graph_category sensors"
echo "graph_vlabel Temp(C) / Humid(%)"
echo "graph_args -l 0 --base 1000"
echo "humidity.label Humidity"
echo "humidity.draw LINE2"
echo "tempreture.label Tempreture"
echo "tempreture.draw LINE2"
exit 0
;;
autoconf)
if [ "$available" = "yes" ]; then
echo "yes"
exit 0
else
echo "no (daemon isn't running)"
exit 1
fi
;;
snmpconf|suggest)
exit 0
;;
*)
;;
esac
# データの読み出し
values=(`$USBRH`)
echo "tempreture.value" ${values[0]}
echo "humidity.value" ${values[1]}

自宅内のDNSのExpireなどを短く

Android端末で、ほぼGmailなどは、いつでも読める状態だけど、 自宅メールサーバへの接続に失敗することが発生。 多分、自宅でメールを読んだ時のIPアドレスを覚えていて、 自宅外(もしくはWiFi状況が悪くてG3経由になっている時)で、 そのアドレスを使おうとして、繋がらないなどのトラブルが発生しているように思う。 ということで、自宅内DNSサーバのSOA情報を短くする。

$ORIGIN tsaitoh.net.
;
$TTL    604800
@  IN SOA  perrine.tsaitoh.net. root.perrine.tsaitoh.net. (
3     ; Serial
600     ; Refresh
300     ; Retry
600     ; Expire
180 )   ; Negative Cache TTL

あれ??、$TTLも短くするんだっけ?

yahoo.co.jpがimapメールサービス開始

少し前にNewsがあったyahooでimapによるメールが使えるようになるサービスが、 ようやく自分のアカウントにも届いた。

メールの設定は、どれもimapを使っているので、設定も簡単と、PCのThunderbirdなどの 設定を変更していく。んで、携帯のAndroid端末,iPod touchと 変更をしていくけど、iPodが設定に手間取った。

最初にアカウントのメールアドレスとパスワードを入力して、次のページで細かい設定を するんだけど、メールアドレスが@yahoo.co.jp だと、自動的にプロトコルがpopに なってしまう。いろいろ試してもダメなので「ドメイン部がyahoo.co.jpだからまずい」 ということなのだから、最初のメールアドレスで、"ya.co.jp"とか、だましのドメイン名を 入れてやった。するとプロトコルをimap/popの選択が出た。 こりゃ、普通の人は設定できん…

エアコンの工事

年末からエアコンが壊れていたけど、夏を前に工事。 朝から思ったより時間がかかった。 最後に工事士さんの評価アンケートの 記入があった。技術屋の興味の下らない質問にも付き合ってくれたし好評価。 ただ細かく言うと、「操作説明は丁寧でしたか?」…一切ないし^_^;。マニュアル見るしいらんし。

1105281309_960x640.JPG

新しいエアコンだけど、富士通ジェネラルのnocria。 リモコンとエアコンが無線式なので、赤外線だと届かない…といった心配もない。 さらに、リモコンとパソコンが接続でき、エアコンの温度情報などをモニタリングでき、 電気代の月変化を記録できる。

当然、パソコン大好き人間にすれば、制御対象としては面白い。 まずは、リモコンのデバイスを確認すると、上記のような、USBシリアルのCOMポートデバイス。 あれ、TeraTermでCOMポートにアクセスして通信速度変えまくったけど、反応ないぞ… プロトコルはバイナリなのかな….

久々のEmacs Lisp…

Mac OSでLaTeXを使っていて、Emacsで編集してるんだけど、 *.tex を pTeX アプリに投げるのは面倒だし、Emacs でコンパイルと思うんだが、 MacBookでは動いたものが、動かない。 "M-x shell"でコマンド打つけど、Emacs の補完もされない。 今までPathが通っていて当たり前としか思ってなかったけど、 Emacs の exec-path なんてあったんだ… ということで、init.el に下のようなコードを追加。
# /usr/local/bin も通ってないし…
久々にEmacs lisp 触ると、LISP 自体忘れている…

(( $HOME/.emacs.d/init.el ))
;;
(mapcar
(function
(lambda (str)
(if (file-accessible-directory-p str)
(progn
(setq exec-path (cons str exec-path))
;;(setenv "PATH"
;;	  (concat str ":" (getenv "PATH")))
))))
'("/usr/local/bin" "/Applications/pTeX.app/teTeX/bin"))

自宅DNSのIPv6化

自宅のIPv6化も、IPアドレス生打ちであれば、内→外については動く確認も取れてきた。 ただ、外→内はFirewallの設定?の問題もあるのか、動かない。 また、友人もレンタルサーバでIPv6 ready なサーバを動かしていたので、 自宅から接続してみた。だけど、http://www6.nekodama.com/ といったAAAAレコード持ちの ドメインでアクセスさせたけど、ダメだった。 自宅内のDNSの設定の問題か…

bind9 の IPv6化には、以下の2点が関係。

(( /etc/bind/named.conf.options ))
options {
:
listen-on-v6 { any ; } ; # IPv6ホストの問合せを受付。
}
(( /etc/default/bind9 ))
OPTIONS="-u bind"      # IPv6アドレスを教えてくれる
# OPTIONS="-u bind -4" # IPv4のみ。

ただし、最後の "OPTIONS="-u bind -4"を取ると、 AAAA持ちなサイトにアクセスする時に IPv6 が切れていると、 IPv6でアクセスしてタイムアウトしてから、IPv4でアクセスする。 このため、ブラウズ速度が落ちてしまう。 まだ、常時IPv6接続しっぱなし…でもないので、当面は"-4"で動かしておこう…

IPv6でようやくルータ以外のPCもつながった

6to4を使ったIPv6接続には成功していたけど、 radvd を使ったルータ以外のPCのIPv6接続には失敗していた。 色々と試した結果、tun6to4には、2002:XXXX:XXXX:0000::1を設定し、 自宅サーバには 2002:XXXX:XXXX:0001::1を設定する。 radvd には、2002:XXXX:XXXX:0001:****:****:****:**** を使うように設定した。

(( ネットワーク構成 ))
                    +------------------------+
Internet--[router]--+ 192.168.1.2            |
 (IPv4)             | 2002:XXXX:XXXX:0001::1 +--[radvd]
                    |    (eth0)              |
                    |    (tun6to4)           |
::192.88.99.1-[tun]-+ 2002:XXXX:XXXX:0000::1 |
 (IPv6)             +------------------------+

interfaceファイルは、ルータから取得した2002:XXXX:XXXX形式のファイルから、 address部にバッククオートを使って設定した。

(( /etc/network/interfaces ))
auto tun6to4
iface tun6to4 inet6 v4tunnel
   endpoint any
   address  `/bin/cat /var/run/DDNS.ipv6`::1
   netmask  16
   gateway  ::192.88.99.1
   local    192.168.1.2
   # DynamicDNSのアドレス更新
   # /var/run/DDNS.ipv6 = 2002:XXXX:XXXXを生成
   pre-up   /etc/DDNS/mydns-jp.sh
   # eth0内のアドレスを割り当て
   post-up  /sbin/ip addr add \
      `/bin/cat /var/run/DDNS.ipv6`:1::1/64 dev eth0
   # 2002:XXXX:XXXXを使ったradvd.confを生成
   post-up  /etc/network/script/update-radvd.pl
   # radvdを再起動
   post-up  /etc/init.d/radvd reload
   pre-down /sbin/ip addr del \
      `/bin/cat /var/run/DDNS.ipv6`:1::1/64 dev eth0

ちなみに、radvd.conf ファイルの生成には、以下のようなスクリプトを用いた。 6to4 による IPv6 対応ルーター設定によれば、わざわざこんなことをしなくても、Base6to4Interface という 設定を使えばいいのだけど、我が家の場合はルータを間に挟んでいるため、 IPv4なルータ(外側)のIPアドレスが取れないので、このようなスクリプトを使うしかない…

(( /etc/network/script/update-radvd.pl ))
#!/usr/bin/perl
my $dir   = "/etc/network/script" ;
my $rconf = "/etc/radvd.conf" ;
my $rtemp = "$dir/radvd.conf.template" ;
my $ddip6 = "/var/run/DDNS.ipv6" ;
my $ip6h = "" ;
if ( -f $ddip6 ) {
   open( FH , $ddip6 ) or die( "Can't open $ddip6\n" ) ;
   $ip6h =  ;
   close( FH ) ;
   if ( $ip6h =~ s/^(2002:[0-9A-Z]+:[0-9A-Z]+)$/$1/i ) {
      open( FHD,">$rconf" ) or die( "Can't open $rconf\n" ) ;
      open( FHS,"$rtemp" ) or die( "Can't open $rtemp\n" ) ;
      while(  ) {
         s/<IPV6>/$ip6h/ if ( /^\s+prefix\s+<IPV6>/ ) ;
         print FHD $_ ;
      }
      close( FHS ) ;
      close( FHD ) ;
   }
}
(( /etc/network/script/radvd.conf.template ))
interface eth0
{
   AdvSendAdvert on;
   AdvManagedFlag on;
   AdvOtherConfigFlag on;
   prefix <IPV6>:1::/64
   {
      AdvOnLink on;
      AdvAutonomous on;
      AdvRouterAddr on;
   };
};

無事、http://www.kame.net/ のDancingカメさんも http://[2001:200:dff:fff1:216:3eff:feb1:44d7]のURLであれば、 サーバ&radvdクライアントなPCでも、うまく踊ってくれました。

interfacesでバッククオート使えるんだ…

先日、IPv6の設定の実験をしていたけど、自宅サーバはDynamic DNSであるため、 アドレスが変化する可能性がある。 そうなると、/etc/network/interfaces で設定するIPv6アドレスも変化する。 このため、"iface tun6to4 inet6 manual"で設定していた。 しかし、アドレス部分でコマンドが使えないかとバッククオートを試したら、 使えるじゃん…

auto tun6to4
iface tun6to4 inet6 v4tunnel
endpoint any
address  `/bin/cat /var/run/DDNS.ipv6`::1
# 我が家のDDNSのipv6アドレス(2002:XXXX:XXXX)
netmask  16
gateway  ::192.88.99.1  #公衆6to4リレールータ
local    192.168.XX.XX  #ルータの中なのでprivate

ただし、まだ radvd の設定がまずく、ルータ以外のPCがグローバルなIPV6に接続できない…

Googleウェブマスターツールを使ってみた

Googleのアカウントの中をみてたら、Googleウェブマスターツールなるものがあったので 使ってみた。SEO対策やらブログ分析ができるらしい。 といっても、Googleのアカウントで使ってみたら、「あなたが管理しているサイトか確認」 が必要らしい。色々なやり方があるみたいだけど、自分のサイトのトップに、 以下のようなメタタグを埋め込む方法をやってみた。

<meta name="google-site-verification" content="LY-xxx_-xxxxxxxx" />

んで、何ができるんだ!?!?、なんとも本末転倒。

Google 検索

My Google   Yahoo

Microsoft

ファンサイト

メタ情報