本文へジャンプ

GIDEON STAFF BLOG

FreeBSD 8.0-RELEASE

FreeBSD Release Engineering Team は FreeBSD 8.0-RELEASE を公開しました。

主な変更は以下の通りです。

  • Xen Dom-U、VirtualBox のゲスト/ホスト環境対応。
  • 階層型 jail のサポート
  • NFSv3 GSSAPI のサポート
  • NFSv4 クライアントの実験的サポート
  • IEEE 802.11s D3.03 無線メッシュネットワークと 仮想アクセスポイントのサポート
  • ZFS はもはや実験的ステータスではなくなった
  • USB 関係を全て書きかえ
  • SMP スケーラビリティの改良
  • ネットワークリンク層の改訂
  • MIPS アーキテクチャの実験的サポート

詳細は [http://www.FreeBSD.org/releases/8.0R/relnotes.html リリースノート] を参照して下さい。

起動時に任意のコマンドを実行する

Mac OS X 10.5 以降で起動時に任意のコマンドを自動で実行したい場合、 本来であれば launchd(8) を使用した制御が必要なので /System/Library/LanchDaemons/ 以下に plistファイルを準備する必要がある。
しかし、/Library/StartupItems に コマンド起動用のスクリプトファイルを設置する事により 任意のコマンドを起動できるので、 unix 系のシェルスクリプトに慣れている場合は こちらの方が使いやすい場合もある。

  1. /Library/StartupItems に任意の名称 (ここではサービス名とする)でディレクトリを作成する。
    # mkdir /Library/StartupItems/サービス名
    			
  2. 作成したディレクトリに任意の名称で起動スクリプトを作成する
    スクリプトファイルは サービス名 と同じ名称にする。
    # cat << EOF > /Library/StartupItems/サービス名/スクリプト名
    #!/bin/sh
    
    . /etc/rc.common
    
    StartService ()
    {
    	# サービスを開始するためのコマンドを記述
    }
    
    StopService ()
    {
    	# サービスを終了するためのコマンドを記述
    }
    
    RestartService () { StartService; }
    
    RunService "$1"
    EOF
    			
  3. 作成したスクリプトに実行権限を付与する
    # chod 755 /Library/StartupItems/サービス名/スクリプト名
    			
  4. 作成したディレクトリに StartupParameters.plist という名称でサービスの説明を記述したファイルを作成する。
    # cat << EOF > /Library/StartupItems/サービス名/StartupParameters.plist
    {
      Description     = "サービスの説明";
      Provides        = ("提供するサービスの内容");
    }
    EOF
    			
  5. ファイルの所有権限を root に設定する。
    セキュリティ上の理由から、 ファイルの所有者が root 以外の場合は自動実行されない様だ。
    # chown -R root:wheel /Library/StartupItems/サービス名
    			
  6. 再起動するとサービスが自動で実行される。

ダイエット成功!?

増加の一途をたどっていた体重が、生まれて初めて右肩さがりになりました。

去年の10月に久しぶりに会った友から、 西式健康法を基にした甲田光雄さんの本を紹介されました。
簡単に言えば午前中は食事を採らないブチ断食、 それ以外はできれば玄米菜食というものです。
ダイエット本は数々ありますが、 何と言っても私をその気にさせたのは私の友の変化です。 半年ぶりに会った彼女はかつて見たことない程、 痩せて肌もきれいになっていたのでした!
本も読まずに翌日から実行しましたよ。 私も負けてはいられない、と。

その後序々に体重が減り10ヶ月で7キロ減です。 特にリバウンドの気配はありません。 体重が減っただけでなく、以前より活力が出たように思います。
同じ時期に始めた知人も皆、効果があったそうです。 たくさん本も出ているようなので興味がある方はネットで検索してみてくださいね。

偉大な納豆に感謝

少し前になりますが、 納豆ダイエットで日本中のスーパーで納豆が売り切れるブームがありました。
何かと話題になる納豆にはどれほどすごいパワーがあるのでしょうか。

納豆の効果に抗菌作用があるということは昔から知られていたそうです。
江戸時代の本朝食鑑という本に 「腹中をととのえて食を進め、毒を解す」と記載されているそうです。
納豆に含まれる納豆菌は以下の抗菌作用のあるリゾチーム酵素や、 ジピコリン酵素が含まれているそうです。
リゾチーム酵素は細菌の感染に対する防御能力や免疫機能をもち、 細菌の細胞壁を加水分解して殺菌するので 有害菌を溶かしてしまうすごいパワーがあります。
また、ジピコリン酸も抗菌作用があり、 有害菌 O-157 を抑制するたのもしい働きをします。
加えて納豆菌には、 血液さらさら効果を生み出す不思議なナットキナーゼ酵素を含んでおり、 納豆に含まれるプロウロキナーゼ活性化酵素と連動して 血栓溶解効果をもつようです。
血液の状態をバランスよくするにはとても有効な働きをするそうです。

納豆菌の効果を箇条書きにまとめてみました。

  1. 乳酸菌など有用菌の増殖 
  2. 腸内有害菌の抑制
  3. 上記2項目により、腸内細菌叢のバランスを整える。
  4. 強力なタンパク分解酵素とデンプン分解酵素を生産する。
  5. ビタミンB群を豊富に合成する。

加えて、納豆の原料である大豆に含まれているイソフラボンは、 女性ホルモンを活性化することで、 骨粗鬆症や更年期障害、乳がん等の女性疾患に対する 有効成分であることが判っています。
体にいいサプリメントや薬などが開発されていますが、 これほど体に万能な効果がある自然の食物「納豆」に感謝して 食していきたいと思います。

あの小泉元総理も乗ったセグウェイ

体重移動で前進、後退が可能なセグウェイに乗ってきました。
遊園地アトラクションの一角で有料(お小遣い出して)の体験でした。
5 分間の講習で前進、スラローム、一回転などなど・・・ 原則後退は禁止となっておりましたが、講習のみチャレンジ! その後フリー走行10分間で慣れた頃にははい終了。

「これって販促?」と聞くと。 一般公道は走行不可なのだそうで、 基本的には大型倉庫内や私有地走行のみなのでとのこと。
埼玉のショッピングモールの警備などには使用されているらしいです。
ってことは、「通勤にいいなぁ」と思った私には残念。 しかも、ミリオン宝くじが当たらないと買えない金額だそうで。ムリムリ?!

ということで、二度と乗ることのないセグウェイに乗れた私はラッキーでした。

Eclipse

46年ぶりのビッグイベント

[IMG_5521.JPG]

Camera Canon EOS 40D
Lens Canon EF 70-300 mm F/4-5.6 IS USM
Focal Length 300 mm
F Number 18.0
Exposure Bias Value +2/3 EV
Exposure Time 1/500
ISO Ratings 500

リンゴの木村さん

木村さんのリンゴは、腐ることなく枯れるそうです。
NHK「プロフェッショナル仕事の流儀」で紹介されご存じの方も多いと思いますが、 青森県中津軽郡の木村秋則さんは、 無農薬、無肥料の自然栽培でリンゴ作りをしています。
私自身この話を聞いてすごい発見だなと感心していたところ、 たまたまコーヒー栽培で自然栽培を実践しているという記事を発見しました。 ブラジル・サンパウロ州にある農園を営むジョン・ネットさんです。

2人の話には共通点があります。
自然界には天敵もいれば、お互いに助け合って生きる共生もあります。 ある種の虫が増えすぎるとそれを食べる天敵が現れる。 このように自然界には絶妙のバランスが働きますが、 こと収穫を目的とした畑の場合は同じようにはいきません。
畑の中でこの自然のバランスを崩さないよう人が手助けをすること。 また自然界の生物がうまく生存できる環境を提供しているのが 「ふかふかの土」なのだという原点です。
更に木村さんとジョンさんとの深い共通点は、 自然の恵みに感謝する「ありがたい」という気持ちでした。 大雨の日も日照りつづきの日もあることでしょう。
それでもお2人の話からは、 自然を大切にしたいという強く優しい思いが伝わってきました。

アジサイ

誕生月が6月のせいか昔から紫陽花の花が好きです。
薄い青色から次第に濃い青色になり、その後赤みを帯びた紫色に変化していく。
そんな移り変わる様を楽しんでいます。

[hydrangea.jpg]

クライムウェア

2009年6月3日(水)当社サーバで異常な数のウイルスが検知された。
すべて「トロイの木馬」と云われるウイルスで、 世界の主要なボットネットからの配信であった。 同様の報告をお客様からも頂戴したので以下に特記する。

不正かつ有害な動作を行う意図で作成されたソフトウェアプログラムの総称として 「マルウェア」という言葉がある。 このマルウェアに「クライムウェア」という新たな分類が加わった。 悪意のあるソフトウェアの中でも犯罪につながる可能性があるソフトウェアを意味する。
最近になって検出されたマルウェアの 90% 以上が このクライムウェアであることが驚異である。 多くはトロイの木馬と呼ばれるソフトウェアで、 キー入力の履歴を記録するもの (キーロガー)、 銀行サイトの利用時にスクリーンショットを撮るもの、 他の悪性コードをダウンロードしてくるもの、 ハッカーからシステムへのリモートアクセスを可能にするもの等々がある。
これらクライムウェアに共通なのは、 機密データ (パスワードや暗証番号など) を「盗み」、 その情報を犯罪者に送信する点である。 サイバー犯罪者たちは、手に入れた機密データを悪用して 一般の利用者から金銭を盗み出す。 クライムウェアの目的は、金銭を奪取することであり、 利用者のデータを破壊するような派手な動作はしない。 そのため動作している事実がわかりにくく、 利用者はまさか自分のパソコンがクライムウェアに感染しているとは想像だにしない。
ネットでのショッピング等で利用者が入力した機密情報を、 サイバー犯罪者に悪用された例などが報告されているが、 犯人を特定することは非常に困難である。 このようなクライムウェアに関して利用者ができる対策としては

  1. 主要な通信ポートのみ外部へアクセスができるように制約をおこなう。
  2. アクセスログなどを見ながら、 クライアントが不明な任意のIPアドレスにアクセスをおこなっていないかどうか監視する。
などが有効である。

みちくさ

この時期は、道ばたに咲く花々を眺めながら散歩するのがとても楽しい。
ついつい花の咲いている道を探しては、 未知な道を歩いている自分に気付くことがある。
そうか、みちくさ=道草とはそんなことかなあと思う。

道ばたに生えている、フキ、ヨモギ、ツクシ、ミョウガなどを見ては、 ついつい食べ頃とその食感を想像してしまうのは食いしん坊の本性からだろう。
子供の頃、学校から直接帰宅することは希で、 何か面白そうなものを探してはいつもみちくさしたものだ。
神社のザクロの実がなれば木に登って取って食べたりした。 学校帰りのみちくさこそが毎日だった。

歳を重ねてくると、 松尾芭蕉の「奥の細道」は芭蕉が不思議な力「そぞろ神」に誘われ、 ついついみちくさに出かけたくなったのではないかと思えるようになった。
遠大な旅を味わう余裕のない自分にとっては、 せめてものみちくさがプチ旅かもしれない。

The myth of unix security

[http://www.viruslist.com/en/weblog Kaspersky 社のブログ] によると、 FreeBSD や Linux をターゲットとしたマルウェアが発見されたとの事です。

It’s often argued that *nix systems are secure, and there are’t any viruses or malware for such systems. This hasn’t been true for a long time, as two recently detected malicious programs prove.
Kaspersky 社の Blog より

超訳してみると、 『多くの場合、unix システムはセキュリティを確保しているので、 ウィルスやマルウェアはありえないと主張されていた。 これらの事は既に真実ではない事が最近検出された2種類の悪意あるプログラム により証明されている。』みたいな事が言われています。
今回は単なる perl スクリプトと FreeBSD や Linux 上で実行可能な 暗号化された perl スクリプトの 2 種類のマルウェアが発見されたらしく、 それぞれ迷惑メイルを送信する「ボット」や、 セキュリティソフト風の怪しいソフトウェアを販売するための 詐欺サイトを宣伝・販売するウェブサイトを構築してしまうそうです。

Windows に比較すれば FreeBSD や Linux の方が多少は安全ですが、 それはあくまでも相対的な比較においての安全であり 絶対的に安全という訳ではありません。 そんな事はちょっと考えてみれば常識だと思うのですが、 世の中には「Linux だから安全」という様な事を妄信している人もいる様です。
システムにセキュリティホール(脆弱性)が存在する可能性がある限り、 『セキュリティに対して万全』とは言えません。
日頃からセキュリティ情報には注意を払い、適宜対策を実施することが肝要です。

皐月

語源由来辞典によると、

皐月は耕作を意味する古語「さ」から稲作の月として「さつき」になった。
漢字「皐」には「神に捧げる稲」という意味があるため、 皐月が当てられたと思われる。
と記載されています。

花木のさつき(皐月)が陰暦の5月に咲くので皐月と命名されたようです。
語源を知らない私の感覚では、 花木の皐月(さつき)が花を咲かせるので 5月は「さつき」と云われるようになったと思いこんでいました。
語源を知らないと本当の意味がわからないのも事実ですが、 その時代で流行語のように勝手に語源をでっちあげて、 語源がいつの間にか書き換えられているような気がします。

語源の話ではないですが、 私が子供の頃(力道山全盛の頃)は、 シャツをズボンから出していると 母から「みっともない!」と思い切り怒られました。
ところが最近ではシャツをズボンの中にきっちりしまい込んでいようものなら、 妻と娘から即座に『チョーダサイ!!』と避難轟々(ごうごう)です。
時代が勝手に変遷しているだけなので私個人には何ら関係ないことですが。 とはいえ毎度疑問を感じます。

正しいマナーの辞典を作っても守られないのでしょうね。

FreeBSD 7.2-RELEASE

FreeBSD Release Engineering Team は FreeBSD 7.2-RELEASE を公開しました。

主な変更は以下の通りです。

  • 仮想メモリサブシステムによるアプリケーションメモリの スーパーページへの透過的使用をサポート
  • BTX ローダの改良、いくつかの問題点の修正
  • ciss ドライバの改良
  • sdhci ドライバの追加による class 8 SD ホストコントローラのサポート
  • NetBSD から Bluetooth ネットワーク管理用の btpand デーモンが移植されました
  • jail の複数 IPv4/IPv6 アドレスサポートなどの改良
  • KDE 4.2.2、GNOME 2.6 が採用されました
  • DVD インストールイメージの配布が開始されました

詳細は [http://www.FreeBSD.org/releases/7.2R/relnotes.html リリースノート] を参照して下さい。

ライスペーパーを使って

最近のお弁当ブーム、景気の悪化による食費抑制にメタボリックシンド ローム対策が相乗効果を成したのか?
お弁当の売り上げは伸びているらしいです。
ある会社ではお弁当部なるサークルがあり、男女、既婚未婚 問わずお弁当作りに勤しんでいるようです。

お弁当に野菜を入れるのって、入れる側も食べる側も意外と面倒ですよね・・・ でも、やっぱりお野菜は健康の為にも入れたいし。
そこで、簡単一品にライスペーパーがお役に立ちます。

水戻ししたライスペーパーにハム、お野菜になどを巻き込んで ドレッシング(トロミありがGOOD)をかけちゃう。
あとはくるんで一口大にカットしてしまえばかさばらず、 食べるときも丸ごとぺろりときれいにお口の中に!!

残り物を何でも包んでしまえば、残り物整理にもお役立ち!! 前の晩の野菜炒めや、サラダの残り葉などなど。

そうそう、急なお客さんの時にもライスペーパー料理! ちょっとカッコがつきますよ(笑)

POSIX.2 標準仕様のシェルによる変数展開

シェルスクリプトを作成する際に シェル変数に値を代入したり参照したりする事は頻繁に発生するが、 シェル変数の展開にも便利な使い方がある。
basename (1) や dirname (1) と同様な動作が シェルの組込みとして利用できるので資源の節約にもつながり、 上手に利用すると可読性の高いスクリプトが作成できる。

機能一覧

${parameter:-word} デフォルト値への置換
${parameter:=word} デフォルト値の代入
${parameter:?[word]} 値の検査とエラー
${parameter:+word} 代替値の使用
${#parameter} 文字列長の取得
${parameter%word} 最短後置パターンの削除
${parameter%%word} 最長後置パターンの削除
${parameter#word} 最短前置パターンの削除
${parameter##word} 最長前置パターンの削除

デフォルト値への置換

  • ${parameter:-word}
  • ${parameter} が NULL の場合 word に置換される。

    $ echo ${foo}
    
    $ echo ${foo:-FOO}
    FOO
    $ echo ${foo}
    
    $ foo=BAR
    $ echo ${foo:-FOO}
    BAR
    			

デフォルト値の代入

  • ${parameter:=word}
  • ${parameter} が NULL の場合 word に置換され、 かつ parameter に代入される。

    $ echo ${foo}
    
    $ echo ${foo:=FOO}
    FOO
    $ echo ${foo}
    FOO
    $ echo ${foo:=BAR}
    FOO
    			

値の検査とエラー

  • ${parameter:?[word]}
  • ${parameter} が NULL の場合 word が指定されていればその値を、 指定されていない場合はデフォルトの値を表示し、 非対話実行されているシェルをエラー終了させる。

    $ echo ${foo}
    
    $ echo ${foo:?value not set}
    value not set
    			

代替値の使用

  • ${parameter:+word}
  • ${parameter} が NULL 以外の場合 word に置換される

    $ echo ${foo:+FOO}
    
    $ echo ${foo}
    
    $ foo=BAR
    $ echo ${foo:-FOO}
    FOO
    $ echo ${foo}
    BAR
    			

文字列長の取得

  • ${#parameter}
  • ${parameter} の文字列としての長さに置換される

    $ echo ${foo}
    
    $ echo ${#foo}
    0
    $ foo=FOO
    $ echo ${foo}
    FOO
    $ echo ${#foo}
    3
    			

最短後置パターンの削除

  • ${parameter%word}
  • ${parameter} の右から word で示されるパターンの最短部分を削除する

    $ bar=/foo/bar/baz
    $ echo ${foo%/*}
    /foo/bar
    $ foo=foo.c
    $ echo ${foo%.*}
    foo
    $ foo=foo
    $ echo ${foo%.*}
    foo
    			

最長後置パターンの削除

  • ${parameter%%word}
  • ${parameter} の右から word で示されるパターンの最長部分を削除する

    $ foo=foo.example.com
    $ echo ${foo%%.*}
    foo
    $ foo=http://www.example.com:8888/
    $ echo ${foo%%:*}
    http
    $ foo=foo
    $ echo ${foo%%.*}
    foo
    			

最短前置パターンの削除

  • ${parameter#word}
  • ${parameter} の左から word で示されるパターンの最短部分を削除する

    $ foo=foo.c
    $ echo ${foo#*.}
    c
    $ foo=foo.example.com
    $ echo ${foo#*.}
    example.com
    $ foo=foo
    $ echo ${foo#*.}
    foo
    			

最長前置パターンの削除

  • ${parameter##word}
  • ${parameter} の左から word で示されるパターンの最長部分を削除する

    $ foo=foo.example.com
    $ echo ${foo##*.}
    com
    $ foo=/foo/bar/baz
    $ echo ${foo##*/}
    baz
    $ foo=foo
    $ echo ${foo##*.}
    foo
    			

HP ProLiant ML110 G5 で FreeBSD 7.0-RELEASE を稼働させる

PCクラスの筐体でサーバとして稼働できる Hewlett-Packard 社の ProLiant ML110 G5 で FreeBSD を動かしてみました。

ML110 G5 はマザーボードから IDE やパラレルポートといった 旧いインタフェイスが省略されている所謂レガシーフリーなサーバなので、 当然光学ドライブも SATA 接続となります。
FreeBSD 7.0 では(一部の) SATA 接続光学ドライブとは相性が悪いので、 起動時の boot prompt で hw.ata.atapi_dma="0" を指定すると、 スムーズにインストールできる様になります。 インストールした後は /boot/loader.conf に 以下の記述を追加しておくと自動で設定されて便利です。

hw.ata.atapi_dma="0"
	

ML110 のマザーボードに搭載されている NIC は Broadcom 社の GbE ですが、 型番が "NetXtreme BCM5722 Gigabit Ethernet PCIe" となっていて 標準のカーネルでは利用できません。
インストールの際は CD からのインストールを実行したり、 USB 接続の NIC などを利用してインストールした後で、 以下のパッチを適用してカーネルの再構築を行うと、 無事にギガビットイーサが利用できるようになります。
diff -cr /usr/src/sys.orig /usr/src/sys
*** /usr/src/sys.orig/dev/bge/if_bge.c	2009-04-03 12:05:39.000000000 +0900
--- /usr/src.sys/dev/bge/if_bge.c	2009-04-02 12:51:46.000000000 +0900
***************
*** 169,174 ****
--- 169,175 ----
  	{ BCOM_VENDORID,	BCOM_DEVICEID_BCM5715S },
  	{ BCOM_VENDORID,	BCOM_DEVICEID_BCM5720 },
  	{ BCOM_VENDORID,	BCOM_DEVICEID_BCM5721 },
+ 	{ BCOM_VENDORID,	BCOM_DEVICEID_BCM5722 },
  	{ BCOM_VENDORID,	BCOM_DEVICEID_BCM5750 },
  	{ BCOM_VENDORID,	BCOM_DEVICEID_BCM5750M },
  	{ BCOM_VENDORID,	BCOM_DEVICEID_BCM5751 },
diff -cr bge.orig/if_bgereg.h bge/if_bgereg.h
*** /usr/src/sys.orig/dev/bge/if_bgereg.h	2009-04-03 12:05:39.000000000 +0900
--- /usr/src/sys/dev/bge/if_bgereg.h	2009-04-02 12:51:13.000000000 +0900
***************
*** 2011,2016 ****
--- 2011,2017 ----
  #define	BCOM_DEVICEID_BCM5715S		0x1679
  #define	BCOM_DEVICEID_BCM5720		0x1658
  #define	BCOM_DEVICEID_BCM5721		0x1659
+ #define	BCOM_DEVICEID_BCM5722		0x165A
  #define	BCOM_DEVICEID_BCM5750		0x1676
  #define	BCOM_DEVICEID_BCM5750M		0x167C
  #define	BCOM_DEVICEID_BCM5751		0x1677
	

構成にもよりますが デュアルコアの Xeon は早くて快適です。

河津桜

若干旧聞に属する話題ですが、さる 2月7日に河津桜を見てきました。
河津桜の原木に咲き誇る桜の花です。

[img_0180.jpg]

一足早く暖かな春の息吹を感じていただけるでしょうか。

wget でファイル送信

wget (1) でファイルを送信する必要が生じたので、 ブラウザでファイルを送信する際のパケットをキャプチャして 通信内容を調べてみました。

想定しているのは input type='file'enctype='multipart/form-data' を指定した フォームによるファイル送信処理。
通常の http ヘッダ以外に "Content-Type""boundary"wget (1) の --header オプションで指定して、 multipart/form-data 形式に整形した送信するファイルの内容を --post-data オプションで指定するだけで送信できます。
Content-Type'multipart/form-data'boundary は送信するデータの中に含まれない 任意の文字列を指定すれば問題ない様です。

multipart/form-data 形式は以下の形式に整形します。

--任意の文字列
Content-Disposition: form-data; name="フォーム名"; filename="ファイル名"
Content-Type: text/plain
(空行)
ファイルの中身
(空行)
--任意の文字列
	

実際にコマンドライン形式に記述するとこの様になります。

wget --header="Content-Type: multipart/form-data; boundary=バウンダリ" --post-data='
--バウンダリ
Content-Disposition: form-data; name="フォーム名"; filename="ファイル名"
Content-Type: text/plain

ファイルの中身
         :

--バウンダリ
	' 送信先URL
	

スクリプトの場合などはシェル変数などを利用すると、 もう少し見やすいスクリプトになるでしょう。

#!/bin/sh
    :
    :
# バウンダリ文字列は世界標準時基準時点からの秒数とする
boundary="boundary-`date '+%s'`"
# 受信する cgi の <input type="file" name="..."> で指定されるフォーム名
formname="フォーム名"
# 送信するファイル
filename="ファイル名"
# 送信するファイルのデータ
contents="`cat ${filename}`"

# multipart/form-data 形式のデータ生成
data="
--${boundary}
Content-Disposition: form-data; name='${formname}'; filename='${filename}'
Content-Type: text/plain

${contents}

--${boundary}
"

# ファイルの送信処理
wget --header="Content-Type: multipart/form-data; boundary=${boundary}" \
    --post-data="$data" 送信先 URL
    :
    :
	

USBメモリからブートできてパーティション操作やファイル復元が可能な『Parted Magic』

ext4に対応した Parted Magic 3.5 でパーティションを操作する

こんなディストリビューション(?)あったのか。 知らなかった。 USBメモリからブートできるイメージがあるのはかなりありがたい。 いざというとき存在を知ってれば便利そうだ。

DNS DDoS

詐称された IP address から `. IN NS' という query を投げる DNS DDoS 攻撃が最近流行っているそうです。
この DNS 問い合わせに対して root servers のリストを応答してしまうと 数百バイト程度の応答が発生してしまうので、 詐称された IP address に膨大なトラヒックが集中してしまい 結果として DDoS 攻撃 分散型サービス拒否攻撃(Distributed Denial of Service attack) となってしまいます。

bind はバージョン 9.5 で既に対策が実施されており `. IN NS' 問い合わせに `refused' と応答するので、 対策されていない DNS の管理者は早急に対策する方が良いでしょう。

節分

今日は節分の日、近くの神社で豆まきがあり、近所の人たちがあつまりました。

[IMG_4594.JPG]

このあたりでは「節分」は梅の開花時期で、 春の訪れとともに「福」の訪れも感じました。

サブマシンガンでも耐えられるスーツ

WIRED NEWS - 大統領も着る? サブマシンガンにも耐えるオシャレな防弾スーツ

こんなスーツがあるとは! ただ着てみたいという欲望を満たすだけのために着てみたい。

しかし、ポロシャツで7500ドルか…。オーダーメイドのスーツっていくらだろう。

自己完結型バイオトイレ

本文中に「最初はなかなか信じてもらえない」とあるが、 確かに表題見たときは「またか」的な印象があった。

しかし、記事を読んでそんな気持ちは吹き飛んだ。 ご自身の病気から発した疑問を追い求めて、それをビジネスと結びつけ、 完成度を高めていくプロセスにはある種の憧れすら感じる。

しかし、処理後のおがくずは普通の土より衛生的という話みたいだが、 精神的意味合いで触りたくはないな…。

FreeBSD で BlueTooth マウスを利用する

最近は BlueTooth を内蔵しているハードウェア(特にラップトップ)が増えたが、 勿論 FreeBSD からも BlueTooth マウスは利用可能である。
特にラップトップの場合少ない USB ポートを占有しないので、 BlueTooth マウスは非常に嬉しいハードウェアだといえる。

BlueTooth マウスを利用するためにはカーネルモジュールをロードする必要がある。 シェルプロンプトから kldload (8) を実行してロードしてもよいが、 /boot/loader.conf に以下の記述をすることで 起動時に自動的にカーネルモジュールをロードする様になる。

netgrph_load="YES"
ng_ubt_load="YES"
vkbd_load="YES"
	

BlueTooth 機器に接続するためには BlueTooth 機器のデバイスアドレスと 機器の名称が必要になるので、 hccontrol (8) コマンドを実行して それらの情報を取得する。

# hccontrol -n ubt0hci inquiry
Inquiry result, num_responses=1
Inquiry result #0
        BD_ADDR: XX:XX:XX:XX:XX:XX
        Page Scan Rep. Mode: 0x1
        Page Scan Period Mode: 0x2
        Page Scan Mode: 00
        Class: 38:01:0c
        Clock offset: 0x5f95
Inquiry complete. Status: No error [00]
	

BlueTooth 機器との接続を管理するのは hcsecd (8) というコマンドなので、 接続する機器ごとの情報を /etc/bluetooth/hcsecd.conf に登録しておく。

device {
	bdaddr  XX:XX:XX:XX:XX:XX;
	name    "任意の名称";
	key     nokey;
	pin     nopin;
}
	

BlueTooth マウスのデバイスアドレスを /etc/bluetooth/hosts に登録する。
XX:XX:XX:XX:XX:XX	任意の名称
	

bthidcontrol (8) コマンドで BlueTooth マウスの情報を取得し 定義ファイルに出力した上で、bthidd (8) コマンドを実行すると BlueTooth マウスが利用可能となる。

# bthidcontrol -a 名称 query > /etc/bluetooth/bthidd.conf
# bthidd -c /etc/bluetooth/bthidd.conf
	

主要なコンピュータ言語/コンパイラのベンチマーク

スクリプト言語のベンチマークを探していて辿りついたページ。

The Computer Language Benchmarks Game

Rubyは1.9になって結構速くなってるとか、Python3は2.Xと比べてちょっと遅くなってるとか見てるだけで面白い。

なお、最初に選択するOS and CPUによって、選択できる言語が変わる。

FreeBSD 7.1-RELEASE

FreeBSD Release Engineering Team は FreeBSD 7.1-RELEASE を公開しました。

主な変更は以下の通りです。

  • i386/amd64 の標準スケジューラが ULE スケジューラに変更されました
  • OpenSolaris から DTrace が移植されました
  • NFS Lock Manager (NLM) Client がサポートされました
  • USB デバイスや GPTへの対応など boot loader が改良されました
  • cpuset(2) システムコール、cpuset(1) コマンドが追加されました
  • KDE 3.5.10、GNOME 2.22.3 が採用されました
  • DVD インストールイメージの配布が開始されました

詳細は [http://www.FreeBSD.org/releases/7.1R/relnotes.html リリースノート] を参照して下さい。