2008/12/25
最近のFreeBSDのCPU温度取得(mbmon以外の方法)
2008/11/22
imap サーバが接続を切断しました。
タイトルのエラーが出て、imapdに接続できない問題が SquirrelMailで発生しました。
これには大変参りましたが、結論として、この問題が発生していたのは
私だけで、他のユーザーには殆ど影響がありませんでした。
telnetで直接imapdに乗り込んでlogin認証を突破しようとすると
* BYE [ALERT] Fatal error: Account's mailbox directory is not owned by the correct uid or gid:
こんなメッセージが出る
エラーメッセージから探っていくと
以下のような記事が
http://www.nognog.com/diary/?date=20080327
どうやら、usamimi.infoでmailサーバーとして使っている
courier-imapが4.3.0から認証関係で変更があり
mailを保存するMaildirのuidだけでなくgidもチェックするようになり
アカウント情報とMaildirのuid,gidが不一致だと弾くようになっていた模様。
これの困ったところは、pop3では発生せず、imapdだけで発生したという点
その為、切り分けに大変時間が掛かりました。
2008/09/21
2008/09/14
SERIAL4P-LPPCI2 for FreeBSD7
メモ
FreeBSD6x系までは、前エントリーで書いたパッチを当てる事で使えていたのですが
FreeBSD7x系になってからそもそもpucdata.cの構造が変わって、パッチも当てられなくなり
困り果てていました
まず、デバイスファイルが以前と変わっている事に気付かず、そもそも認識して無いのではなんて考えたり
/dev/ttyuになっています。以前は/dev/ttydでした。
pucdata.cを見てみると、一見正しく設定されているように見えますが
tipやcuで叩いても、応答がありません。
諦めていたのですが、またしてもMLにそれっぽいメールを発見
http://lists.freebsd.org/pipermail/freebsd-bugs/2006-October/020520.html
CURRENT向けのパッチで、しかも古いためか正しく当てられない
中身を見て、以下のエントリーをOxford Semiconductorの近くに追加
{ 0x1415, 0x9501, 0x14db, 0x2150,
"Kuroutoshikou SERIAL4P-LPPCI2",
DEFAULT_RCLK * 10,
PUC_PORT_4S, 0x10, 0, 8,
},
カーネル作り直して、コマンドをタイプ
cu -l /dev/ttyu0 -s 9600
プロンプトが帰ってきて、一件落着
これで7x系に上げるのを躊躇していたマシンも上げられます。
2008/09/13
HDDラベルの変更とbootスライスの変更
備忘録・・・
bsdlabelを使って名前を変える事が出来る
usamimi.infoはHDDの交換を繰り返すうちにデフォルトのブートデバイスの添え字が
aでなはくgになってしまっている(ad14s1g)
これによってブートが上手く行かず大変困った
古いHDDを繋いでboot部分だけ使う事で問題を凌いでいた。
ラベル変更する程度では、スライスの中身は消えないが実行するのはドキドキものです。
bsdlabel -e ad14s1 # エディタが起動、編集
bsdlabel -w ad14s1 # 編集した内容をDiskに書き込み
bsdlabel -n ad14s1 > hoge.txt # 現在のラベル構成をファイルに保存
bsdlabel -R ad14s1 hoge.txt # hoge.txtに書かれているラベル構成をDiskに適用
変更することで正常に戻すことが出来るが
使用中のスライスは変更できない模様
「/」はシングルユーザーモードでもmountする為、変更する為には別ドライブから起動するしかないみたい。。。
そもそもの問題は起動時boot1,2がbootスライスを見つけることが出来ない事なので
/boot/boot.configに以下を記入する事で回避できるみたい
0:ad(0,g)/boot/loader
シリアルコンソールを使ってて「-P」とだけ書いてたよ!って場合は以下
0:ad(0,g)/boot/loader -P
boot.configについて詳しくは以下を参照の事
http://www.jp.freebsd.org/cgi/mroff.cgi?sect=8&cmd=&lc=1&subdir=man&dir=jpman-7.0.2%2Fman&subdir=man&man=boot
bootコマンドに渡される引数をそのまま書き込んでいます。
boot.configは、boot1,2に対するオプション
loader.confは、boot1,2から起動されるloaderプログラムに対するオプション = カーネル起動時のオプション
http://docs.freebsd.org/doc/3.5-RELEASE/usr/share/doc/ja/books/handbook/internals.html
普段起動時に中断して「-s」とかでシングルユーザーモードにしているあのプロンプトはloaderの物になります。
boot1,2のオプションはそれ以前ですね。
2008/09/06
2008/08/14
夏休み
本日(8/14)から来週(8/18)まで、私の職場もお休みです。
短い夏休み、あるだけまだマシだと思っています。
サーバーが置いてある部屋に私のマシンも設置されていて
そこで作業やらゲームやらをしているのですが
エアコンがまったく効果無く、扇風機数台を回しっぱなしにしています。
暑いです。
ダンボールでダクト作ってみたりして地味な努力を続けてみたり・・・
週末には、あのイベントがありますが
今年は参加しない、流れになりそうです。
usamimi.infoに住んでいる方も、もちろん参加する人が居ると思うのですが
usamimi.infoに居を構えるサークルさんってどの位いるんですかね・・・
会いに行ってみたいなぁなんて思いつつ
暑い中作業してます。
メモ
長い間、mbmonを使って温度を取っていたのですが
ここ最近のMBではうまく温度が取れなくて、諦めていました。
しかし、以下のような方法を発見したのでメモします。
http://gihyo.jp/admin/clip/01/fdt/200812/12
「FreeBSD Daily Topics」から引用
smb(4) - 古いPC向けのインターフェース。FreeBSD 3.0で登場
ipmi(4) - IPMIインターフェース。使うにはsysutils/ipmitoolも必要。FreeBSD 6.3で登場
coretemp(4) - Intel Coreダイ上デジタル温度センサインターフェース。FreeBSD 7.0で登場
k8temp(1) - Athlon 64/Opteronsダイ上温度センサユーティリティ。使うにはsysutils/k8tempをインストール
引用ここまで
この中でお手軽だったのは「coretemp」の方法
kldload coretemp
カーネルモジュールをロードして
sysctl -a | grep temper
sysctl -aで値を取ってこれます。
あとはこれをシェルスクリプトなどにして、グラフツールに取り込ませれば
温度の記録ができます。
ただしこの方法ではcore2系のCPUじゃないと駄目みたいですので
その他はipmiを試してみる必要がありそうです。