Starting a Minecraft Server

Here’s how to start a Minecraft server (Vanilla or Spigot) that has already been installed and set up.

But First …

  1. Set Up a Minecraft Server on Linux
  2. Open a Bash Terminal Command Line

Step by Step

Navigate to your server directory. Usually that will be ~/minecraft in your home directory. Use ls to list what is here.

cd ~/minecraft
ls

The file you are looking for ends with .jar and will start with spigot (Spigot) or server (Vanilla).

apache-maven-3.6.0 BuildData BuildTools.jar BuildTools.log.txt Bukkit
CraftBukkit craftbukkit-1.13.2.jar eula.txt logs server.properties Spigot
spigot-1.13.2.jar spigot.jar

To start the server use the -jar option with java as well as the options to limit memory usage to keep the server from crashing because it runs out of memory.

💬 Minecraft has been known to have memory leaks.

For Spigot:

java -Xms512m -Xmx2g -jar spigot.jar

For Vanilla:

java -Xms512m -Xmx2g -jar server.jar

🎗️ Remember you should have symlinked your jar file when you set it up.

If you see something like this then your server is outdated and needs to be updated. You will still be able to use it after you wait. It’s just annoying.

*** Error, this build is outdated ***
*** Please download a new build as per instructions from https://www.spigotmc.org/go/outdated-spigot ***
*** Server will start in 20 seconds ***

If you see something like the following then it is the first time you are running your server and you need to change false to true in the eula.txt file.

Loading libraries, please wait...
Loaded 0 recipes
[11:09:02 INFO]: Loaded 0 recipes
[11:09:02 INFO]: Starting minecraft server version 1.13.2
[11:09:02 INFO]: Loading properties
[11:09:02 WARN]: server.properties does not exist
[11:09:02 INFO]: Generating new properties file
[11:09:02 WARN]: Failed to load eula.txt
[11:09:02 INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
[11:09:02 INFO]: Stopping server
[11:09:02 INFO]: Saving worlds

Open the file in an editor and make it look something like this — specifically change false to true

#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
#Sat Apr 27 14:05:45 EDT 2019
eula=true

Now start it again (you can go up in your history to reuse the same command from before to save you on typing).

You should see a lot of text scroll ending with the word Done and a command prompt >.

[09:58:35 INFO]: Permissions listed in as player-commands will be given to all users.
[09:58:35 INFO]: Server permissions file permissions.yml is empty, ignoring it
[09:58:35 INFO]: Done (3.353s)! For help, type "help"
>

Your server is now running.

Other stuff you might need to do now: