web-dev-qa-db-ja.com

CentOSで環境変数を永続的に設定するにはどうすればよいですか?

サーバーのSSHターミナルで次のコマンドを使用しました。

export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib

そしてそれはうまくいきます:私のプログラムはこの時点ですべてのライブラリを見つけます(SSHコマンドラインから起動した場合)。

コマンド

env

lD_LIBRARY_PATHが正しく設定されていることを示しています。

だが! SSHクライアントを閉じて再接続すると、LD_LIBRARY_PATHが設定されなくなります。

CentOSのサーバーで環境変数を常に設定するにはどうすればよいですか?ありがとう。

8
user3545570

あなた自身の答えと@Fegnoidによって与えられたもので述べたように、.sh内の/etc/profile.d/ファイルまたは~/.bash_profile内の変数をエクスポートするとうまくいきます。これらの環境変数をサービススクリプトで使用する場合、serviceは一部を除くすべての環境変数を消去するため、期待どおりに機能しない可能性があることに注意してください。

https://unix.stackexchange.com/a/44378/148497 を参照してください。

4
sbaldrich

ユーザーの〜/ .profileまたは〜/ .bash_profileの変数をエクスポートして、ログイン時に設定して、次の行になるようにします。

LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
1
Fegnoid