-
mysql(1)
-p/--passwd
オプションを見て「コマンドラインからパスワードなんか入れて大丈夫か?」と思っていたが、いざ使ってps(1)
してみるとちゃんとコマンドラインの該当部がx
で潰されていた。当然ながら、えらい。Linuxには
setproctitle()
とかpstat()
がないのでargvを直接書き換えるんだよね。mysql.cc
もOSを問わずそうするようになってた。
mysql(1)
-p/--passwd
オプションを見て「コマンドラインからパスワードなんか入れて大丈夫か?」と思っていたが、いざ使ってps(1)
してみるとちゃんとコマンドラインの該当部がx
で潰されていた。当然ながら、えらい。
Linuxにはsetproctitle()
とかpstat()
がないのでargvを直接書き換えるんだよね。mysql.cc
もOSを問わずそうするようになってた。
> いざ使ってps(1)してみるとちゃんとコマンドラインの該当部がxで潰されていた。
でも mysql コマンドを呼び出してから、実際にxで潰すまでの間に、若干の時間がありますよね。マシンに負荷かけると結構危ないことになると思います。
シェルスクリプトなどでもうっかり echo $passwd | … とか mysql -p “$(cat .passwd)” とか書きがちですが、注意しないと覗かれてしまいますね。(echo が builtin なら前者は大丈夫かもしれないけど)
> シェルスクリプトなどでも…注意しないと覗かれてしまいますね。
そうなんですよねえ。今ちょうどそのあたりをやってて、面倒くさいなあと思ってたり。^^;
> (echo が builtin なら前者は大丈夫かもしれないけど)
いまどきのOSではbuiltinである場合が多いので前者は大丈夫でしょうね。でも移植性を気にするスクリプトだと、そういうわけにもいかないし。ああ面倒…