私はMinecraftサーバーをシステムサービスとして実行しています。サービスはExecStart
スクリプトへのパスで、その内容は次のとおりです。
screen -L -DmS minecraft java -Xmx4096M -Xms1024M -jar server.jar nogui
つまり、フォークではなく単純なサービスとして実行されます。
java
呼び出しの結果をスクリーンセッションに表示することに加えて、systemdの一般的なメカニズムを通して記録したいと思います。私はsystemdに初めて触れたので、どこから始めるべきかわかりません。tee
呼び出しの結果をjava
別のものに置き換えることはできますか?
答え1
結局、サーバーの動作方法を変更して問題を解決しました。画面の使用を完全に中断し、MinecraftのRCONサポートを使用してサーバーを制御(停止)しました。これが私が質問した質問に正確に答えるかどうかはわかりませんが、Minecraftサーバーを排他的に実行しているすべての人に機能します。
詳しくはこちらをご覧ください。systemdを使用したMinecraftサーバーの起動/停止。