くまきち

山と旅と家族が大事。
でも激しい物欲が理性と財布のタガを飛ばす
最近は自転車も乗ってる

お好み焼きはおかずだ

2009-09-18 17:00:34 | 雑記
こんな記事が。

  livedoor ニュース - 「お好み焼きはご飯のおかず」は西高東低!?
  http://news.livedoor.com/article/detail/4354120/


 お好み焼き、たこ焼き、焼きそば、どれも当然おかずになると思った。


 炭水化物のおかずと、炭水化物のごはんがダブってしまうとか言ってる連中って、どうなんだろうね。
 おかずは炭水化物じゃダメってこと? 炭水化物以外じゃないと、おかずと呼ばれる資格がないの?

 なんか、先入観つーか、固定観念つーか、思い込みだよな。

 味が濃ければおかずになるんだよ。


 おれはあまり食べないけど、ラーメンとご飯食べるヒトはいると思う。 あれは炭水化物じゃないのか?


 炭水化物かどうかなんて、実はどうでもいいのだ。
 その言葉がこの話の中で出てくること自体がおかしいのだよ。

FreeBSD: kern_securelevel によって kon が使えない

2009-09-18 10:23:26 | SEまわり
 会社でこんなことを尋ねられた。

 「kon を使おうとすると、ioctl 関連のエラーが出る。
  kern_securelevel を低くすると出なくなり、kon が使える。
  kern_securelevel を変更せずに kon を使う方法はある?」

 kon を使ったことはあるけど、それが kern_securelevel によって、kon が使えなくなるなど思いもしなかった。 それらが関係することも想像できなかった。

 想像すると、kon は画面出力を取り扱うから、きっと低レベルでデバイスを直接取り扱う必要があって、ユーザランドなアプリケーションが直接デバイスを操作するには権限が足りなくてエラーになるのかなあと。


 ネット上を探してみると、こんな文書が見つかった。

  
注意点ですが、kon は root に suid なので secure なマシンでは使わないで
ください。


 だいたい想像と合ってた。 suid するのか。

 だから、 kon に限らず、suid するアプリケーションは、kern_securelevel を上げた状態では使えないと言うことか。

 /etc/defaults/rc.conf を見てみると、コメントのところにはこんな記述がある(7.0Rにて)。

  
kern_securelevel_enable="NO" # kernel security level (see init(8)),
kern_securelevel="-1" # range: -1..3 ; `-1' is the most insecure
            # Note that setting securelevel to 0 will result
            # in the system booting with securelevel set to 1, as
            # init(8) will raise the level when rc(8) completes.


 そこから、init(8) を見ると、security(7) を見ろとあるので、見た。
 こんな説明があった。

  
Once you have set the security level to 1, write access to raw devices will be denied and special chflags(1) flags, such as schg, will be enforced.


 kern_securelevel を 1 にセットすると、raw デバイスへの書き込みは不可になるらしい。

 ちゃんと説明が書かれていたので、この部分は納得。
 ただ、"schg フラグのような" の意味が分からなかったので、それは chflags(1) を見てみた。

 いくら root 権限を持っていても、変更不可にしてしまうフラグということらしい。
 uchg だと、root 権限があれば変更できるということらしい。

 kon はユーザランドなアプリケーションだから、それを root で動かしたところで、schg フラグを持っているファイル(デバイス)には書き込みができないということのようだ。

 納得。