:::: MENU ::::
Posts tagged with: bash

sudoでPATHの環境変数を引き継ぐ

sudoした後に、「パスが見つかりません」とパスの設定が変わる場合には、sudoの設定でPATH環境設定を引き継ぐ事が出来ます。

/etc/sudoersに下記一行を追記します。

Defaults env_keep += “PATH”

# visudo
….
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
Defaults env_keep += "PATH"

保存後、再ログインして、sudoで確認してみる。


Mac OS X上でのbash環境メモ

自分だけでのbash環境設定だと、~/.bashrcや~/.profileに書けば良いのだが、数人で共有しているMacで、共通のbash環境変数を設定したい場合がある。

Linux/Unixとは、少し異なる部分があったので、メモしておく。
(尚、下記はSnow Leopard 10.6.xの環境)

読み込む順番:

  1. ログインすると/etc/profileが読み込まれる
  2. /etc/profileでは、/usr/libexec/path_helper -sが実行される
  3. /etc/paths
  4. /etc/paths.d/内に記述されたパス設定ファイルが読み込まれる
  5. /etc/bashrc
  6. ~/.profile
  7. ~/.bashrc

と言うことで、

  • 共通のシステム関連パスは、/etc/pathsへ
  • 共通の特有関連パスは、/etc/paths.d/内にファイルを作成して、ディレクトリパスを記述
  • 共通の環境変数は、/etc/profileへ
  • 自分固有の環境変数・パスは、~/.profileへ
    /etc/profile同様に、~/.profileに~/.bashrcを読み込むように記述

これで、多分大丈夫だと思うのだが、細かい部分は間違っているかも?