Teamcityがサービスとして実行されても起動しませんが、実際のコマンドはうまく機能します。

Teamcityがサービスとして実行されても起動しませんが、実際のコマンドはうまく機能します。

Teamcityをホームサーバーとして設定しようとしていますが、サービスを実行できないようです。これはUbuntu 16.04にあります。

私は指示に従った。ここ~までデータベースのインストールと構成部分。 (単に/opt/jetbrains/Teamcityの代わりに/opt/Teamcityを使用してください。)

これでサービスを実行しようとすると、次のメッセージが表示されます。

sudo service teamcity start 
Job for teamcity.service failed because the control process exited with error code. See "systemctl status teamcity.service" and "journalctl -xe" for details.

ただし、スクリプトで実際のコマンドを実行すると、

sudo start-stop-daemon --start -c teamcity  --exec  /opt/TeamCity/bin/runAll.sh start

良い結果。どんなアイデアがありますか?

編集する

これが出力ですjournalctl -xe

Oct 13 23:15:59 Home-Server sudo[8224]:     ryan : TTY=pts/8 ; PWD=/opt/TeamCity/bin ; USER=root ; COMMAND=/usr/sbin/service teamcity start
Oct 13 23:15:59 Home-Server sudo[8224]: pam_unix(sudo:session): session opened for user root by ryan(uid=0)
Oct 13 23:15:59 Home-Server systemd[1]: Starting teamcity.service...
-- Subject: Unit teamcity.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit teamcity.service has begun starting up.
Oct 13 23:15:59 Home-Server systemd[8256]: teamcity.service: Failed at step EXEC spawning /etc/init.d/teamcity: Exec format error
-- Subject: Process /etc/init.d/teamcity could not be executed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- The process /etc/init.d/teamcity could not be executed and failed.
-- 
-- The error number returned by this process is 8.
Oct 13 23:15:59 Home-Server systemd[1]: teamcity.service: Control process exited, code=exited status=203
Oct 13 23:15:59 Home-Server systemd[1]: Failed to start teamcity.service.
-- Subject: Unit teamcity.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit teamcity.service has failed.
-- 
-- The result is failed.
Oct 13 23:15:59 Home-Server systemd[1]: teamcity.service: Unit entered failed state.
Oct 13 23:15:59 Home-Server systemd[1]: teamcity.service: Failed with result 'exit-code'.
Oct 13 23:15:59 Home-Server sudo[8224]: pam_unix(sudo:session): session closed for user root

答え1

10月13日 23:15:59 ホームサーバー systemd[8256]: teamcity.service: ステップ EXEC 生成失敗 /etc/init.d/teamcity: Exec フォーマットエラー
- トピック:/etc/init.d/teamcityプロセスを実行できません。

…問題が何であるかを正確に伝えます。あなたのファイルは実行可能なスクリプトではありません。また、これは古いvan SmoorenburgスクリプトのDebianポリシーに従って指定された正しい形式ではなく、数年前にDebianで義務付けられていたLSBヘッダーは言うまでもなく、rcvan Smoorenburgスクリプトの古いRedHat / SuSEヘッダーも欠けています。rc

しかしそれを直すのも時間の無駄だ。遠くに投げる。システム化されたサービスユニットを使用してください。

メカニズムを使用しています。二重Ubuntuでは、一度はupstartに置き換えられ、次にsystemdに置き換えられました。

2016年にsystemdに移行する最初のルールが適用されます。しかし、過去数年間の多くの人々(例:ベンホワイトヘッドそして未知のこの人)システム化されたHouse of Horrorの別の候補者を作成できるようにします。 欲しくない貧しい人のデーモンマネージャ(シェルスクリプトで正しく作成されていない)をシステムデバイスの内部にラップします。

[単位]
説明=チームシティ
ドキュメント=https://unix.stackexchange.com/a/316369/5132

[提供する]
タイプ=シンプル
ユーザー=チームシティ
環境=TEAMCITY_DATA_PATH=/opt/jetbrains/TeamCity/.BuildServer
環境=TEAMCITY_SERVER_OPTS=-Djava.awt.headless=true
ExecStart=/opt/jetbrains/TeamCity/bin/runAll.shの実行

[インストールする]
WantedBy =マルチユーザー。ターゲット

追加読書

関連情報