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


90

私は自分のPCでApache Tomcatをセットアップしようとしていますが、の環境変数をセットアップしたいと思っていますCATALINA_HOME。これを行う方法を知っていますか?

回答:


100

bashでは、次のような変数を設定できます。

export CATALINA_HOME=/opt/catalina

他のほとんどのシェルはこの規則に従いますが、すべてではありません。~/.profilebash用に永続的に設定できます(以前と同様、他のシェルには他の場所があります)


6
セッション全体の変数の場合、help.ubuntu.com~/.profile環境変数の割り当てを配置するのに最適なファイル
マクダウェル

答えを更新しました。代わりに.bashrcを使用した理由は、ある時点で.profileが自動的に取得されなかったためです。しかし、現在動作している場合は、使用することをお勧めします。
-Ressu

6
それを設定して~/.profileもうまくいきません。それでも動作し~/.bashrcます。
ジャンプネット

設定~/.bash_profileも同様に機能します。
ジャンプネット

/ etcにはシステム全体のファイルもあります。これは機能しますが、ユーザーごとです。
名前

26

環境変数はすでに機能しているはずです

Ubuntuリポジトリのtomcat6パッケージを使用している場合、/etc/init.d/tomcat6スタートアップスクリプトでCATALINA_HOMEおよびその他の環境変数が既に設定されています。

tomcatをパッケージマネージャーの外部(できれば/ optまたは管理されたファイルシステムの外部)にインストールする場合、実行TOMCAT/bin/startup.shすると、相対位置を使用してCATALINA_HOMEを定義する必要があります。

環境変数の設定

何らかの理由で環境変数を設定する必要がある場合は、ターミナルウィンドウを開いてコマンドを入力します。

export CATALINA_HOME=/path/to/the/root/folder/of/tomcat

この環境変数はそのターミナルウィンドウ内で機能するようになりましたが、別のウィンドウを開いたりログアウト/ログインすると、その設定は失われます。

環境変数を永続的にする

環境変数の設定を永続的にするために、設定を定義できる場所がいくつかあります。

設定が確実に選択されるようにするには、Tomcatの起動スクリプトの1つに上記の設定を追加します。

yourtomcatfolder/bin/startup.sh

yourtomcatfolder/bin/catalina.sh

注:startup.shはcatalina.shを呼び出します。これらのファイルのいずれかの開始時に(最初のコメントの後に)設定を追加する必要があります

グローバル環境変数の標準的な方法は、エントリを追加する/etc/environmentことです(通常のbashスクリプトではないため、このファイルではコマンドexportを使用しません)。

CATALINA_HOME=/path/to/the/root/folder/of/tomcat

推奨しない

bash(コマンドラインシェル)構成ファイルで環境変数を設定できますが、これらは常に選択されるわけではないため推奨されません(たとえば、tomcatを実行するためにログインしないサーバーを実行している場合):〜/ .bashrc | 〜/ .profile | /etc.bash.bashrc | / etc / profile


5
それはすべきではないstartupか、catalinaスクリプトが、setenv.shまたはsetenv.batスクリプト、必要であれば、それを作成します。setenv 『スクリプト「別にCATALINA_HOMEとCATALINA_BASEから、すべての環境変数を指定できる』スクリプトがCATALINA_BASE /ビンにまたはCATALINA_HOMEへのいずれかに置かれています。 / binディレクトリ。setenv.bat(Windowsの場合)またはsetenv.sh(* nixの場合)という名前です。ファイルは読み取り可能である必要があります。(Apache Tomcat 7.0サーブレット/ JSPコンテナの実行、セクション3.4)
-Olathe

22

最新のUbuntuバージョン(14.04以降)で永続的な環境変数を設定するには、変数をに追加します/etc/environment。そのためには、以下の指示に従ってください。

ターミナルを開いて実行します

sudo -H gedit /etc/environment

パスワードを入力し、プロンプトテキストファイルで

次に、変数を追加します

ANT_HOME="/opt/ANT/"

サンプルを/etc/environment以下に示します

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
JAVA_HOME="/usr/lib/jvm/java-8-oracle/"
AXIS2_HOME="/opt/axis2-1.7.4/"
ANT_HOME="/opt/apache-ant-1.9.7/"

環境変数を有効にするために、ログアウトして再度ログインすることを忘れないでください。


6

これに最適な場所は、Tomcatをインストールした方法と場所、この設定を選択するアプリケーション、スコープをグローバルにする方法によって異なります。

環境変数のUbuntuのドキュメントには、さまざまなオプションの長所と短所を説明します。


「これに最適な場所」と言うとき、何を指していますか?
ジャンプネット

@jumpnett-設定に依存するアプリケーションで常に利用できるように、設定を永続化する場所を意味します。毎回設定を入力して満足している場合、または独自のスクリプトを作成する場合を除きます。
マクダウェル

3
nano ~/.bashrc

ほとんどの場合、これにはすでにかなりの量のデータが含まれています。ここでの定義のほとんどは、bashオプションを設定するためのものであり、環境変数とは無関係です。コマンドラインから行うのと同じように、環境変数を設定できます。

export VARNAME=value

リンク

Ubuntu 16.04でテストしました。よく働く。


1

環境変数に関するUbuntuのドキュメントを確認した後、次の回避策を思い付きました。

##Save & run the following in a shell script,

export ENVIRON_VAR_NAME = Value
# any other initializations like
export PATH=$PWD:$PATH
bash

最後の行は、子シェルを作成します。子シェルは、設定されたばかりの親シェルから環境変数値を継承します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.