jsvc を使用して tomcat を起動する方法 (通常のユーザーとして実行)

jsvc を使用して tomcat を起動する方法 (通常のユーザーとして実行)

jsvc の紹介

実稼働環境では、Tomcat はデーモン モードで実行する必要があります。Tomcat を通常のユーザーとして起動する必要がある場合は、1024 未満のポートは使用できません。これは、Liunx システムの制限です。1024 未満のポートを使用できるのは、root ユーザーのみです。では、Tomcat をサービスとして設定するにはどうすればよいでしょうか? jsvc を使用すると、独自の起動スクリプトを簡単にカプセル化できるほか、Tomcat の実行ユーザーとグループを任意に設定したり、メモリ制御、言語、文字エンコーディングなどの JVM 実行パラメータを指定したりすることもできます。また、Tomcat の起動に使用する pidfile を指定することもできます。つまり、Tomcat の実行方法をより正確に制御できます。オリジナルのスクリプトに比べて比べものにならないほどの利点があります。

大丈夫!ここまで長々と話してきましたが、この記事では一般ユーザーとして実行する方法を説明したいと思います。他のことはまだ学んでいません!

Tomcatディレクトリの権限を設定する

tomcat ユーザーを作成します (デフォルトでは、tomcat グループも作成されます)

ユーザー追加Tomcat

tomcatディレクトリの所有者ユーザーをtomcatに設定し、グループをtomcatグループに設定します。

chown -R tomcat:tomcat /usr/local/tomcat/
ここに説明を入力してください

この時点で表示される tomcat のルート権限は、実際にはこのソフト リンクがルートに属していることを意味します。リンク先の tomcat ディレクトリは既に tomcat によって所有されており、-R は権限を再帰的に渡します。

起動時のエラーを回避するために、グループ内のユーザーに Tomcat の下にあるすべてのファイルの読み取り権限を開きます。たとえば、sever.xmlファイルは読み取れません

chmod -R g+r tomcat/

グループ内のユーザーに、Tomcat の webapps、logs、work、temp ディレクトリへの書き込み権限を付与します。

chmod -R g+w logs/ temp/ webapps/ work/

jsvcをインストールする

前回、Java + Tomcat 環境のデプロイについてすでに説明しましたが、この記事は前回の続きです。

前回の記事を添付します: https://www.jb51.net/article/160936.htm

jsvc は Tomcat バイナリ ディストリビューションにバインドされ、ソース コード パッケージを見つけて、バイナリ ファイルにコンパイルする準備が整います。

tomcatの下のbinディレクトリに入り、 commons-daemon-native.tar.gzを見つけます。

enter description here

ソースコードパッケージを解凍する

tar -zxvf commons-daemon-native.tar.gz

解凍したディレクトリに入りコンパイルする

cd commons-daemon-1.0.15-native-src/unix
./configure --with-java=$JAVA_HOME
enter description here

上記のエラーは、gccコンパイル環境がインストールされていないために発生します。

yum install gcc-c++ -y

もう一度実行すると次の内容が表示されます

enter description here

コンパイル

make

コンパイルが完了すると、現在のフォルダにjsvcファイルが生成されます。

enter description here

tomcatのbinディレクトリにコピーします

cp jsvc /usr/local/tomcat/bin/

今回はdaemon.shを使ってTomcatを実行します

./daemon.sh start

その他のコマンド:

./daemon.sh stop

要約する

上記は、jsvc を使用して tomcat を起動する方法 (通常のユーザーとして実行) の紹介です。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。123WORDPRESS.COM ウェブサイトをご愛顧いただき、誠にありがとうございます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

<<:  MySQL のグループ分けの例

>>:  Vueで配列の変更を監視する方法

推薦する

Win7 での Mysql 5.7.17 winx64 インストール チュートリアル

ソフトウェア バージョンとプラットフォーム: MySQL-5.7.17-winx64、win7 Ho...

CentOS VPS に SSH 経由で MySQL をインストールする方法

yum install mysql-serverと入力します。続行するにはYを押してくださいインスト...

Navicat が MySQL にリモート接続するときに発生する 10060 不明エラーを解決する方法

はじめに:今日は、サーバー上のMySQLにリモート接続したいと思います。使用するソフトウェアはNav...

CSS 配送先住所平行四辺形線スタイルの例コード

コードは次のようになります。 // 配送先住所の平行四辺形の線のスタイル <view clas...

MySQLを定期的にバックアップしてQiniuにアップロードする方法

ほとんどのアプリケーション シナリオでは、緊急時に備えて重要なデータをバックアップし、安全な場所に保...

MySQLは現在の日付と時刻を取得する関数

現在の日付 + 時刻 (日付 + 時刻) を取得する関数: now() mysql> now(...

MySQLの大文字と小文字の区別によって発生する問題の分析

MYSQLは大文字と小文字を区別します言葉を見れば信じられます。タイトルを見れば内容がわかります。 ...

ミニプログラムにより、製品属性の選択や仕様の選択が可能

この記事では、ミニプログラムで製品属性選択または仕様選択を実装するための具体的なコードを参考までに共...

Reactホームページの読み込みが遅い問題のパフォーマンス最適化事例の詳細な説明

しばらくReactを勉強した後、実践してみたいと思います。そこで、個人のブログのウェブサイトを再構築...

CentOS 7 に MySQL 8 をインストールするための詳細なチュートリアル

準備するこの記事の環境情報: ソフトウェアバージョンセントOSセントOS7.4マイグレーション8.0...

MySql5.7.21 インストールポイント記録メモ

ダウンロードしたバージョンは、Zip 解凍版、Windows システムです。長い間 Windows ...

Ubuntu20.04 VNCのインストールと設定の実装

VNC はリモート デスクトップ プロトコルです。 VNC を使用して Ubuntu 20.04 を...

HTML テーブル マークアップ チュートリアル (5): ライト ボーダー カラー属性 BORDERCOLORLIGHT

表では、左上の境界線の色を個別に定義したり、セルの右下の境界線の色を定義したりできます。これら 2 ...

Linux でショートカットアイコンを設定する方法

序文Linux でショートカットを作成すると、アプリケーションをより速く開くことができます。ここで、...

自動ロック画面機能を実現するjs

1. 使用シナリオこのような要件があるため、システムが開発されました。ユーザーがデスクトップを離れ...