次のページ 前のページ 目次へ

5. Login

テキストコンソールにはユーザーログインを待つgettyプログラムがあります。 "login:"とメッセージを表示します。init環境で動作し、gettyが ユーザーをシステムにログインさせたら「login」プログラムを実行します。 このloginプログラムはユーザー環境をセットしシェルを実行します。

ログインプログラムは/usr/include/paths.hにパスを定義しています。 この「ログインパス」はrootユーザーと他のユーザーでは違いがあります。

一般ユーザー用(_PATH_DEFPATH):

/usr/local/bin:/usr/bin:/bin:.

root用(_PATH_DEFPATH_ROOT):

/sbin:/bin:/usr/sbin:/usr/bin

一般ユーザーのパスはsbinディレクトリを含んでいません。しかしカレント ディレクトリ(.)を含んでいます。カレントディレクトリはrootユーザー では危険です。rootユーザーにおいては/usr/local/binにもパスを 通していません。

ログインパスはシェル初期化によって上書きされることがあります。しかし ユーザーシェルとして/etc/passwdに他のプログラムを指定する ことも可能です。例えば特殊ユーザー名でログインした時PPPを開始する 以下のような行を使っています。このケースではpppdがログインパス として正しく書かれています。

etu-ppp:viYabVlxPwzDl:1000:1000:Esa Turtiainen, PPP:/:/usr/sbin/pppd


次のページ 前のページ 目次へ