私は Minecraft サーバーを systemd サービスとして実行しています。サービスのパスは、ExecStart
次の内容のスクリプトへのパスです。
screen -L -DmS minecraft java -Xmx4096M -Xms1024M -jar server.jar nogui
つまり、これはフォークされたものではなく、単純なサービスとして実行されています。
呼び出しの出力をjava
、screen セッションで表示することに加えて、systemd の通常のメカニズムを使用してログに記録したいと考えています。私は systemd に関してはほぼ初心者なので、どこから始めればよいかわかりません。呼び出しtee
の出力java
を何かに取り込むことはできますか?
答え1
最終的に、サーバーの実行方法を変更することでこの問題を解決しました。screen の使用を完全にやめ、Minecraft の RCON サポートを使用してサーバーを制御しました (停止など)。この質問に対する正確な回答かどうかはわかりませんが、Minecraft サーバーを実行している人にとってはうまくいくはずです。