# # Licensed under the terms of the MIT license # Source: https://github.com/agowa338/MinecraftSystemdUnit/ # vim:ft=dosini: # [Unit] Description=Paper Minecraft Server %i After=network.target [Service] User=minecraft-paper Group=minecraft-paper WorkingDirectory={{ paper_home }}/%i PrivateUsers=true ProtectSystem=full ProtectHome=true # Implies MountFlags=slave ProtectKernelTunables=true # Implies NoNewPrivileges=yes ProtectKernelModules=true # Implies MountAPIVFS=yes ProtectControlGroups=true ExecStart=/bin/sh -c '/usr/bin/screen -DmS %i /usr/bin/java -Xms{{ paper_jre_xms }} -Xmx{{ paper_jre_xmx }} -jar server.jar nogui' ExecReload=/usr/bin/screen -p 0 -S %i -X eval 'stuff "reload"\\015' ExecStop=/usr/bin/screen -p 0 -S %i -X eval 'stuff "say {{ paper_stopmessage }}"\\015' ExecStop=/usr/bin/screen -p 0 -S %i -X eval 'stuff "save-all"\\015' ExecStop=/usr/bin/screen -p 0 -S %i -X eval 'stuff "stop"\\015' ExecStop=/bin/sleep 5 Restart=always # Restart after 24hrs RuntimeMaxSecs=86400 [Install] WantedBy=multi-user.target