綾小路龍之介の素人思考

[linux] /var/log/auth.log に出る Unable to open env file: /etc/environment: No such file or directory というエラーメッセージは touch /etc/environment することで消える。

作った/etc/environmentはsuしたところで何も変化は無いのだけど、なぜか必要らしい。

以下のようにsuでユーザを変わるタイミングでUnable to open env file: /etc/environment: No such file or directoryというエラーメッセージが出る。

$ su -
# tail -f /var/log/auth.log
Feb 27 04:17:50 ****** su[27255]: Successful su for root by ****
Feb 27 04:17:50 ****** su[27255]: + /dev/pts/7 ****:root
Feb 27 04:17:50 ****** su[27255]: pam_env(su:session): Unable to open env file: /etc/environment: No such file or directory
Feb 27 04:17:50 ****** su[27255]: pam_unix(su:session): session opened for user root by ****(uid=1000)

touchで/etc/environmentを作り、その後でログインするとエラーメッセージが消える。

# touch /etc/environment
# exit
$ su -
# tail -f /var/log/auth.log
Feb 27 04:24:45 ****** su[27347]: Successful su for root by ****
Feb 27 04:24:45 ****** su[27347]: + /dev/pts/7 ****:root
Feb 27 04:24:45 ****** su[27347]: pam_unix(su:session): session opened for user root by ****(uid=1000)

/etc/environment を読みに行く理由は、/etc/pam.d/****にそのような設定値が書かれているから。今回の場合、suコマンドを使っているので、/etc/pam.d/suの内容を参照する。pam_env.so readenv=1という行が/etc/environmentを読みに行く設定。不要であればreadenv=1の部分をreadenv=0のようにする。

# grep -v '^$' /etc/pam.d/su | grep -v '#'
auth       sufficient pam_rootok.so
session       required   pam_env.so readenv=1
session       required   pam_env.so readenv=1 envfile=/etc/default/locale
session    optional   pam_mail.so nopen
@include common-auth
@include common-account
@include common-session

/etc/environmentには環境変数を記述するのだが、中身は空のファイルなので、結局何もしないのと同じ。。

# cat /etc/environment

リファレンス

  1. pam_env Unable to open env file No such file or directory - Google 検索
  2. pam_env Unable to open env file - Google 検索
  3. #442049 - libpam-modules: pam_env complains about missing file /etc/environment - Debian Bug report logs
  4. ipop3d[4438]: pam_env(pop:setcred): Unable to open env file: /etc/environment: No such file or direc - Parallels Pro Control Panel Archives Forum
  5. 第4章 認証
  6. readenv etc pam.d - Google 検索
  7. AIX Simple techniques wiki - environment設定(HOMEやTIMEZONE等々)
  8. D: Japanese - Debian GNU/Linux スレッドテンプレ
  9. Ubuntu/Tips - DebugIto's
  10. PATH HOWTO: 全ユーザーが同じパスを得るための方法
  11. 6.6. pam_env - set/unset environment variables
  12. JapaneseEnvironment - Debian Wiki
  13. PAM - どびんむし - livedoor Wiki(ウィキ)

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2009-10-11T05:07:57+09:00
  2. Modified: 2009-10-11T05:07:57+09:00
  3. Generated: 2017-08-01T23:09:16+09:00