2001-12-01(土) 6781歩+500m [長年日記]
■ 本日のハンティング
tDiaryのナビゲーションボタンは、たぶん1.3系のeRuby拡張で自由にできるようになる……んじゃないかな。「ツッコミ」という言葉は、確かに変更してる人が少なくないのはわかってるんだけど……変更可能にできる……かな? URLの自動リンク化なんかも、記述形式を選べるようになればそういうクラスを書けばいいのでできないことはない、かな。「かな」ばっかり(笑)。
■ VirtualHost(2)
昨日のVirtualHost化で、IPアドレスをifconfigで追加する処理を/etc/rc.localに書いたんだけど、今朝立ち上げたらApacheが起動時にコケている。そうか、/etc/rc.localが動くのはdaemonが立ち上がったあとか。こういう素朴な方法じゃダメなのねん。
「だいたい、Linuxのboot処理って複雑すぎだよ……いやSlackwareならシンプルって聞いたな……」などとぶつぶつ言いながら、/etc/sysconfigの下あたりを探索。/etc/sysconfig/network-scriptsにあるifcfg-eth0ってファイルがすごく怪しい。そうか、/usr/sbin/netconfigの-dオプションでデバイスを指定すればこのファイルができて、勝手に読み込んでもらえると見た。
で、「netconfig -d eth0:0」と「netconfig -d eth0:1」を実行、適切に設定してから(ちゃんとifcfg-eth0:0なんてファイルができてる)リブートすると、バッチリ動いた。あー、想定通りの動きをすると気持ちいいなー。
2001-11-30(金) 8748歩 [長年日記]
■ keychain
職場ではWindows 2000から別のKondaraマシンにsshして仕事をしてる。Windowsでないとできない仕事はあまりないんだけど、MS-Office的ファイルがメールで来るのでしかたがない。で、ログインするたびにssh-addでパスフレーズを入力するのは面倒なので、このkeychainとほぼ同じ機能を実現するスクリプトを~/.zloginに仕込んであったのだ。誰しも、思うところは同じってことか。独立したスクリプトになっていれば他の環境に持っていくのも楽なので、こっちに乗り換えた。うん、こりゃいいや。
■ 本気と書いてマジと読む。
「騎士」と書いて「ナイト」と読む。姉は「姫」と書いて「プリンセス」と読むらしい(嘘)。
かみさんによると、「次夢」と書いて「ジム」と読む子供もいるそうだ(本当)。量産する気だったのだろうか。
■ VirtualHost
supercub.netとこま犬ライブラリにCGIのサービスが増えてきたので、自宅で動作確認するのがちょっと面倒になってきた。URLが違うと動かないんじゃしょうがない。ホスト部分はしょうがないとしても、せめてパスだけでも揃えたい。
というわけで、現在ローカルのドメイン「tada」上で「www」というホストを動かしているのに加えて、「supercub」と「komainu」という2つのバーチャルホストを運用することにしよう。
まずは、新しいIPアドレスを追加。/etc/rc.localに以下の2行を。
/sbin/ifconfig eth0:0 192.168.0.3 /sbin/ifconfig eth0:1 192.168.0.4
同じものをrootになって実行しておく。
続いて、DNSの変更してrestart(略)。
最後に、/etc/httpd/conf/httpd.confを改装。追加した2ホストだけじゃなくて、どうせ自分しか使わないので、www.tadaのDocumentRootも自分のHOMEにしちゃおう。以下の設定を追加。
Listen www.tada:80 <VirtualHost www.tada> ServerName www.tada DocumentRoot /home/sho/public_html </VirtualHost> Listen supercub.tada:80 <VirtualHost supercub.tada> ServerName supercub.tada DocumentRoot /home/sho/public_html/supercub </VirtualHost> Listen komainu.tada:80 <VirtualHost komainu.tada> ServerName komainu.tada DocumentRoot /home/sho/public_html/komainu </VirtualHost>
CGIの設定とかはこれらの外に書いておいてもいいんだな。本当はログも分けた方がいいんだろうけど(同じパスへのアクセスが区別できないから)、まぁいいか。
ここまでやったら、Apacheの動作ユーザ/グループも自分にしちゃった方がいいか?
2001-11-29(木) 8483歩 [長年日記]
■ Bluetooth
今日は小ネタばかりだ。
昨日あんなことを書いたら、こんどはBluetooth内蔵PHSだってさ。くー。これ、以前だれかが言ってたヤツだな。でもDoCoMoなのだ。負けるな〜 >DDIポケ
■ 資格シリーズ
例の資格シリーズの第三段。よかった、知らない人になってる(なんだそりゃ)。しかしなんだ。誰に聞いてもだいたい同じような結論になるような気もするな、この問題。バリバリの資格信仰持ってる人を見つけてくるのは大変だろう。特にリレーエッセイじゃ。
■ ハンティング
店長の日々を捕獲しました(114)。沖縄行きたいな。今なら空いてるみたいだし(笑)。いや、笑い事じゃなくて大変らしいけど。
そういえば、zt日記にまったくアクセスできなくなってしまった。負荷率1000を越えたから懲罰されてんのだろうか。生きてます? >ZnZさん
■ Pook 1.0
1.0正式版が出た。青空文庫形式のルビ対応と著作権保護機構の導入で、読書用DOCリーダとして新時代を拓くような気がする。暗号化に関する議論はとりあえず置いておくとして、新刊本も買えるようになるのは悪いことじゃないかな。でも、高いんだよねー、パピレスって。やっぱ青空文庫だな。久々に何か入れてみよう。
■ erb
erb標準添付運動実施中です。賛同の方はruby-devで援護射撃を:-)
■ BadTrans.B、ワンギリコール
こないだのAlizよりはるかに多いなぁ。同じようなセキュリティホールを使うのに、なんでこんなに違うのやら。つーかSP2くらい当てろ。
というわけで、添付ファイル名のパターンを捕まえて、メールサーバ側のprocmailで捨てるように設定してしまった。この技をおれに使わせたのはHybrisとSircamに続いて3つ目だぜ。しかし、普通のメールで「xxx.MP3.pifってメール受けとっちゃったよ〜」なんて書いてある場合もはじいてしまうのは問題か。いいか、それくらい(かなりいい加減)。
それより腹が立つのが「ワンギリコール」ですよ。なんだよこれ、ワン(英語)ギリ(日本語)コール(英語)って。知能低すぎ。と、ぜんぜん違うところに腹をたてているのであった。……と思ったら、早くも「ワンギリ」って省略されてんな。以前は「ワンコール」つってなかったか?
■ TMail
BadTrans.Bがいくつものメーリングリストに投げ込まれるのを目の当たりにして、自分でメーリングリストサーバを書きたくなった(←かなり飛躍あり)。当然、添付ファイルを削除したりできなくてはいけない。でも、マルチパートのメールを扱うのはいろいろ面倒だ。まぁ、Content-Typeを強制的にtext/plainで上書きするなんつー某MLみたいな技でもいいのだが(笑)。
となるとTMailの出番だな。以前入れてはみたけど、一度も使ったことがないのであった。試しに本文だけ残して他は削除し、非マルチパートに仕立て直すスクリプトを書いてみる:
require 'tmail'
include TMail
m = Mail::load( 'in' )
m.parts.each do |p|
if "text" == p.main_type and "plain" == p.sub_type then
m.body_port.wopen.write p.body
m.set_content_type p.main_type, p.sub_type, {'charset'=>p.charset}
break
end
end
m.parts.clear
open( 'out', 'w' ) do |o| o.write( m.encoded ) end
inとoutを別にしたけど、TMail::Mail::write_backで上書きも可能なんだな。text/plainがひとつも含まれていない場合は未考慮。手抜きとは言え、こんなんでいいのか? 楽チンじゃのぅ。
◆ NT ["500m" というのは泳いだ距離ですか ?]
◆ ただただし [そうです。週末は少なめな歩数だけど他にも運動してるんだぞ、というアピール(笑)]
◆ けんのぼやき [勝手なことばかり申し訳ありません〜(^^; tDiaryならば、定期的に更新できそうです(^^ 今後ともよろしくお願..]
◆ しんちゃん [</coce> うひひ(笑)]
◆ ただただし [え、何のこと? #なんちて]
◆ さかい [こんなのもあります > Linuxのboot処理 http://www.atnf.csiro.au/~rgooch/..]