portupgradeでperl-5.8.6_2からperl-5.8.7に更新したところ、他のportsのconfigureが軒並み失敗するようになった。なんとなくperlが原因っぽいのできちんと確認することに。
まず、/usr/ports/UPDATINGによると、付属のperl-after-upgradeというスクリプトを走らせるべし、となっているので、man perl-after-upgradeを確認した後で実行した。すると、各portsの状態が表示され、最後に
Fixed 56 packages (797 files moved, 15 files modified)という表示が出た。
Skipped 406 packages
**** In addition, please pay attention to the following:
The /usr/local/news/bin/innd binary would be modified, make sure it works
The /usr/local/news/bin/nnrpd binary would be modified, make sure it works
The /usr/local/sbin/snmpd binary would be modified, make sure it works
The /usr/local/sbin/snmptrapd binary would be modified, make sure it works
素直に読むと、上記の4つのファイルは修正したので動作だけ確認すればよいようだが、実際にはsnmpdを起動しなおすと、libperlが見つからない、というエラーになる。リンク先が変更された場合、ldconfigでキャッシュするパスに入っていないライブラリなら、再リンクされないのか?ともかく、portupgrade -f net-snmpして対応した。「注意しろ」だけではなく、きちんとビルドしなおすようにメッセージを出すべきである。
それ以外については大丈夫なのだろうか?上の例からすると、自動で修正したという分もかなり怪しい。実際、一度失敗した他のportsのconfigureを再実行したが、やはり失敗する。メッセージは、
checking for intltool >= 0.28... 0.33 foundchecking for perl... /usr/bin/perlchecking for XML::Parser... configure: error: XML::Parser perl module is required for intltool===> Script "configure" failed unexpectedly.と、やはりperlっぽい。これについては、確かにp5-XML-Parser-2.34_1をビルドしなおせば問題なく進んだ。
今まで、perlのアップデートにそれほど気を使ってこなかったけど、これほど影響があるとは。
ともかく、perl-5.8.7に依存しているもののうち、perl-after-upgradeで修正の対象になったものはほぼ全て再ビルドした。
急に無くなった。と思ったら、editors/openoffice-1.1にマージされたらしい。UPDATINGに何か書いとけよ。それに、インストール済みのものはどうすりゃいいのか?かなり大物なので、一からビルドする気はしない。
sysutils/portupgradeのリビジョンアップで、DB4を使うのかと聞かれるようになった。現状ではDB4.1がインストールされているが、これはnetatalkの要請によるものらしい。どちらも入れるのは嫌なので、従来どおりにした。
perlに依存するものを再インストール後、なぜか$PREFIX/etc/rc.d/apache2.shが更新されていることに気づく。www/apache2は更新対象ではないはず。
ログを見てゆくと、www/wwwstatを更新した際に、www/apacheへの依存性からなぜかwww/apache2のインストールから先だけが再度行われている。なぜこんなことが起こるのかは不明。大体、www/wwwstatがなぜapacheに依存するのかも納得していない。
研究室のエアコンが故障したままであるが、今日になってやっとダイキン工業から修理に来た。と思ったら、故障箇所を確認し、施工した販売店へ修理連絡を行って帰ってしまった。修理の依頼は販売店を通して行ったが、そのせいではなく、施工時の室外機への配線部分で漏電しているのが故障の原因で、それは販売店の作業箇所だからだろう。
ともかく、しばらくはこのサウナ状態が続くことになる。何も考える気力がわかない。
しばらく更新しないで放っておいたが、久々のmake worldに伴って更新した。気をつけなければいけないのは、PREFIXが変更され、Xのアプリケーションとして扱われること。このせいで、設定ファイルのパス、起動時のスクリプトのパス、及び各仮想マシンの設定ファイル中でのvmwareへのパスを書き換えないといけない。
設定ファイルについては、最初は/etcから/usr/local/etc/vmwareにSymLinkを張っていたはずだが、アンインストール時に/etc/vmwareを残したために、あたらなSymLinkを/usr/X11R6/etc/vmwareに張ることができず、その結果、/usr/X11R6/etc/vmwareにconfigファイルが存在しないこととなった。これは今回きりだろうから、手で修正。
起動時のスクリプトパスの変更の結果、/usr/local/etc以下をcvsで管理していた方式が使えなくなった。本来は/usr/X11R6以下も/usr/local以下も同じように扱うべきであるが、事実上は/usr/X11R6以下をきちんと使うアプリケーションは少なく、また主にX関係ではetc/等を使うこと自体が少ないので、まだcvsで管理するようにはしていない。また、それよりも困るのは、起動時のスクリプトの実行順で、vmware.shのあとでbindやsnmpd,mrtgを起動したいための細工が使えなくなる。これは起動スクリプトだけを従来の位置に配置することで対処した。
最後に、各VMの設定ファイルはそれぞれ書き直して回った。
なお、vmware2のビルドの際、前のリビジョンまでは発生しなかった、このトラブルが発生し、再起動するまできちんと動かなかった。なぜだろうか?
先月末に納付した住民税の額が正しかったか、計算してみる。
府民税は正しかったが、市民税は何故か自分で計算したほうが100円だけ低い金額になる。理由は全くわからない。騙されている気がする。
新聞やニュースで騒がれているが、とあるハッチ(BL12?)で爆発事故があったらしい。何でそれがニュースなのだろう?
ニュースを見ていると、さかんに「放射能漏れはない」といっているが、もしかして放射光が放射能と同じようなものだと考えているんじゃないか?とってもイタイ。
(7/15追記)なお、当日に隣のハッチでいた人に話を聞いたところ、爆発自体は全くたいしたことはなかったらしい。Be窓があったのが騒ぎの原因じゃないか、とのことだった。
今年もまたまたTBS系で放送するらしい。そろそろCMをはじめている。
選手へのアホみたいなネーミングをまた行っているが、TBSはどういうつもりでやっているんだろうか?見ているほうが恥ずかしくなる。
なぜか昨日は「ステアリン酸+回折角」でのWeb検索によるアクセスが複数回あった。「回折角」ってのが、ねぇ...
ちなみに、アクセス元は繊維学部を持つ某国立大学2校であった。なんか関係あるんだろうか?
昨日からの1日分のapacheのログがやけに多い。調べてみると、特定のアクセス元から、この日記の全ての内容を再帰的にアクセスしていた。検索用のロボット対策で、cgi-bin/以下はアクセスしないでほしいと思い(理由:負荷がかかりすぎるから)、月毎にまとめたものをファイルとして提供しているが、今回のバカはCGIも全てスキャンしていった。当然、CGIへの意味のないリンク(ツッコミ作成など)もたくさんあり、また各日毎の日記へのCGI経由のリンクもあるが、これらも全てアクセスした模様。
どこかのバカがやっているんだろうが、イヤガラセとしか思えない。何とかできないのか?連続アクセスを制限するしかないのだろうか?
なお、アクセス元は、「p1165-ipbf40marunouchi.tokyo.ocn.ne.jp」だった。たぶんこれだけでは、プロバイダに問い合わせをしない限りは何の情報にもならない。犯罪ではないので無理だろう。でも犯罪的。
WinXP SP2から、ポップアップブロックが行われるようになっているが、当初はファイルの自動ダウンロードが軒並みブロックされていた。ところがそれでは不自由なのか、Microsoftやその他のサイトでのファイルダウンロード時には、小さなウィンドウがポップアップで開き、自動ダウンロードが始まるようになってきている。これって、ポップアップウィンドウが開いていることに変わりはないと思うんだけど、何かチェックをすり抜ける方法があるという事なんだろうか?だとすればポップアップブロックに何の意味もないことをMS自身が認めたことになるが。
Apacheのログに、URIエンコードされてはいるものの、ブラウザ名とは思えない日本語が記載されているものがあった。銀行名と口座番号等で、Googleで検索するとどうもワンクリック詐欺に使われている口座らしい。
どういう経緯でこんなのをUserAgent名に指定したのか、全く不明。
一応、ログを書いときましょ:
「nttkyo210087.tkyo.nt.ftth.ppp.infoweb.ne.jp - - [06/Jul/2005:21:53:32 +0900] "GET /icons/back.gif HTTP/1.1" 200 216 "http://66.102.7.104/search?q=cache:4Xj4BrX_UwEJ:polymer3.scphys.kyoto-u.ac.jp../../tdiary/200503.html+Norton+Password+manager+パスワード+確認しない&hl=ja&lr=lang_ja&ie=UTF-8 target=nw" "みずほ銀行志村支店 普通+1980197 タチキタカコ"」
LAN管理側の都合により、IPアドレスを変更した。
サブネットも変わったので、/etc, /usr/local/etc以下で旧アドレス及び旧アドレスのネットワーク部を検索し、該当ファイルをひたすら書き換える。その後、shutdownし、上位ノードへのケーブルを繋ぎ変えて起動。
従来は130.54.56.153だったのを、130.54.55.55に変更した。
ただし、DNSエントリの書き換えがすぐには行われないらしい。仕方がないので、メールの配送を上位のサーバで止め、あとはひたすら待つ。それまではこのサーバへのアクセスもないだろう。
NotePCのFreeBSDを久しぶりにアップデート。ユーザランドとカーネルは、デスクトップ機で作成したものをインストールしたが、portsの更新はめんどくさかった。既に存在しないものもあったり、gnome関連が多かったりで、ひたすら更新を繰り返した。
生命保険の約款を読んでみる。いや、読もうとしたが、あっという間に挫折した。
外交員に何度も見直しをと勧められたので、どんな保障でどんな保険料かを知ろうとしたが、全体を把握するのは無理と悟った。
それでも何とか、提案されたプランを見るうちに、やっと各特約の保障内容と保険料とがわかるようになってきた。
で、結局は見直しせず。
WindowsXP/FreeBSDのデュアルブートマシンで、ブートセレクタにboot0を使っている場合、次に起動するパーティションを指定するにはどうすればいいのか?
FreeBSDからだと、以前にも書いたように、boot0cfgコマンドで操作できるが、Windowsからでは何とかならないのか。MBRを自由に書き換えることが出来れば、何とか希望の動作は出来るが、その方法が分からない。デバイスファイルがあるわけではないようなので、どうすればいいのだろうか...
外部からメンテナンスしたい場合、何とかどちらのパーティションからもブートしたい。電源を入れるのはWOLで出来るし、FreeBSDではSSH、WindowsはVNC/SSHで操作できるので、ブート後は問題ないのだが、あとはブートパーティションの切り替え方法だけなのだが。
[追記]解決策はこちら(2005.7.21)
DVR-K15/SPでDLのDVD-Rに焼いてみようと思う。WinXPのC:\Document and Settingsの自分のフォルダをバックアップしようと思ったが、DVD-R一枚では収まらない。
試しに焼いてみようとして、メディアを買おうとして、値段を見て諦めた。一枚1000円以上は高すぎる...
リガク電機(あ、いまは株式会社リガクかも)の人と合った。大学にくる用があったので、ということで、R-AXISのソフトを書いてこられた方と、担当の営業の人とが来られた。
Webに勝手なことを書いているので警告を受けるんじゃないかと恐れたが、特に何もいわれなかった。
今日、勤務先で雑談している時に、「レントゲン」は正しい発音だと「レンチェン」らしい、という話を聞いた。確かに、広辞苑には「レンチェン」とも載っているらしい。
いったい現地の発音に近いのはどちらなのでしょう?ドイツ語は全くわからない...
5インチベイにつけた吸気用のファンの音がうるさくなった。4月に交換したばかりだが、既に3つのうち2つが止まりかけている。
4月に交換する前のものはそれほどやかましくなかったが、同じく3つのうちの2つが完全に止まっていた。それらは、手で回そうとしても硬くて回らないくらいになっている。仕方がないので、ファンだけを交換することに。
パーツ屋で同じようなファンを2つ購入し、固定用の穴が小さかったのでドリルで大きくしてから固定し、ケーブルを半田付けした。動作を確認すると、きちんと吸気してくれているようなので、使用中のファンと交換した。
京都寺町付近のパーツ屋などでは、なかなか5インチベイ用の適当なファンがない。ずいぶんと前に買って以来、こちらでは見たことがないので、交換したくてもオプションはない。本体は結構南向きの窓際だし、HDD3台で常に動いているので、吸気ファンをつけないわけにはいかないし。
で、一番やかましいのは電源ファンであることには変わりない。
先日アップデートしたのとは別のFreeBSDクライアントをアップデートする。普段は自宅にあるPCだが、先日インストールしたカーネルを作ったのと同じホストと/usr/src, /usr/objをnfsで共有し、make installkernel && make installworld。このとき、カーネル設定ファイルの名前は/etc/make.confで指定。
ところが、全て調整後に再起動すると、ネットワークが使えない。pingも通らない。
原因は、インストールするカーネル名を誤ったため。そのせいで、IPFWが有効になったカーネルがインストールされ、ファイアウォールの設定をしていなかったので全てブロックされていたのだった。
一旦、"ipfw add 1000 allow ip from any to any"してから再度カーネルをインストールしなおし、再起動すれば復活した。
FreeBSD 5.xで、起動時にnfsclientとsendmailでひっかかるホストがある。なんとなく、名前の問題っぽいが、よくわからない。
明らかなのは、nfsマウントしたままでシャットダウンすると、次回の起動時になぜか/etc/rc.d/nfsclientの中のrpc.umntallの実行部分でエラーがでるらしい。確かに、/var/db/mounttabに、シャットダウンする前のマウント情報が書かれているようだ。つまり、なぜかアンマウントされずにシャットダウンするらしい。
原因を推測すると、使用しているサーバとの間はIPsecを使っており、システム側のnfsclientよりは先にportsでインストールしたracoonが終了するためだと考えられる。つまり、nfsclientからアンマウントしようとしても、既にIPsecが使えなくなっているのではないか。
これではまずいので、/etc/rc.confで
ike_enable="YES"とし、racoon_enable="NO"としてから起動してみた。
ike_program="/usr/local/sbin/racoon"
ike_flags="-f /usr/local/etc/racoon/racoon.conf -l /var/log/racoon.log"
ところが、やはり同じところでひっかかる。どうも、ikeの起動よりも先にnfsclientが起動するらしい。
なんか順序がおかしくないか?
なお、sendmailのほうはきちんと起動するようになった。
自宅ではDHCP、大学ではStaticなIP Addressを振っている場合、切り替えがめんどくさい。何か便利なツールがあった気がするが、あいにく覚えていない。
仕方がないので、スクリプトにして置いておくことにした。change_ip.batに引数を与えて切り替える。
以前に壊れかけたHDDから救出したテレビ番組の録画を、自宅のパソコンにコピーする。自宅パソコンをサーバと同じLANに持ってきてFTPでコピーしたが、100Mbpsでの接続にもかかわらず、ダウンロード速度が1.7MB/sec程度しか出ない。IPsecを使っているとはいえ、遅すぎる。
WindowsXPからのダウンロードでは、3.1MB/sec程度だった。こちらもIPsecつき。
IPsecのパラメータの問題だろうか?確かに、鍵交換がかなり頻繁に行われていたようである。
帰宅しようかという頃(20時30分頃)になって、急に左のわき腹が痛み出した。しばらく我慢したが収まる気配はなく、経験のない痛みに不安になる。15分位は歩き回ったりして我慢し続けたが、とうとうだめな気がしたので、近くの病院へ歩いて行った。
ちょっと待たされているうちに大分痛みはマシになったが、医者に見てもらうと、おそらく尿管結石だろうということだった。尿に血が混じっているはずだといわれ、検査したら確かにそうだった。そのまま痛みがひいてきたので、点滴のあとで薬をもらって終了。
痛みが続いたのはだいたい30〜40分だっただろうか。結石が膀胱に落ちると痛みはひくそうなので、医者に行かなくてもどうということはないらしいが、痛みは我慢できないだろうといわれた。次回からは何とか我慢するか。
自分のことで病院に行ったのは何年ぶりだろう...10年以上は行く必要がなかったので、ちょっとあせった。現研究室にはソファの類がないので、苦しくても横にもなれない。人も少ないので、かなり不安。実験室のほうだとちょっと横になれるが、人通りが全くない場所なので、更に不安かも。自宅だとどうだろう...一人身なのを急に不安に感じはじめた。健康だったのがちょっと痛い目にあうとすぐにそんなことを気にし始めてしまう。
治療費は、夜間だったので1万円を仮払いし、預り証をもらった。実際にはいくらくらいなんだろう?病院に慣れてないと、この点も全く検討がつかない。あ、保険証ももってないんだった...
いまどき、NFSで共有するのはどうなんだろう?
一番心配なのは、アクセス元のホストのアドレスだけでマウントの可否を決めるので、誰かが勝手に正当なホストのアドレスを名乗ってマウントするリスクを避けられないことだと思う。これって、今でも他にいい方法はないのだろうか?
運用上は、アクセス元のホストとは常にIPsecでないと接続させないようにしているので、IPsecの事前共有鍵が漏れない限りは勝手にアドレスを名乗ってもマウントできないようにしている。しかし、常にIPsecを強制するのは難しいし、ホスト数が増えると管理上の問題も増えるだろう。今の流行は何なのだろうか?
昨日submitしたデータが、discidのcollisionでrejectされた。discidというのは、各CDの各トラックの演奏時間と曲数などから計算で求めているらしい。つまり、ユニークである保証は無いことになる。計算アルゴリズムを見ると、2バイト目の上位4バイトが事実上常に0000か0001であること以外は、4バイト分の値が取れると思うのだが、同じジャンル内でそれほど衝突が起こる理由はよく判らない。もっと一般的なハッシュなどにすればよいと思うのだが、過去のデータは変えようがないのだろう。
4月に移った新しい部屋は、ケータイの電波の状態が今ひとつよくないらしい。かかってきても出たらすぐに切れてしまう。そのときは表示がアンテナ0本になる。平日の昼ならすぐ外に出られるが、夜間休日はそうはいかない。
cvsupでdoc-allを更新したあと、make installすると、/usr/doc/ja_JP.eucJP/man/man1/logins.1.gzがない、といってエラーになった。logins.1は最近出来たようなので、make時に抜け落ちたようである。
一旦make cleanしてから再度make installすると、きちんと作成されたようだ。つまり、make時にはきちんと依存性を見ていないということになる。
なお、このlogins.1.gzのファイルは腐っているらしい...
昨日から、膀胱の奥というか、肛門のちょっと中くらいの場所に、痛みを感じる。特に座っていると気になる。これって、結石のせいだろうか?まだ排泄された気配はないし。
WinXPにQEMUをインストールしてみる。目的は、別パーティションのFreeBSDを再起動せずに使うこと。
SoftwareDesign誌7月号の記事を元に、ダウンロード先を探すが、freeoszooはなぜか腐っているように見える。とりあえず使ってみたいので、QEMU on Windowsからダウンロードし、ついでにQEMU Managerもダウンロードした。そして、QEMUのオリジナルサイトでNetBSDのMinimum版のイメージをダウンロードし、QEMU Managerに登録して使ってみる。
とりあえず起動し、ブートシーケンスが見えるが、途中で(たぶんNetBSDの)エラーで止まり、シングルユーザで起動したような状態になった。やはり動作確認だけだった。
さて、このままWindowsの世界に戻ろうとしたが、なぜかCtrl+Altが効かない。Ctrlキーを入れ替えているせいかとも思うが、替わりにCapsLockでもだめだった。仕方がないので、Windowsキーを押してWindows側にフォーカスを移し、マウスを取り戻した(?)。
FreeBSD 5-STABLEで、MPEG2のビデオを見ようとする。mplayerをインストールし、再生してみたが、すぐに"/dev/dspがない"というエラーで止まる。調べてみると、起動時にサウンドデバイスが認識されていない。思い起こすと、カーネルをきちんと作成しておらず、別のPCへインストールしたカーネルをそのまま使ったせいで、正しいデバイスが選択されていなかったためらしい。
まず、
kldload /boot/kernel/snd_driver.koしてから、
cat /dev/sndstatして、どのデバイスが使われているかを確認し、それを起動時にロードするように/boot/loader.confに「snd_snd_t4dwave_load="YES"」と書き込んだ。これで無事に再生できることを確認した。
ただし、再生のコントロールができないので、別のソフトを使う方がいいだろうか。
続いて、WindowsXPでIO DATAのmAgicTVを通して撮ったビデオ録画を再生してみる。mAgicTV 5.0LEでの録画ファイルは、MPEG2のファイルとして再生できることをWindowsで確認しているので、まず
mount -t ntfs -r -o -C=eucJP /dev/ad0s3 /win2として、書き込めないようにしてマウントし、次にファイル名を引数に、mplayerを起動した。ただし、長い日本語のフォルダ名を含むので、コマンド行が乱れないように注意しないといけない。
試しに、長時間モードで録画したのを再生してみたが、画面中央にきれいに表示され、ちょっとカンゲキ。
最後に、mplayerのフロントエンドとして、multimedia/gmencoderをインストールしてみた。これで操作感はかなり良くなる。ほとんどWinDVDなどと変わらない。日本語のファイル名もきちんと扱えて、かなりいい感じだった。確認のために、30分の録画を見てみたが、CM部分の早送りなどもそれほど不自由を感じない。全画面ではちょっと扱いにくいが、コントローラを表示して標準サイズ画面では、十分に使えるものだろう。
PoPToP+pppのVPNサーバをWindowsから使っているが、FreeBSDからも使ってみたい。外部からだと、SSH以外で平文パスワードを避けるのはめんどくさいので、PPTPを使いたいと思う。
UNIX Magazine 2004年8月号を参考に、FreeBSDクライアントにpptpclient(net/pptpcleint)をインストールした。/etc/ppp/ppp.confを編集し、pptp servername tagとして接続したところ、そのまま応答がなかったが、数分したら終了した。どうも、その間はきちんと繋がっていたらしい。バックグラウンドに回るわけではないので、注意しないといけない。
さて、接続先へはきちんと繋がったが、そこから先へは繋がらない。念のために確認すると、Windowsからでも同じだった。サーバ設定の問題かも。サーバがFreeBSD 4.xの頃にきちんと使えることを確認したはずだったが、勘違いだったのか?きちんと/etc/rc.confでgateway_enable="YES"となっているし、実際にgatewayとして働いているのに。
某団体へ、クレジットカードで寄付をする手続きをした。しかし、実際には、クレジットカード経由ではなく、カードの決済口座から、カードと同じ日に引き落としをするらしい。クレジットカードにすると、残高がなかったりした場合にも強制的に徴収する形になるため、それを避ける目的であると思われるが、カード会社は個人の決済口座の情報をそのような形で別の団体へ教えてもいいのか?これって、個人情報の保護の観点からはかなり問題だと思うけど。
過去に何度か言及し、2005.7.10にも書いた件であるが、一応の解決策を。
WindowsXP/FreeBSDのマルチブート環境で、boot0をMBRにインストールし、ブートするスライス(パーティション)を切り替えている。次に起動するスライスは、標準では前回の起動スライスになるが、もちろん起動時に選択できる。ただし、リモートからの接続時(ssh等)には、起動時のタイミングでは変えることはできない。FreeBSDからならば、boot0cfgを使ってMBRを書き換えて次の起動スライスを指定することができるが、WindowsXPからこれができるだろうか?
boot0は、先にも書いたようにMBRにインストールされており、どのスライスから指定するかをMBR内に記録している。よって、そこを書き換えれば、次の起動スライスが指定できるはずである。通常、WindowsXPからは、ディスクへのRAWアクセスはブロックされているらしく、過去のWindows/DOSで使用されてきたアプリは使えないものが多いらしい。また、boot0用のWindowsソフトは(知る限りは)無い。
そこで、何とか書いてみた。boot0cng.zip。といっても、主なソースはFreeBSDのboot0cfgからもらっている。その機能を絞った感じ。ソースコードはこちら。
要は、WindowsXPからRAWディスクを扱う方法であるが、Microsoftのサイトによると、ファイル名としてドライブを"\\.\PhysicalDriveN"の形で指定すればいいらしい(Nはディスク番号)。あとは権限さえあればファイルとほぼ同等に適当に扱えるようである。
Windows(DOS)のツールを書いたのは初めてで、ちょっと戸惑いも。普段はほぼANSI Cしか使っていないので...低水準入出力なんて、あんまり縁がなかった。
上記のプログラムを書く過程で、MBRを読み出した際の実際の読み出しバイト数をread()の戻り値で確認したところ、142バイトしかない。MBRは512バイト分読むように指定しているので、何かおかしい。
ところが、先に練習でMBRを読み出して(戻り値を確認しないで)表示するコードを書いたが、これはきちんと表示される。つまり、きちんと読んでいるのに、戻り値がおかしい、ということのようである。
原因は、open()時に、きちんとバイナリアクセスモードを指定しなかったためらしい。O_BINARYを指定してopen()すると、きちんと読んだバイト数が戻ってきた。
2005.7.1で書いたように、lang/perl5に依存したものは全てビルドしなおしたつもりだったが、依然perlがらみで他のportのインストールに失敗する。今回はmisc/help2manでエラーとなった。/usr/local/lib/perl5/5.8.6/mach/Config.pmがない、というものだった。
結局、/var/db/pkg/*/+CONTENTSに"5.8.6"が残っているものを全て探して再ビルド、再インストールしたら、うまくいった。再インストールだけではだめだったので、きっとビルド時に集めた情報が作業ディレクトリのどこかに残っているのだろう。
2005.7.19に書いたように、xdm経由でログインすると、wtmpに2回分の履歴が残る。FreeBSD-users-jpで質問したところ、同じ症状にはならない、という人が一人いただけで、特に誰も困っていないらしい。
その方の指摘により、本来、xdm経由のログインではwtmpに何もログは残らないものであることを思い出した。つまり、今までの履歴は、実はxdmの設定でsessregを使って記録させていたのだった。もうずいぶんと昔にそのような設定をしたことが、記憶の隅にかすかに残っている。たしか、sessreg自身、XFree86に含まれていなかったような記憶がある。どこかからsessreg.cをもらってきて、xdmのリソース指定を書き換えた記憶がある。特に、HP-UX 9.03でも同じことをしたので(ただし当然XFree86ではない)、記憶には残っていた。が、この件と結びつけることが出来なかった。いや、まさか未だにxdmでのログインがwtmpに残らないのが正常だなんて思いもしなかったので...今回の修正(pam.d/xdmでpam_lastlog.soを使う)で、やっと普通になったのかも(と言い訳する)。
2005.7.18や2005.7.23に書いたように、PoPToP+pppでVPN用のサーバを作った際、クライアントから接続後に、LAN上のホストにアクセスできない。最初はFirewallやnatを疑ったが、サーバ自身には(LAN用のローカルアドレスで)アクセスできるので、関係ないはずである。
tcpdumpでパケットのやり取りを調べると、tun0上では何も怪しい動きはない。
ところが、LAN用のインターフェイス上では、クライアントからのLAN上のホストへのアクセスに対し、パケットはきちんと出て行っているが、その直後にターゲットのホストからクライアント側のVPNのアドレスへのarp要求が出ており、それに誰も答えないままになっている。つまり、サーバ上でのゲートウェイとしての機能がおかしいのではなく、きちんと代理arpを行っていないのが原因である。確認のため、サーバ上で
arp -s 10.1.1.10 00:xx:yy:00:zz:ww pubとしたら、きちんとアクセスできる。
(10.1.1.10はクライアントに割り当てたアドレス、
00:xx:yy:00:zz:wwはサーバのLAN側インタフェースのMACアドレス)
代理arpを使うには、/etc/ppp/ppp.confに"eneble proxy"を書けばよいと思うのだが、これは既に指定してある。それなのに、きちんと動いていないように思える。
念のため、"set log All"してサーバ側のログを見てみたところ、proxy関係のログが現れない。接続時(起動時)には、ppp.confのエントリを読む過程で、きちんと"enable proxy"が読まれていることは分かったが、実際の設定時にデバッグ用のルーチンから表示されるべきログが残っていない。ところが、何故か接続解除時にそのログが残っている。どうも、きちんとproxy arpの機能を働かせていないことが原因ではないだろうか?
Access2000でとあるデータベースを操作している際、文字列を一定のルールで修正したくなった。式ビルダで見ても、関数は説明もないのでよく判らない。このような時は、Visual Basicのヘルプを見ないといけないらしい。
さて、目的の機能を持つ関数は見当たらなかった。半角文字列を読んで、全て小文字にするとと共に、記号などを特定の文字に変え、スペースは"_"に変えたい。また、多すぎる"_"は切り詰めたい。そのままでは無理そうなので、関数を書くことにした。実はOffice関連のソフトでマクロなどを書いたこともなく、Visual Basic自身はかつて戯れにいじったことがある程度なので、全く何もわからない。
適当にネット検索しながら、リファレンスをひきつつ、何とか必要な関数を作った。行数はわずか70行弱であるが、結構くたびれた。途中で無限ループを作ってAccessを殺すことになったりもしたが...
仕事先に行ったら、勤務表に別の人の名前が入っていた。あわてて事務に確認すると、担当者が休みらしく、よくわからないということだった。
結局、名前が載っていた人は来ず、事務方の書類作成上のミスらしいと思われるが、一時はこちらの間違いかとあせってしまった。わざわざ大阪まで行っているので、勤務なしですごすごと帰るのはあまりにバカらしいと思ったが、こちらの間違いではなくてよかった。
散髪に行ったら、耳の後ろ辺りに円形脱毛症があるといわれた。ちょっと落ち込む。
渡辺美里の西武ドームV20のチケットが届く。席はアリーナ3塁側B7-165だった。たぶんそんなに悪くはない席なのだが、何せ行けないことが分かっている...なんかもったいないけど、仕方ない。
誰かほしい人があれば、定価で譲ってもいいけど...ヤフオクにもたくさん出ているので、あまり希望者もないか。
いつもは実家から米をもらっているが、夏場は虫がわくので、少量ずつ買うことにした。安かったので備蓄米を買ってみた。なんとも美味しくなかった。
今まであまり米の味を気にしなかったが、しっかりと味の違いを感じてしまった。あまり味にうるさいほうではないと思っていたが、ご飯はどうしても気になる。
そういえば、生協食堂のご飯はまずい。これも誰も賛同してくれないらしい。
以前に、当日中の再配達の連絡受付を20時までに延長する、と発表し、左京郵便局もそれに従っていたはずだが、先月にふと気づいたら、19時までに戻っていた。延長発表時は大々的に行っておいて、すぐにまた戻したことになる。やっぱり郵便局。