次のサービススクリプトを使用して、Minecraftサーバーをシステムサービスとして実行しています。
Description=MC Server: %i
After=network.target
[Service]
WorkingDirectory=/opt/minecraft/%i
User=minecraft
Group=minecraft
Restart=always
RestartSec=30
StandardOutput=append:ServiceConsoleOut.log
StandardError=append:ServiceConsoleErr.log
ExecStart=/usr/bin/screen -DmS mc-%i java -Xms48G -Xmx48G -jar paper.jar --nogui
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "say SERVER SHUTTING DOWN IN 5 SECONDS..."\015'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "save-all"\015'
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "stop"\015'
[Install]
WantedBy=multi-user.target
コンソールの出力をログにキャプチャし、StandardOutputとStandardErrorを使用してリダイレクトしようとしましたが、明らかに機能しませんでした。これが可能だと確信していますが、どうすべきか覚えていません。誰かが私にこれを行う方法について必要な洞察を提供できますか?