ホーム » コンピュータ » Linux » Debian (ページ 24)

Debian」カテゴリーアーカイブ

システム

最近の投稿

アーカイブ

カテゴリー

HDDのUUID認識とはいえ

LinuxのKernelの機能で、HDDの認識がUUIDを使う方式に変わり、 HDD増設の度にシステム起動するかな…という不安に駆られる ことはなくなっている。

しかし、先日サーバの再起動をかけたんだけど、 HDDの増設もなにもしていないんだけど、 見事に /dev/sda , /dev/sdb , /dev/sdc が入れ替わっている。

さすがにmunin等の画面にUUIDな超長いデバイス名が書かれても困るし、 かといってデバイスの認識順序がブート時にちょっと変わっただけで、 デバイス名総入れ替えは勘弁してほしいなぁ… /dev/disk/by-id/* を覗いてみたけど、この辺を経由するシンボリックリンク貼れってことなんだろうなぁ…

1103010851_497x316.png

Debian/Wheezy(testing)を入れる

先日、Debian6.0(squeeze/stable)が出たので、ひとまず様子見として見送っていた、 新しいtesting(wheezy)への移行作業を行った。

といっても、testing用のsources.listに修正して、aptitude safe-upgrade かけても、 更新が激しい怪しそうなパッケージも出てこなかったので、そのまま"yes"を入力。 (とはいっても、400件近いパッケージ更新だけど)

さほど、『読むからに動かなくなりそう…』という警告も出ず、入れ終わった。 ただ、ボチボチ触っていて、実は動かなくなってる…というのが常なので、 当面は気を付けよう。

Debian 6.0リリース

自分で管理しているサーバ群は、ほぼ Debian この中で、Debian 6.0(squeeze)が stable としてリリースされた。 これに伴い、testing は wheezy となったみたい。 管理しているサーバ群だけど、oldstable を使うように設定を変更しておかないと、 気軽にupdateしたら、急に動かなくなるパッケージが続出してくる可能性がある。

ためしに、いままで testing(squeeze) で運用していたサーバを、testing(wheezy) に 変更すると、更新:344個、新規:7個、削除:0個、保留:1個 となった。 6割がライブラリで、さほど影響もなさそうだなぁ…勇気いっぱつ "Yes"…といきたいけど、 ひとまず躊躇。

debianでDropboxをインストール

Debian/squeezeな自宅サーバにDropboxをインストールしてみた。 当初、DropboxのDownloadでubuntuなパッケージを入れようとしたけど、 動かなかった。しかたがないのでソースインストール。

(( コンパイルに必要なパッケージをインストール ))
# aptitude install libnautilus-extension1 \
libnautilus-extension-dev \
docutils-writer-manpage
(( コンパイル ))
# tar jxvf  nautilus-dropbox-0.6.7.tar.bz2
# cd nautilus-dropbox-0.6.7/
# ./configure
# make
# make install
(( 使ってみる ))
$ dropbox start -i
:
$ dropbox stop

IDEディスクをlvmでまとめる

自宅のサーバの更新を終え、古いサーバも様子見で動かしていたけど、 今朝変な音をたてていて、ネットワーク接続を受け付けてくれない。 細かいチェックはしていないけど、ついに絶命か… ということで、内臓HDDで新しめで容量の大きいものを取り出す。
# この作業でわかったんだけど、どうも壊れかけていたのは電源のFANみたい。

160GBのIDEディスクが2個取り出せたけど、 試用期間から考えて2次バックアップ用途あたりが無難。 かといって、160GBというのは小さく、マウントしても容量を気にして使わないといけない。 ということで、LVM機能で見かけ上1つのドライブとして使えるようにすることにした。

以下は、参考記事をみながら作業したときのメモ。 IDE2個を追加で接続したら、当初SATA=/dev/sda だったのが、 IDE1=/dev/sda,IDE2=/dev/sdb,SATA=/dev/sdc になって割り当てられた。 以前なら、ルートパーティションのデバイス名が変わって、地獄をみるんだけど、 最近は/etc/fstabには、ドライブのIDでマウント先が記載されているので、 まるっきり問題なくブートできる。さすが…

IDE1=/dev/sda
IDE2=/dev/sdb
SATA=/dev/sdc
(( lvm2のインストール ))
# aptitude install lvm2
(( PV物理ボリュームの割り当て ))
# fdisk /dev/sda
| dコマンドでパーティションをすべて消しておく
# fdisk /dev/sdb
| 同じくパーティションを消す
# pvcreate /dev/sda
# pvcreate /dev/sdb
(( VGボリュームグループに割り当てる ))
# # ボリュームグループにlvmという名前をつける
# vgcreate lvm /dev/sda /dev/sdb
(( 論理ボリュームの作成 ))
# # ボリュームグループの中に論理ボリュームを作る。
# # lvmの中にlvm0を作る。
# lvcreate -n lvm0 --size 290G lvm
(( マウントできるようにする ))
# mkfs.ext3 /dev/lvm/lvm0
# mount -t ext3 /dev/lvm/lvm0 /mnt

さて、これでバックアップ用容量はひとまず確保。 1次バックアップ=外付けUSB(1TB)、2次バックアップ=LVM(290GB) がそろったけど、まだバックアップ処理を動かしていない。 さて、元サーバのバックアップスクリプトをどう動かそうか….

arpでnetwork稼働状態モニタリング

arp出力を観測して活きているネットワーク機器の状態を 把握するmuninプラグインを作ってみた。 pingを使おうかと思ったけど、死んでいる機器があると遅いのでarpの方がいい。

つくったのは、子供のDSなどがネットワークを使っている時間などが把握できるように したかったから…

追記:うーん、単発的な通信しかしないと、1ドットと線でしか把握できず、どの端末が 活きていたのかわかりづらいなぁ…なんかいい表示方法ないかな…


#!/bin/bash
#%# family=auto
#%# capabilities=autoconf
# 自宅内の機器のホスト名(DNSなどで名前が引けること)
hosts="xxxx yyyy zzzz"
available="yes"
case $1 in
config)
echo "graph_title Local Activity by ARP"
echo "graph_category system"
echo "graph_vlabel Activity"
echo "graph_args --base 1000"
for host in $hosts ; do
echo "${host}.label ${host}"
echo "${host}.draw  AREASTACK"
done
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
for host in $hosts ; do
eval "HOST_${host}=0"
done
# データの読み出し
for host in `/usr/sbin/arp -a | /usr/bin/cut -d . -f 1 | /bin/sed 's/-/_/'`
do
eval "HOST_${host}=1"
done
for host in $hosts ; do
eval echo ${host}.value '$HOST_'${host}
done

Buffaloルータ用muninプラグイン

前のサーバで使っていた、AirStation WZR-HP-G300NHのパケット流量観察のための SNMP用スクリプトだけど、MRTGからmuninに切り替えてしまったので、 スクリプトを変更してみた。

muninのプラグインの作り方は大体わかってきたけど、in/outでプラス/マイナスで 表示する方法を試してみた。 ポイントは、"config"時の出力で、マイナス領域に表示する方は、"MMMM.graph no"にして、 プラス領域に表示する方は、"PPPP.negative MMMM" を出力すること。 "MMMM.graph no"を忘れると、プラス領域のグラフも残ってしまう。

#!/bin/bash
#%# family=auto
#%# capabilities=autoconf
USER=root
PASS=XXXXXXXX       # ルータ管理者パスワード
HOST=192.168.YY.YY  # ルータIPアドレス
URL="http://$USER:$PASS@$HOST/cgi-bin"
available="yes"
case $1 in
config)
echo "graph_title Buffalo router statics"
echo "graph_category system"
echo "graph_vlabel traffic (-)send / (+)recv"
echo "graph_args --base 1000"
for DIR in send recv ; do
for TYPE in pkt err ; do
echo "${IF}_${DIR}_${TYPE}.label ${IF} ${TYPE}"
echo "${IF}_${DIR}_${TYPE}.type  COUNTER"
if [ "$DIR" = "send" ]; then
echo "${IF}_send_${TYPE}.graph  no"
else
echo "${IF}_recv_${TYPE}.draw  LINE2"
echo "${IF}_recv_${TYPE}.negative" \
"${IF}_send_${TYPE}"
fi
done
done
done
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=(`/usr/bin/w3m -dump_source -no-proxy \
"$URL/cgi?req=frm&frm=packet.html" 2>&1 \
| /bin/sed -n '/class="DIGIT"/ s/^.*">\([0-9]*\)<.*$/\1/ p'`)
i=0
for IF in LAN WAN WiFi ; do
for DIR in send recv ; do
for TYPE in pkt err ; do
echo "${IF}_${DIR}_${TYPE}.value" ${values[$i]}
i=$(($i+1))
done
done
done
# ログアウト処理
/usr/bin/w3m -dump_source -no-proxy \
"$URL/cgi?req=twz&frm=logout.html" >/dev/null 2>&1

spamd動いてなかった

新しいサーバにしてから、どうもSpam生存率が高くて、フィルタ学習がバカになってたんだと 思っていたけど、procmailのレシピで除去と思ってメールソース見てたら、 spamassassinのつけるヘッダが無い。 よくよく確認すると、spamd が動いていないのが原因。

(( /etc/default/spamassassin ))
ENABLED=1  # 該当行を0→1に修正
CRON=1   # 今回追加(夜中に定期的にルールを更新)

やっぱり移行しても、細かい見落としあるなぁ… かといって、古いサーバの "/etc/*" コピーすると「古臭い設定」が残っちゃうしなぁ….

s25rtarpitgreylistが動かない

自宅サーバのメールqmailに、s25rtarpitgreylist を入れようとしている。 s25rtarpitgreylist-.1.5.0.tar.gz を取ってきて、インストールするが、 動かない。基本的な確認ということで"telnet localhost 25"を実行するが、 接続がすぐに切られる。 LOG を見ると、

Dec 20 08:49:01 perrine kernel: [75216.295508] s25rtarpitgreyl[30835]:
segfault at 0 ip 00007fd509512463 sp 00007fff6b408050
error 6 in libperl.so.5.10.1[7fd5094bf000+164000]

なる履歴が残っている。perl が segfault ってことは、s25rの問題ではないのか… ひとまず設定を戻そう。

サーバのCapsLock/Ctrl入れ替え

今までは、/etc/console/boottime.kmap.gz を触っていたけど、 変更しても変わってくれない。 インストールの時にもどうやってキーマップ触るか聞かれたけど、 探しても似たようなキーマップ変更ツールが混在。どれなんや…って漢字。 最終的には、squeeze以降では console-setup だったみたい。

(( /etc/console-setup/remap.inc ))
keycode 58 = Control
keycode 29 = CtrlL_Lock
(( すぐに反映させるには ))
## /etc/console-setup/cached.kmap.gz に保存される
# setupcon --force --save

Xorgで入れ替え

以前は、"ctrl:swapcaps"をキーボードの設定に書き加えていたけど、 xmodmap で変更するか…

(( /etc/X11/my-xmodmap ))
!
! Swap Caps_Lock and Control_L
!
remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L
(( /etc/X11/Xsession.d/60x11-local-xmodmap ))
#!/bin/bash
## 全角/半角のEscape化
#/usr/bin/X11/xmodmap -e "keycode 49 = Escape"
## CapsとControlの入れ替え
/usr/bin/X11/xmodmap /etc/X11/my-xmodmap
## 自分のキーボードのバックスラッシュが違うので...
/usr/bin/X11/xmodmap -e "keycode 211 = backslash underscore"

Google 検索

My Google   Yahoo

Microsoft

ファンサイト