イ ン タ フ ェ イ ス の 街 角 増井俊之■ どこでもメモ どこでもメモの要件 最近はモバイル / ュビキタス環境で計算機を使う機会が ・データを安全に確保できる。 追加や修正が簡単におこなえる。 ・情報を簡単に参照できる。 ・いつでもどこでも使える。 めのシステムには次のような機能が必要です。 紹介しました。そのときにも書きましたが、メモをとるた 索できるようにする、、コマンドメール " というシステムを ときでも、携帯電話を使ってアイデアなどをメモしたり検 2004 年 3 月号で、歩いているときや電車に乗っている に、以下の方針を立てることにしました。 な場合にも簡単にメモの読み書きができるようにするため といった、さまざまな状況が考えられます。そこで、どん 電話しか使えない ・ PDA は使える ・ PC やインターネットカ吏える 増えたので、 UNIX MAGAZINE 2004.9 手段は用意する。 携帯電話しカ畤っていない場合でも、最低限のアクセス ・ PDA ではデータのサプセットを持ち歩く。 を利用する。 ・インターネットカ駛えないときは PC のローカルデータ 読み書きする。 ・ PC とインターネットが使えるときは Wiki でデータを 3 月号では、コマンドメールを使って拷電話から Wiki 173 PC 上でのメモ管理 1 http://namazu ・ org/-satoru/unimag/l/ います 1 。言錯誤の結果、高林氏は ChangeLog 形式の 号の「 UNIX のメモ技術」という記事で詳しく考察して このような問題について、高林哲氏は 2002 年 1 月 単一のテキストファイルによるメモ管理 のファイルにメモをとる人が多いようです。 用のメモ・アプリケーションを使ったり、つねに同じ名前 ファイル名を忘れることもあるからです。結果として、専 イル名や分類法を考えるのは大変ですし、苦労して付けた メモをとる場合にはあまりうまくいきません。適切なファ 単純なように思えます。しかし、この方法は、ちょっとした 目ごとに異なるファイルを作ってメモを書くのがもっとも ころでは、内容に応じていくつかのディレクトリを作り、項 ると、完璧なものはなかなかみつかりません。一見したと 活用する方法が書かれていますが、いろいろな条件を考え どという文字列が入っている本を読むと、 PC を情報整理に といってよいほど考えられます。題名に、、情報整理術 " な ーロに、、 PC でメモをとる " といっても、その方法は無限 ト上の Wiki データと同期させる方法を紹介します。 今回は、 PC 上で効率よくメモをとったり、インターネッ いろな工夫ができそうです。 るためにどのようにメモをとるかについても、じつはいろ 方、 PC を利用する場合、ローカルなデータとして保存す データを読み書きする方法について詳しく述べました。
今月は、 Mac OS X の UNIX 的な操作の話題について 紹介します。 ・ Mac OS X の UNIX らしさ 巧・ sys. mac. os-x に、「 Opening hidden files/ 隠しファ イルを開く」というタイトルの記事が投稿されました。 れは、 Mac OS X の Finder で、 . " で始まるいわゆる隠 しファイルを表示したり開いたりする方法はあるのでしょ うか、 Terminal から open コマンドを使えは凋けますが、 Finder から直接開ければアプリケーションにドラッグで きるし、そのほうが Mac らしいのではないでしようか、と いう質問記事です。 こ存じのように、 Mac OS は X から UNIX べースの OS となりましたが、デスクトップやメニュー、フォルダな どの外見や操作感は UNIX であることを感じさせません。 そのため、 UNIX OS として使おうとすると逆に工夫が必 要な場合もあり、今回の質問の内容もその 1 っといえるで しよう。 デスクトップと Finder この質問に対して、 Terminal から、、 defaults write com ・ apple.finder AppleShowAllFiIes on ' を実行し、 Finder を再起動するか、面倒なら Mac をリプートすれ ー邸しファイルが表示されるようになる、この設疋変更は 全フォルダに適用される、 Finder を再起動 3- るには Com- mand 十 Option 十 Esc キーを押して、、アプリケーションの 強制終了 " から Finder を選択すればよい、その場合ボタン が、、再度開く " という表示に切り替わるが実際には強制終 了であり、 Finder の状態カ皮棄されてしまうのでお勧め できない、 Mac らしい方法としては AppleScript などを 使って Finder に quit イベントを送るか、 TinkerTool で Finder に cmd 十 Q を割り当てる方法がある、 quit イベ ントは Terminal から、 osascript —e 'tell application ” Finder ” to quit"' を実行することでも送れる、、、面倒な 場合 " はリプートまでしなくてもログアウトしてログイン しなおせばよい、といったフォローがきました。 みるく UNIX MAGAZ 工 NE 2004.9 UNIX 的な実現方法 F ⅲ der のフォルダ・ウインドウ内に、、隠しファイル " を 表示させるには、 Finder そのものの設定変更が必要とな るため、一殳的な UNIX の操作では実現できません。し かし、設定を変更した Finder の再起動は、前述のような Mac OS 的な方法だけでなく、 UNIX の流儀でおこなう ことができます。 Finder の停止には、 UNIX でプロセスを終了させる一 般的な方法である、 ps でプロセスを確認し、 kill コマンド で PID を指定して停止シグナルを送る " カ駛えます。もち ろんこれには Terminal カ琵、要ですが、 Terminal さえ開 いてしまえば、停止だけでなくコマンドラインからパスを 指定して Finder を起動することもできます。ただし、起 動の際にコマンドラインから指定するのは、 Finder のフォ ルダ・ウインドウに表示される、、 F ⅲ der " ではありません。 じつは UNIX のシェルからみるとこれは Finder. app と いうディレクトリになっていて、そのなかに収納されてい るプログラムの実体を指定することになります。 さらに、コマンドラインから単純に Finder を起動する と、そのままフォアグラウンドで稼動し続けてシェルのプ ロンプトが戻ってきません。しかし、 Ctrl 十 z で Finder のプロセスを一時停止して、 bg コマンドでバックグラウ ンド稼動に切り替えることで、その後も Terminal を利用 することができます。 Ctrl 十 Z で一時停止した状態のとき にマウスで各ウインドウを操作しても反応がありませんが、 bg を実行するとすぐに応答カ弡ってくるようになります。 やはり UNIX Mac OS X は Terminal を使わずにいると UNIX べー スであることをあまり感じませんが、今回の話題のように ファイルを表示できるようにしたり、 Terminal からコ マンドを実行したり、 ps でプロセス一覧を表示したり、 kill で停止させたり、パスを指定してアプリケーションを起動 させたりすると、やはり UNIX なのだと感じます。 ・今月の話題から ( 2004 年 7 月 16 日現在 ) Newsgroups: . news. group . news. miSC, questions.fj Subject: [*FINAL* Announce] [CFV] NGMP Revi- sion ( 2004.6.24 ) 巧でニュースグループを作成 / 削除するときの手続きや、 129
連載 /UNIX Communication Notes 図 4 負荷分散装置を多孱爿ヒしたアクセスの土勤勺分散 大阪 負荷分散装置 195 サ 。東京 負荷分散装置 負荷分散装置 第鋼第第第第を クライアント クライアント クライアント 一方、 DNS を使う方法は、 AS を越えたところでも実装 ・クライアントからのアクセスを受けるサーバー できる。これは、 DNS で 1 つのサーバー名に対して複数 サーバークラスタ の A レコードを対応させ、問合せを受けるたびに異なる A の 2 つをいかに分散させるかである。 レコードを結果として返す、いわゆる、、 DNS ラウンドロビ アクセスを受けるサーバーの分散 ン (DNS round robin)" と呼ばれる手法である。複数の A レコードについては、地理的に分散した地にサーバー クライアントからのアクセスを分散させる代表的な方法 を配置すれば、クライアントからのアクセスを分散させる には、次のようなものがある。 ことができる。この手法は、最近は - ヨ殳的におこなわれる ・ anyc ast の利用 ようになってきている。 ・ DNS による複数サーバーへのう攵誘導 クラスタの分散 anycast を利用する方法では、同一の IP アドレスを割り 地理的分散を実現するもう 1 つの要素が、サーバークラ 当てたサーバーを複数用意してネットワークに接続し、経 スタ単位の分散である。これは、負荷分散装置の多段化に 路制御を正しくおこなうことで、クライアント側から糸各 よって実現するケースが多い。図 4 に示したように、地理 的に近いサーバーに誘導する。あるサーバーがダウンした 的に離れた 2 カ所にの例では東京と大阪 ) に置いたクラ 場合には、そこへの糸各は無効になり、トラフィックは稼 スタを指し示すような負荷分散装置を用意し、負荷分散装 動中のほかのサーバーへ誘導されるという便利な機構であ 置の多段化によって分散の度合いを高めようというもので る。この方法は同一の AS (Autonomous System) のな ある。この場合、負荷分散装置間での通信を前述の Eth- かで用いられることが多く、実装は比較的簡単である。図 ernet 転送型でおこなうのは難しいので、通常はレイヤ 3 3 に、 anycast の概念的な構成を示す。ネットワークに接 NAT 型で設定する。 続された 2 台のサーバーが同じ IP アドレスをもっている 状況を意図的に作りだすのが anycast のミソである。そ バックエンド・サーバーの分散 して、図の例では 192.218.1.0 / 30 の糸各をアナウンスす データは、最終的にはバックエンド・サーバーに蓄積さ れば、ネットワーク内での anycast を使う用意ができる。 43 UNIX MAGAZINE 2004.9
連載 / ネットワークとセキュリティ 図 1 iptables の言綻例 # /sbin/iptables —A OUTPUT -p tcp # /sbin/iptables —A OUTPUT —p tcp # /sbin/iptables —A OUTPUT —p tcp ネットワーク上で未使用の IP アドレスを dumnet 用に 割り当てる 運よく囀吏用の IP アドレスがある場合に、それを dum- net 専用として割り当てます。この方法は、すべてのポート —tcp-flags RST RST -s 192.168.12.34 ¯j DROP —sport 80 -s 192 . 168 . 12 . 34 -j ACCEPT —sport 22 -s 192 . 168 . 12 . 34 -j ACCEPT 宛のバケットの内容を入手でき、通常発生するトラフィッ クの景彡響を受けないため、本格的に運用するのであれば、 ちらがお勧めです。 dumnet がバケットを収集する場合には、 dumnet に割 り当てた IP アドレス宛のトラフィックがホストまで到達 する必要があります。そのため、 dumnet を運用するネッ トワーク上のルータで、スタティックな ARP 工ントリを 追加する必要があります。 こでは、 dumnet に割り当てる IP アドレスが 192. 168.12.34 、 dumnet を動かすホストの NIC の MAC ア ドレスが 00 ー 00 ー 01 ー 29 ー be ー ef だと仮定して、ルータ上での ARP 工ントリの設定方法を説明します。 Cisco IOS の搭載されたルータやレイヤ 3 スイッチを 利用している場合には、次のコマンドを入力します ( 誌面 # arp —s 192.168.12.34 00 : 00 : 01 : 29 : be : ef のコマンドを入力します。 *BSD や Linux をルータとして使っているのなら、次 0000.0129. beef arpa router(config)# arp 192 . 168.12.34 - router# configure terminal の都合上、で折り返しています。以下同様 ) 。 56 http://www.insecure.org/sploits/arp ・ games. html 3 ARP and ICMP redirection games 必要です。 arp poisoning を使うのは、その他の手段カ駛 るトリッキーな手法なので、利用する際には十分な注意が poisoning は Man ⅲ the Middle 攻撃の一種ともいえ ス宛のトラフィックを誘導することができます。なお、 arp ⅲ g3 をおこなうことで、 dumnet に割り当てた IP アドレ る arpredir コマンドを使い、ルータに対して arp poison- す。そのような場合には、 dumnet のパッケージに含まれ タティックな ARP 工ントリか轂定できないことがありま 一部のプロードバンド・ルータなどでは、どうしてもス えない場合に限定すべきです。 既存のホストの dumnet を動かす すでに動いているホスト上の、サービスを提供していな いポートで dumnet を動作させる方法です。この方法は dumnet 専用の IP アドレスカ坏要で、すでにサービスを 動かしているホスト上で空いているポートに対するアクセ スを確認したい場合に便利です。 この方法を利用するときは、以下の 2 点に注意する必要 があります。 ・ dumnet が OS の TCP/IP スタックに代わって ACK フラグの付いた TCP バケットを返さないように設定す る dumnet には -N という引数があり、 TCP 接続をエミ ュレートしないポート番号を指定できます。また、 -I 引 数を用いて ICMP ECHO Request に dumnet 自体 カ答しないように設定します。たとえば、 SSH (TCP 22 番ポート ) と HTTP (TCP 80 番ポート ) カ働いて いるホスト上で dumnet を稼動させる場合は、次のよ うにコマンドライン引数を設定します。 # dumnet -N 22 , 80 ーエその他の引数 ・閉じられたポートへのアクセスを受けたとき、 OS の TCP/IP スタックが RST フラグの付いた TCP パ ケットを送信しないように設疋する 通常、サービスを提供していないポートに対してアクセ スがあった場合、 OS の TCP/IP スタックが RST フ ラグ付きの TCP 応答を返します。しかし、 RST が返 されると TCP セッションが切断されてしまう可能性が あります。サービスを提供していないポートが開かれて いるかのようにみせかけるには、そのポートに SYN パ ケットが送られてきても、 RST を返さないようにする 必要があります。 図 1 に、 Linux 上で動くバケットフィルタ iptables の 設定例を示します。このホストの IP アドレスは 192.168. 12.34 で、さきほどの例と同様に SSH と HTTP のトラ フィックは通常どおり扱い、その他のポート宛のトラフィ UNIX MAGAZINE 2004.9
文房具としての 図 12 X サーバーによる自動生成 # XFree86 —configure ( 一瞬画面が切り替わる ) XFree86 detected your mouse at device /dev/wsmouse . PIease check your config if the mouse is still ot operational , as by default XFree86 tries tO autodetect the protocol . Your XF86Config file is /root/XF86Config. new To test the server, run 'XFree86 —xf86config /root/XF86Config ・ new' るときには、このオプションはトラブルのもとになること があります。時間がかかっても -u を付けずにすべて作り なおすことをお勧めします。 ビルドが終ったら、「ユーザーランドのアップデート」の 節で説明したのと同じようにインストールしましよう。も ちろん、 -x オプションを忘れずに付けてください。 # cd /usr/src # . /build . sh —x install=/ Copying set ・・・・・・のところで xbase や xcomp 、 xfont 、 xserver の文字か現れればインストールは完了です。 言綻しよう 最近の X は、設定ファイルがなくても起動する仕組みが 導入されました。しかし、これは XF86Config でいうと ころの、、 Device " セクション、すなわちビデオまわりに関 してだけのようです。 NetBSD ではポインタデバイスと して wsmouse を利用していますが、これをみつけること ができずに起動できません・・ というわけで、設疋ファイルを用意しましよう。設疋フ ァイルを生成するには、自分ですべて用意する ( ! ) ほかに、 以下のツールを利用する方法があります。 ・ X サーバーによる自動生成 ・ xf86config ・ xf86cfg 最初の方法は、 x サーバー自体が自動的にハードウェア 構成を認識して、設疋ファイルを生成してくれるというも のです 8 。 2 番目は、 xf86config というツールを利用して 8 これが可能であれは第定ファイルなしの走」も簡単にできそうですが、ちょっ と眺めたかぎりでは、定ファイルの自動生成と言ファイルなしの走」で は、まったく違うカ式でハードウェアを認識しているようです。 146 生成する方法です。これは図 10 のように、 CUI (Char- acter User lnterface) べースで設疋していきます。最後 の方法は、 xf86cfg9 というツールを利用するもので、 GUI (Graphical User lnterface) べースで設定を進めていき ます。設疋ファイルがない状態で起動すると、図 11 のよ うに X か起動してツールカれます。設定の初期値は、最 初の X サーバーによる自動生成で生成されたものになり、 さらに細かな設定を加えていくことができます。また、す でに設疋ファイルがある場合は、その設疋ファイルを変更 していくことになります。 こでは、お手軽に X サーバーによる自動生成を試し てみましよう 10 。 /usr/X11R6/bin にパスが通っている ことを確認したら、図 12 のようなコマンドを実行してみ てください。一瞬画面が切り替わったあと、そのまま終っ てしまったようにみえるかもしれませんが、心配は無用で す。コメントを見ると、「 /root/XF86Config. new にあ るから試してや ~ 」と書いてあります。言われたとおりに 試してみると・ # XFree86 -xf86config /root/XF86Config ・ new ( 画面が切り替わる ) 図 13 のようになりましたか ? 味もそっけもない画面で すが、これで大成功です。 exit して X を終了し、設疋ファ イルを所定の位置にコピーしておきましよう。 # cp XF86Config. new /etc/X11/XF86Config 9 xf86config と似ていて紛らわしいです 10 といいつつ、私がふだん使っているのは CUI の xf86config だったりし 。でも、計 ます。たんに昔から使ってるからというだけの理由ですが・ 算機を乗り換えるたびに言きを作りなおさなくてはならないので、そろそろ 自動生成にしようかとも思っています。 UNIX MAGAZINE 2004.9
特集 空調障害との闘い しかし、平日夜間や週末、休日などは職員カ材く在のこと 写真 9 スポットクーラーを言 が多いため、空調装置からエラー通知があっても対処のし ようがありません。結果論ではありますが、空調に関する 脆弱性を認識していたにもかかわらず、その監視体制力坏 十分であったといえます。 今回の障害では、ネットワーク機器からの温度工ラーを 保守を担当する会社カ認したのですが、国立天文台の職 員が翌朝に出勤するまで連絡はとれすじまいでした。天文 台側からみれば、機器室内の状況がかなり悪化した時点で 異常を把握したことになり、初動対応に入るのが遅すぎた ともいえます。 用を停止することなく空調装置が増設できそうです。しか この問題については、対応するための人員を常時割り当 し、、、取り払われる壁 " には通信事業者のファイバーを収容 てる体制を整えるという対策が考えられます。しかし、 している MDF ポックスがたくさん取り付けられているた の方法は、コスト面からいって現在の予算の枠組みでは不 め、工事の景はかなり大きくなる可能性があります。 可能ですにれができるくらいなら、おそらく空調の増設 もう 1 つの案は、機器室自体の空調は現状のままとし、 工事をしたほうが安上がりでしよう ) 。 ラックを冷やす装置を新たに導入するという方法です。重 したがって、現時点での解決策としては、監視システムの 要なのは、、機材を冷やす " ことですから、空調装置で部屋全 自動化以外にはないと思われます。たとえば、ネットワー 体や、、窓の外 " まで冷やす必要はありません。そこで、ラッ ク機器室自体の温度監視を自動化します。室内にセンサー クを密閉したうえで、ラッククーラーや熱交換機を用いて を設置し、温度が設定した閾値を超えたら警備室に通知し ラックだけを冷やし、発生した熱は隣室から排気しようと たり、緊急連絡先に電話がかかるなどのシステムを整備す いうものです。 るわけです。こうしておけば、すくなくとも、、知らなかっ 両者のアプローチは異なりますが、どちらも悪くない方 た " というようなことは減りますから、初動対応までの時 法です。現在、双方の長所と短所などをコスト面も含めて 間は短縮できるはずです。とはいっても、本来は、、休み " 検討中です。進展があれば、あらためて紹介したいと思い となっている職員を動かすわけですから、その負担は軽く ます。 はありませんし、連絡を受けても確実に対処できるという それにしても、この暑い夏、本当に乗り切ることができ 保証もありません。 るのでしようか。 空調問題への今後の対策 「ほんまに心配やわあ」 今回の事件は、無理な機器設置と運用、そして管理体制 漏れの修理 の不備などが重なって発生した人災ともいえますが、あま りにも被害が大きかったために、空調環境をみなおすこと さて、 6 月 14 日に冷却水漏れの修理がおこなわれ、 1 カ となりました。 月前の応急修理から完全復旧しました。当日は、修理作業 現在、次の 2 つの案を検討しています。 中は既設の空調の代わりにスポットクーラーを臨時に設置 ・ネットワーク機器室の隣室を活用して空調を増設 し、ネットワークの運用を継続しました。 ・ラックを冷却 設置方法は次のとおりです。まず、ネットワーク機器室 空調を増設する案は、ネットワーク機器室と隣室との壁 のドアを開け放し、写真 9 のように 4 台のスポットクーラ を取り払い、隣室に空調機を増設して冷却能力を高めると ーの送風管を部屋に引き込み、愉気が漏れないようにべニ いうアイデアです。この方法であれば、ネットワークの運 ヤ板で蓋をします。 90 UNIX MAGAZINE 2004.9
文房具としての 図 13 自動生成した言綻ファイルで X を走カ 連載 , 。 6 ちなみに、私の環境では末尾のリスト 1 に示すような ファイルが生成されました。これで、とりあえず X 環境も 利用できるようになりました。設定を変更する必要が出て きても、あとから xf86cfg を利用して簡単に変更できるの で安心です。 pkgsrc でいこう ! さて、やっと NetBSD 2.0 系の環境ができ、文房具とし て使い始める準備カいました ーからいろいろなツー ルをインストールし、立派な文房具に育て上げていきまし よっ。 NetBSD には、アプリケーションをインストールする ための、 pkgsrc" という枠組みがあります。 NetBSD は、 、、より高い移植生をもち、より多くのハードウェア・プラッ トホームで動くようにする " ことを念頭に開発が進められ ています。そして、 NetBSD 上でアプリケーションのイ ンストールを支援するために開発された pkgsrc システム は、いまでは SoIaris や OpenBSD など、他のプラット ホームでも動作するようになっています。表 9 は、現在サ ポートしているプラットホームの一覧です。 pkgsrc を利用したインストールでは、連載の第 3 回で も説明したように以下の 2 つの選択肢があります。 ・プラットホームごとにあらかじめ用意されたバイナリ・ UNIX MAGAZINE 2004.9 ようないくつかの問題点があります。 前者の方法は手軽で時間がかかりません。しかし、次の ・ソースからコンパイルしてインストールする。 パッケージをインストールする。 表 9 pkgsrc でサポートしているプラットホーム Darwin 6.6 / 7.0 / 7.3.0 (PowerPC) Debian GNU/Linux FreeBSD 3.5 / 5.1 / 5.2.1 ( i386 ) lnterix 3.5 IRIX 6.5 (MIPS) IRIX64 6.5 (MIPS) OpenBSD 3.2 / 3.5 ( i386 ) Slackware 8.1 / 9 ( i386 ) Solaris 8 (SPARC)/9 (SPARC/i386) コン / ヾイル・オプション バイナリで提供されているということは、もちろんコン パイルされた状態ということになります。最近の多くのア プリケーションは、プラグインというかたちであとから機 能追加できるものもありますが、古いアプリケーションで はいまだにコンパイル時のオプションで機能を変更したり するものもあります。 旧いかも ? 開発が盛んなアプリケーションは、どんどんバージョン カ止がっていきます。最近では pkgsrc もアプリケーショ ンのバージョンアップにがんばって追随していますが、バ イナリ・パッケージは旧いまま放置されている場合もあり ます。 プラットホーム バイナリ・パッケージは、そのパッケージがコンパイル された工麭竟では動作しますが、違う OS では多くの場合動 きませんし 11 、バージョンが異なるだけでうまく動かない こともあります。また、 NetBSD 用のバイナリ・パッケー ジは OS のバージョンごとにディレクトリが分かれていま すが、 NetBSD-current は日々更新されていくので、バイ ナリ・パッケージは用意されていません。 このような理由があるため、 こでは後者の、、ソースか らコンパイルしてインストールする " 方法で説明を進める ことにします。 pkgsrc のファイルを取得する pkgsrc のファイルを取得するには、 OS のソースファイ ルと同じようにいくつかの方法があります。 11 最近は異なるプラットホームのエミュレーション機能をもつ OS も増えて いますが。 147
連載 / ネットワークとセキュリティ ソー libnet のインストール これで、 libpcap の設疋が完了しました。 # /sbin/ldconfig fig コマンドを実行します。 最後に、共有ライプラリをキャッシュするために ldcon ー # echo /usr/local/lib > > /etc/ld . so . conf % su % grep /usr/local/lib /etc/ld. so . conf リビューションでは、 libnet のコンパイル済みパッケージ トールします。 libpc 叩と異なり、多くの L ⅲ ux ディスト 次に、バケット生成ライプラリである libnet をインス ソースコードの入手 ンストール方法を紹介します。 という手川頁で導入します。今回は、 2. コンパイルとインストール 1. ソースコードの入手 ケージ 2 を利用するか、 は提供されていません。サードバーティーが作成したパッ スコードからのイ config を実行します。 ラメータのままでかまいません。また、必要であれば ld ー libpcap と同じく、コンパイルする際はデフォルトのパ コン / ヾイルとインストール % cd libnet % tar xvzf libnet . tar. gz 展開します。 からソースコードを入手し、これを適当なディレクトリで ・ http://www.packetfactory.net/Projects/Libnet/ まず、 libnet のサイト、 説明します。 でも動作します。ここでは、安定版の libnet 1.1.1 を例に 発版が 1.1.2 ー rc ー 06 です。 dumnet は、どちらの libnet 執筆時での libnet のバージョンは、安定版が 1.1.1 、開 http://dag.wieers.com/packages/libnet/ /sbin/ldconfig # make install % make . /configure 2 UN 工 X MAGAZINE 2004.9 dumnet のインストール それでは、 dumnet をインストールしましよう。基本的 ソースコードの入手 です。 2. コンパイルとインストール 1. ソースコードの入手 な手川頁は、 55 は、次のような方法が考えられます。 を事前に検討する必要があります。おもな運用形態として dumnet を動かすには、どのようなかたちで動かすか dumnet の動作方法の決定 # make install % su % make % . /configure dumnet のコンパイルは問題なく終了するはすです。 libpcap や libnet が正しくインストールできていれば、 コン / ヾイルとインストール うになります。 これで、正しい config. h を使ってコンパイルされるよ % touch config. h. in を入力します。 回避するには、アーカイプを展開した直後に次のコマンド が壊れてしまうことがあります。さしあたり、この問題を を利用しているシステムの場合には、このときに config. h ころが、 Red Hat Linux 7.3 のような旧い autoheader make を実行する際に autoheader が実行されます。と なお、 dumnet 1.0e では、パッケージングの関係で % cd dumnet—l . Oe % tar xvzf dumnet—l . Oe . tgz ます。 からソースコードを入手し、適当なディレクトリで展開し ・ http://tf.rootkit.jp/archive/dumnet/ す。執筆時の最新版は 1.0e です。 下記の dumnet のサイトからソースコードを入手しま
0 図 1 ChangeLog ファイル列 2000 ー 12 ー 09 Satoru Takabayashi く satoru@namazu. org> * src/mksary. c (parse—options) : New option: 2000 ー 12 ー 08 Satoru Takabayashi く satoru@namazu. org> * src/Makefi1e . am (sary-SOURCES) : Simp1ified. —index, ー 1 . テキストファイルをメモに利用する方法を提唱しました。 ChangeLog というのは、もともとはプログラムの開発履 歴を記録するためのテキスト形式で、図 1 のように日付 と変更項目を一定の書式で箇条書きにして並べたものです。 この例ではソースコードの修正履歴カ第杢されていますが、 プログラム開発とは直接関係のない日記やメモも同じ形式 で言杢しておけば、 ChangeLog ファイルやテキストファ イルを扱うためのさまざまなツールカ駛えてメモ管理にも 役立っというわけです。 メモ管理に ChangeLog を使うというアイデアは富士通 の山下達雄氏が考えたものだそうで、現在は多くの人がこ の方式を利用しているようです。山下氏は、 ChangeLog メモを Web ページに変換する「 Chalow 」というツー ル 2 を公開しています。山下氏は、 web 上で Blog に似 た日記ページを公開していますが、これらのページ 3 はす べて ChaIow により生成されたものです。 ChaIow では、 ChangeLog 形式で書いた日記情報を blog ふうのページ として公開できるようになっており、トラックバックやコ メント機能も用意されています。変換されたページを見る と、 ChangeLog ファイルをもとに生成されたとは思えま せん ( tDiary4 のスタイルファイルカ俐用できます ) 。 IT コンサルタントの橋本丿く也氏は、 PC 上でのメモ管理 の要件について以下のように述べています 5 いつも使っているテキストエデイタでなくてはイヤ。 ・メモを作成し終えるまでの総ステッフ。数が少なく、動作 カい。 ・ファイル名を考えたり、題名を付けるといった心理的ハ ードルが低く、面倒に感じない。 ・メモか嘴里せず、再利用力溶易かつ効率的にできる。 2 http://nais.toryto/tools/chalow/ 3 http://nais.to/&yto/clog/ 4 http://www.tdiary・ org/ 5 http://www.ringolab.com/n0te/daiya/archives/001889. html 174 これらの点を満たすシステムを模索した結果、橋本氏も 最近になって ChangeLog/Chalow を導入し、かなり満 足が得られているということでした。 ChangeLog 方式の問点 ChangeLog 方式はこのように多くの人たちに愛用され ていることもあり、私もしばらくこの方法を試していたの ですが、残念ながら私にはうまく使いこなせませんでした。 たしかに、 ChangeLog 方式はメモ情報が一本イヒでき、シ ンプルだという点でたいへん有用です。しかし、複数の計 算機を使い分ける場合や、 PDA や携帯電話との連携を考 えると、どうも最善の方法ではないように思えます。 つねに決まった 1 台の計算機を利用しているのならば よいのですが、状況に応じて複数の計算機を使い分ける場 合には、 ChangeLog ファイルの同期をとる必要がありま す。メモを書いたらかならず CVS などで同期をおこな うようにすればよいのですが、これは忘れることもありま すし、ネットワーク環境がない場所ではどうにもなりませ ん。私自身も、同期に失敗して ChangeLog ファイルを 消してしまったことがあります。また、メモを携帯電話や PDA で読み書きするには、 ChangeLog をなんらかの形 式に変換する必要もあります。こんなわけで、あらゆるメ モを ChangeLog に一本化することは、私には容易ではあ りませんでした。 いろいろな竟でメモをとった場合も、同期などの工夫 をせす、最終的にうまく一本化できる方法があれば、その ほうがよさそうです。メモをとる場面を考えてみると、 オフィスのマシン ・外出中に拷電話 ・電車のなかでノート PC ・会議中に PDA といったように、場所も違えばマシンも違うことが多いの UN 工 X MAGAZ 工 NE 2004.9
InstallShieId 公認カイドブック InstaIIShield DevStudi0 ~ MS インストーラ開発 ~ ( 株 ) ネットワールド / 永瀬晋作、石坂望、相浦裕子著 絶賛 発売中 インストーラ作成ツールの代名詞 sta 翡 Shi 可 d ーの公式解説書 InstallShield は、インストーラ作成ツールの代名詞とも言えるツールです。複数のライン アップがありますが、本書はその中の「 InstallShield DevStudio 9 」という製品の解 説書です。 Microsoft が開発した Windows lnstaller をベースにしたインストーラの基 本的な作成方法から高度なカスタマイズ方法、デバッグ方法まで広範に解説していま す。また、基盤になる Windows lnsta Ⅱ er 技術の基礎についても説明しています。 InstaIIShieId 公認カイドブック InstaIIShieId DevStudio ~ M インストーラ開発 ~ ( 株 ) ネットワールド / 永瀬晋作、石坂望、相浦裕子著 ■第 6 章カスタマイズ■ ■第 1 章 lnstallShieId とは■ カスタムアクション インストーラの役割 VBSC ⅱ pt カスタムアクション s ねⅱ Sh 回 d 製品群 標準 DLL カスタムアクション D Studio の 4 つのプロジェクトタイプ s 旧 cript カスタムアクション st 訓 Sh 回 d 製品の変遷 ダイアログのカスタマイズ 評価版のインストール NT サービス COM サーバの登録 ■第 2 章 WindowsInstaIler とは■ ODBC リソースの追加 ロアイルの変史 アーキテクチャ 環境変数 メリット アプリケーションパス ファイルの関遽付け ■第 3 章インストーラ作成■ 子インストールの呼び出し ローカライズ ようこそアシスタント マーシモシュール プロジェクトアシスタント 依存関係のスキャン ■第 7 章トラカレシューティング■ リリースウイザード パッケージの検証 デバッグ テスト ログの取得 ディレクトエデイタ ・第 4 章プロジェクトの構造■ 問題の切り分け トラブルが発生したときには プロジェクトの設定 コンポーネント ■第 8 章付録ー 機能 マーシモシュール WindOW & ⅲ s ね「サービスのバージョン プロバティ m exec. exe のコマンドラインパラメーター覧 シーケンス instmsi. exe システムの検索 情報の入手 自動登録 ■第 5 章バッチとアップグレード■ File Versioning Rule 3 つの GUID アップグレードのタイプ アップグレードの作成 パッチ トランスフォーム B5 変型版 CD-ROM 1 枚付属 定価 3 , 570 円腿 ) 旧 BN4-7561-4425- X Ne ASCII ・書店および書籍を扱っているパソコンショップでお買い求めください。・品切れの際は書店にてご注文いただくか、通信販売をこ利用ください。 ・通信販売のお問い合わせ先・株式会社アスキーストア電話 ( 03 ) 3499-9300 http://www.ascii-store.com/ 株式会社アスキー 〒 1 60-8584 東京都新宿区信濃町 34 番地ー J 日信濃町ビル電話 08-5362-3300 http://www.ascii.co.jp/