- - PR -
CentOS でデフォルトで設定される環境変数について
投稿者 | 投稿内容 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-04-24 02:48
いろいろとありがとうございます。ただ、私は上記の設定がどこで使われているかについて知りたいと言っているだけです。 init が内部的にどういう PATH を設定しているかについて私は問題にしていません。それについては、init からプログラムを起動し PATH の値を出力させたり、カーネルのソースコードを見れば分かることだと思っています。 とは言えど、私はカーネルの仕様についてはあまり知りませんが (まだソースコードまでは読んでません)、init でデフォルトパスを設定しているかどうかについては微妙なところだと思います。 | ||||||||||||||||
|
投稿日時: 2006-04-24 08:36
ということは、当初の
にはもう興味が無い、ということでしょうか。
カーネルは関係ありません。 「execve(2)のマニュアルの記述を疑う」というのであれば話は別ですが。 # それ以前に3章のexec系関数群のほうの、フロントエンドとしての動作のほうが...
何か調べていますか? 私はさきに書いたとおり、
ということは済ませています。 各プロセスが自身で再設定するか、exec系関数群の中から敢えてexecle(3)を 選んで設定しない限り(もしくは直接execve(2)を発行しない限り)、その値が すべてのユーザプロセスに踏襲されます。 [ メッセージ編集済み 編集者: ぽんす 編集日時 2006-04-24 08:42 ] | ||||||||||||||||
|
投稿日時: 2006-04-24 20:11
/sbin/init では、パスがハードコーディングされていました。
/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin (CentOS 4.3 の場合) ただ、/bin/login にも、/usr/local/bin:/bin:/usr/bin という記述があるので、bash 起動時に DEFAULT_PATH_VALUE が使われたかどうかについては不明です (どちらが使われているかについては、もうちょっと調べてみる価値がありそうです)。ただ、どちらかで、/sbin/init で設定された内容が上書きされたのでしょう。ちなみに、mingetty では PATH について何もしていないように見えます。 | ||||||||||||||||
|
投稿日時: 2006-04-24 20:25
bash をソースコードからコンパイルして、DEFAULT_PATH_VALUE の値を変えても何も変化が見られなかったことから、/bin/login で設定されたパスがデフォルトになっているようです。いろいろご指摘いただきありがとうございました。 [ メッセージ編集済み 編集者: あんとれ 編集日時 2006-04-24 20:26 ] |