すべてのユーザーのための環境パス

すべてのユーザーのための環境パス

/usr/pgsql-9.5/binCentOS 7システムのすべてのユーザーの環境パスを追加しようとしています。

以下に新しいファイルを作成しました。/etc/profile.d/

次のようになります。

export PATH="/usr/pgsql-95/bin:$PATH"

その後、システムを再起動し、rootとしてログインしました。

入力するとecho $PATHリストが表示されます。

/usr/pgsql-9.5/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

したがって、rootユーザーにとってはすべてが正しいです。

次に入力します。

sudo su postgres 
echo $PATH

これには以下がリストされます。

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

/usr/pgsql-9.5/binなくなった?

ユーザーにパスが追加されていないのはなぜですかpostgres

新しいユーザーを作成すると、パスが正しく追加されます$PATH

ベストアンサー1

su -lの代わりにsuを使用しています。

su -lを使用すると、環境などの直接ログインが提供され、/etc/profile.d/filenameに記載されている環境変数が設定されます。

努力する

 sudo su -l username

おすすめ記事