RHEL6を実行していて、次のような環境変数をエクスポートしました。
export DISPLAY=:0
端末が閉じられると、その変数は失われます。これを永続的に追加して、この変数値が特定のユーザーに常に存在するようにするにはどうすればよいですか?
RHEL6を実行していて、次のような環境変数をエクスポートしました。
export DISPLAY=:0
端末が閉じられると、その変数は失われます。これを永続的に追加して、この変数値が特定のユーザーに常に存在するようにするにはどうすればよいですか?
回答:
これをシェル構成ファイルに追加できます。たとえば$HOME/.bashrc
、でグローバルに追加できます/etc/environment
。これらの行を追加した後、変更はGUIベースのシステムにすぐには反映されません。ターミナルを終了するか、新しいものを作成し、サーバーでセッションをログアウトしてログインし、これらの変更を反映する必要があります。
source
例えば-を使用します> source ~/.bashrc
。
export
が、デバッガーで試してください
次のように永続的な環境変数を設定するには、3つのファイルを編集する必要があります。
通常、この変更を適用するには、コンピューターを再起動する必要があります。ただし、次のコマンドを使用して、bashrcおよびプロファイルの変更を適用できます。
$ source ~/.bashrc
$ source ~/.profile
しかし/ etc / environmentの場合、再起動する以外に選択肢はありません(私の知る限り)
#!/bin/bash
echo "Enter variable name: "
read variable_name
echo "Enter variable value: "
read variable_value
echo "adding " $variable_name " to environment variables: " $variable_value
echo "export "$variable_name"="$variable_value>>~/.bashrc
echo $variable_name"="$variable_value>>~/.profile
echo $variable_name"="$variable_value>>/etc/environment
source ~/.bashrc
source ~/.profile
echo "do you want to restart your computer to apply changes in /etc/environment file? yes(y)no(n)"
read restart
case $restart in
y) sudo shutdown -r 0;;
n) echo "don't forget to restart your computer manually";;
esac
exit
chmod -x insert_var.sh
、bash insert_var.sh
ありがとう。
Ubuntuシステムでは、次の場所を使用します。
JAVA_PATH=/usr/local/java
格納形式のシステム全体の永続変数
/etc/environment
export PATH="$JAVA_PATH:$PATH"
store in などの変数を参照するシステム全体の永続変数
/etc/.bashrc
PATH DEFAULT=/usr/bin:usr/local/bin
格納形式のユーザー固有の永続変数
~/.pam_environment
#2の詳細については、このAsk Ubuntu answerを確認してください 。注:#3はUbuntuの推奨事項ですが、現実世界ではセキュリティ上の懸念があるかもしれません。
特定の例:Java 7とJava 6をインストールし、6でいくつかのビルドを実行し、他は7で実行する必要があります。したがってJAVA_HOME
、Mavenが各ビルドに必要なものを取得するように動的に変更する必要があります。私は次のことをしました:
j6.sh
単にJAVA_HOME=...
j6インストールへのエクスポートパスを実行するスクリプトを作成しました...j6.sh
、それぞれのコマンドターミナルでソースを実行します。デフォルトでは、my JAVA_HOME
はJ7に設定されています。お役に立てれば。
誰にでも適している場合は、環境変数を永続的に追加するための簡単なガイドラインを次に示します。
vi ~/.bash_profile
変数をファイルに追加します。
export DISPLAY=:0
export JAVA_HOME=~/opt/openjdk11
すべての変更をすぐに適用します。
source ~/.bash_profile
ソース:https : //www.serverlab.ca/tutorials/linux/administration-linux/how-to-set-environment-variables-in-linux/