Skip to content

Latest commit

 

History

History
41 lines (29 loc) · 1.16 KB

command-bash.md

File metadata and controls

41 lines (29 loc) · 1.16 KB

Use bash script to start server

You may use a bash script to start your server rather than invoking java directly. This requires some changes though to ensure your server properly shuts down.

When lazymc stops your server it sends a SIGTERM signal to the invoked server process to gracefully shut it down. bash ignores this signal by default and keeps the Minecraft server running.

You must configure bash to forward the signal to properly shutdown the Minecraft server as well.

Example

Here's a minimal example, trapping the signal and forwarding it to the server. Be sure to set the correct server JAR file and appropriate memory limits.

start-server:

#!/bin/bash

# Server JAR file, set this to your own
FILE=server.jar

# Trap SIGTERM, forward it to server process ID
trap 'kill -TERM $PID' TERM INT

# Start server
java -Xms1G -Xmx1G -jar $FILE --nogui &

# Remember server process ID, wait for it to quit, then reset the trap
PID=$!
wait $PID
trap - TERM INT
wait $PID