我正在尝试让 Minecraft 服务器在 Fedora 上使用 systemd 在计算机启动时运行。我有一些自我强加的标准,我需要满足这些标准才能正确管理我的服务器:
\nminecraft我使用主目录创建的系统用户身份运行/opt/minecraft。我尝试通过addusering 然后添加行User=minecraft和WorkingDirectory=/opt/minecraft/WorkingDirectory为WorkingDirectory=/opt/minecraft/%i让我传入目录。/run/minecraft%I,但我无法让它工作。如果您不熟悉 Minecraft 服务器,他们有一个交互式控制台,您可以将命令传递到其中。过去,我使用过在会话tmux send中运行的服务器tmux,但问题是它不会自动启动并且感觉不优雅。/usr/local/lib/systemd/system/minecraft@.service:
[Unit]\nDescription=Minecraft server: %i\n\n# only run after networking is ready\nAfter=network-online.target\nWants=network-online.target\n\n[Service]\nType=simple\n\n# restart if the server crashes\nRestart=on-failure\nRestartSec=5s\n\n# set the input and outputs to a socket unit and the journal resp.\nSockets=minecraft@%i.socket\nStandardInput=socket \nStandardOutput=journal\nStandardError=journal\n\n# set the user and directory to …Run Code Online (Sandbox Code Playgroud)