Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Linux Tomcat

CATALINA_HOMEが設定されない時の想定原因と対処法

投稿日:2021年3月14日 更新日:

<目次>

(1) CATALINA_HOMEが設定されない時の想定原因と対処法
 (1-1) 発生状況・エラーメッセージ
 (1-2) 原因
 (1-3) 対処法

(1) CATALINA_HOMEが設定されない時の想定原因と対処法

Tomcatのインストールにおいて、TeraTermで環境変数CATALINA_HOMEがechoで表示されない(上手く設定できていない)場合に考え得る原因と対処方法について記述します。

(1-1) 発生状況・エラーメッセージ

TeraTermからTomcat8のインストールを実施した後に、環境変数CATALINA_HOMEの値を確認するために下記コマンドを実行したら、環境変数が表示されなかった。

$ echo $CATALINA_HOME

(図111)

目次にもどる

(1-2) 原因

CATALINA_HOME等の環境変数を設定する箇所はいくつかあり、例えば次のような設定箇所があります。

①systemdのユニットファイル

ユニットファイル」はサービスとして起動する際の設定を行う際に作成するファイルです。[サービス名].serviceという名前で作成され、例えばTomcatの場合はtomcat.serviceといった名前です。このユニットファイルの中で、サービス起動時に設定する環境変数(CATALINA_HOME等)を定義しています。

サービスの場合は後述する「ログインシェルの起動ファイル」で設定された環境変数は読み込まれないため、このユニットファイルの中で確実に定義する必要があります。

(設定シーン)
サービス起動時に環境変数を使う場合

②ログインシェルの起動ファイル(/etc/profileなど)

TeraTerm等からID/Passwordを指定してリモート接続(ログインシェル)する際に適用される環境変数の設定です(/etc/profileなど)。

参考:ログインシェルと非ログインシェルとは?

TeraTermでログインした際にCATALINA_HOMEが設定されていないケースはこちらに該当します。

(設定シーン)
ログインシェルで環境変数を使用する場合(SSHによるリモート接続等)

目次にもどる

(1-3) 対処法

ログインシェルの起動ファイル「/etc/profile」に環境変数の設定を追記していきます。
 
①viエディタで起動ファイルを開く
viエディタの使い方

 

$ sudo vi /etc/profile

 

②環境変数の設定を追記
末尾に下記の文言を追記します。「XX」の箇所はご自身のTomcatのバージョンに併せて修正してください(例:apache-tomcat-8.5.55)
 
JRE_HOME=/usr/java/default
CATALINA_HOME=/usr/local/src/apache-tomcat-XX.XX.XX
export JRE_HOME CATALINA_HOME

(図132)

③ログアウト&再ログイン
設定を反映するために、一度TeraTerm等をログアウトしてから、再度ログインします。

(図133)

④反映確認
再度echoコマンドで反映されている事を確認します。
$ echo $CATALINA_HOME
(図134)

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-Linux, Tomcat

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

C++をLinuxでコンパイルする方法について

  <目次> (1) C++をLinuxでコンパイルする方法について  (1-1) STEP0:【事前準備】ターミナル機能の準備(ターミナル、Teraterm、Putty)  (1-2) S …

Tomcatを使ったフォーム認証でユーザ情報をデータベース管理する方法

<目次> (1) Tomcatを使ったフォーム認証でユーザ情報をデータベース管理する方法  (1-1) 前提条件  (1-2) STEP1:context.xmlにコネクションプールを設定  (1-3 …

Linuxの「inode」とは?概要や確認方法をご紹介

  <目次> (1) Linuxの「inode」とは?概要や確認方法をご紹介  (1-1) Linuxの「inode」の概要  (1-2) 「inode」の確認方法  (1-3) 「inod …

Linux基礎コマンド(第3回) rm・cat・head・tail

初めてLinuxを触る人向けにTeraTermのログイン方法からコマンドを入力する方法まで数回にわたり解説していきます。本記事はその第3弾です!第1弾の記事はこちら(第1弾)で、第2弾の記事は こちら …

CentOS6でエラー「Cannot find a valid baseurl for repo: centos-sclo-rh」が出た時の対処メモ

<目次> (1) CentOS6でエラー「Cannot find a valid baseurl for repo: centos-sclo-rh」が出た時の対処メモ  (1-1) エラーメッセージ …

  • English (United States)
  • 日本語
Top