$ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/gamesとなっています。
https://help.ubuntu.com/community/EnvironmentVariables を読むと
$ cat /etc/environment PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"で設定されているようです。
PATH をはじめとする System-wide な環境変数はこのファイルで設定するのが作法のようです。
今まではこのファイルの存在を知らなかったので /etc/profile で設定してたのですが、お勧めじゃないんですね。
「ベテラン UNIX システム管理者からは環境変数は /etc/profile って言われるかもしれないけど、Ubuntu はそうじゃない」みたいなこと書いてますね。
でも、ユーザー毎の環境変数も ~/.profile とかではなく、
$ cat ~/.pam_environment PATH DEFAULT=${PATH}:~/MyProgramsというようにしてねって書いてますが、このとおりにすると
$ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:~/MyPrograms:~/MyPrograms~/MyPrograms が二重に設定されてしまい、動作的には問題なさそうですがすっきりしません。
Ubuntu 10.04.4、Ubuntu 12.10 で確認しましたが、どちらも二重に設定されました。 当面は今までどおり
$ cat ~/.profile | tail -n 1 PATH=$PATH:~/MyPrograms $ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/user/MyProgramsとします。ちなみに、
~/.pam_environment だと ~ がそのまま PATH に出てきて
~/.profile だと ~ が絶対パスに展開されますね。
0 件のコメント:
コメントを投稿