dtloginだけjaロケールで起動する
Solaris 10のお話です.OSそのものはCロケールで動かしています.コンソールに日本語でメッセージが表示されてもわかんないですからね.でも使い勝手の点からはdtloginはやっぱりjaロケールで動かしたいわけです.まぁメニューからjaロケールを選択すれば良いのではありますが,毎回となると正直いって面倒ですし,他の人も使うことを考えると最初から日本語の状態で動いていて欲しいわけです.
てことで今までは/etc/init.d/dtlogin内でdtloginを起動する行を
LANG=ja /usr/dt/bin/dtlogin -daemon &
のように書きかえていたのですが,124393-03(SPARC),124394-03(x86)のパッチを適用するとdtloginがsmf(5)経由で起動されるようになるので*1,そうはいかなくなってしまいます.まぁ/lib/svc/method/svc-dtloginを書きかえるというのもひとつの方法ではあるのですが,できればもう少し真っ当な方法で対処したいところです.というわけで以下のようにsmf(5)の枠内で対応してみました.
# svccfg -s cde-login setenv LANG ja # svcadm refresh cde-login
のようにして,cde-loginの起動時の環境変数にLANG=jaを設定して,それを反映させます.あとは,
# svcadm restart cde-login
このようにしてdtloginを再起動するのですが,dtlogin経由で起動したX11上で実行すると,現在使用中のX11環境が終了してしまうので要注意なのです.
ヘンな日本語
きのう書こうと思って,でも眠くなってきたので止めちゃったんですが,マイクロソフト社のKBで使われている「リモートでコードが実行される」って表現はどうも馴染めません.
おそらく「remote code execution」の日本語訳なんでしょうけど,これは意味合いとしては「リモートからの攻撃等によりローカルのコンピュータでコード(=プログラム等)が実行されてしまう」ということな訳ですが,「リモートでコードが実行される」では文字通りに自分とは関係のないところでコードが実行されるというように思えてなりません.これではあんまり危険な気がしないってことで,いかがなものかなと思うわけでです.