CentOS 7で永続的な環境変数を設定する問題

CentOS 7で永続的な環境変数を設定する問題

再起動時に保存される環境変数を設定しようとしましたが、成功しませんでした。

exportルートまたは他のユーザーとして、またはコマンドを使用して変数を設定すると、再起動するsetenvまでセッションに保存されます。再起動すると変数が失われます。

特に設定する必要があります$JAVA_HOME

だから私はこれが好きです

ここに画像の説明を入力してください。

しかし、私が指摘したように、何も動作しません。

私は何が間違っていましたか?

答え1

シェルに応じて、通常は.<shellnamehere>rcログアウトおよび再起動イベント全体に保持する変数を保存するファイルが必要です。.bashrc選択したシェルの場合は、次の操作を実行できます。bash

編集する:端末で次のコマンドを実行してください。

env | grep SHELL

この内容が表示されたら、SHELL=bash次のコマンドを実行してください。

echo 'export JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-2.b15.el7_2.x86_64"' >> $HOME/.bashrc

最後のコマンドはいくつかの仮定をします。 SHELLが表示されない場合は、bashここに戻って結果を報告してください。ログアウトして再度ログインした後に変数が設定されていない場合は、戻って表示されるエラーメッセージを報告してください。

答え2

JAVA_HOMEをシステム全体に設定することであれば、/etc/profile.d/良い選択になります。

echo export JAVA_HOME="put path to java home here">/etc/profile.d/javaenv.sh
chmod 0755 /etc/profile.d/javaenv.sh

次回ログインすると受信できます。

関連情報