Raspberry Pi Minecraft Server Setup Script w/ Startup Service

Minecraft 1.16 Nether Update
Minecraft 1.16 Nether Update

***UPDATE 10/19/2020 – Minecraft 1.16.3 is here! PLEASE make sure you have full backups of your server before attempting to upgrade your server. If you read the older comments you will see that weird things can happen with version upgrades sometimes. 1.15 was an absolute mess at first and a few people without backups in the comments wanted to roll back and had some serious regrets.

1.16.3 has been a very stable experience and is working well. It’s safe to upgrade as long as you’ve made backups!

Minecraft 1.16.3 (Nether Update) is here! This script and guide are written to help you get a great performing Raspberry Pi Minecraft server up and running in only a few minutes.


  • Sets up fully operational Minecraft server in a couple of minutes
  • Raspbian / Ubuntu / Debian distributions supported
  • Installs and configures OpenJDK 11 (or higher if available)
  • Sets up Minecraft as a system service with option to autostart at boot
  • Automatic backups to minecraft/backups when server restarts
  • Updates automatically to the latest version when server is started
  • Easy control of server with start.sh, stop.sh and restart.sh scripts
  • Optional scheduled daily restart of Pi using cron
  • Optional configuration of video memory to 16MB (default 64MB) and overclocking MicroSD reader to 100Hz (default 50Hz) for maximum performance


  • Raspberry Pi model with 1 GB of RAM or higher. Basically a Raspberry Pi 2B or higher. (No Zero unfortunately, 512MB is not enough RAM to do this, I’ve tried!)
  • Headless Linux distribution such as Raspbian Buster Lite, Ubuntu Server 18.04.2, or any Debian based distribution (GUI distros can be used at the expense of available RAM and server performance)
  • Solid state drive highly recommended but not required.
    You can get a SSD setup on a Pi for less than most Micro SD cards cost. See my article here for details
  • If using MicroSD you want to be using a high range card otherwise you will really be hurting on IO when the server is reading/writing chunks of terrain! Click here for MicroSD card benchmarks/recommendations.

Recommended Gear

Raspberry Pi 4 Model B *8*GB*

Raspberry Pi 4 8GB

StarTech 2.5″ SATA to USB 3.0 Adapter* -AND- Kingston A400 SSD 120GB SATA 3 2.5” Solid State Drive*

StarTech 2.5" SATA to USB
Kingston A400 SSD

Or for a compact setup: SanDisk Extreme Pro 128GB USB Solid State Flash Drive*

SanDisk Extreme Pro 128GB USB SSD

Best benchmarking Micro SD card: SanDisk Extreme 64 GB MicroSD Card*

SanDisk Extreme A1 MicroSD Card

Choosing a Linux Distribution

The most important consideration when choosing which flavor of Linux to run the server on is simple: available RAM. Headless Linux distributions such as Raspbian Lite that don’t have a built in GUI have

Our biggest obstacle when running a Minecraft server on the Pi is available RAM since 1 GB is extremely low for this type of server. To have a playable experience you should not be running anything else on the Pi so all memory is available to be used.

After testing on many different distros I am finding Raspbian Lite and Ubuntu Server 18.04.4 32-bit to be the best choices. These distributions come with very few background processes and have rock solid support and performance.

64-bit vs 32-bit

There’s a lot of discussion in the Pi world about the up and coming aarch64 64-bit distributions vs. armhf 32-bit distributions. They have been and continue to improve dramatically. There are already use cases where 64-bit is far superior such as video encoding, advanced compression, etc.

So how about for running a Minecraft server? I have been testing extensively with Ubuntu Server 18.04 64-bit and the Debian Buster 64-bit. I have consistently had worse performance and stability than on 32-bit versions of the exact same distros.

But how can that be? It’s certainly true that Minecraft servers benefit in CPU performance from 64-bit versions of Java. The answer is actually incredibly simple: memory. The server running on a 64-bit Java Virtual Machine uses a minimum of about 100 MB more memory. This makes perfect sense because 64 bits > 32 bits by definition!

The Raspberry Pi’s 1 GB of memory has been the biggest obstacle for this project since the very beginning. Back when I first went into the Paper Minecraft developer IRC room and told them what I was trying to do I was practically laughed out of the chat room for even thinking of trying this. Most Minecraft server branches including vanilla can’t even start on the Pi because of the limited memory.

For a dedicated Minecraft server on the Pi I very highly recommend staying 32-bit. You will have more available memory which means it will be much faster and more stable. Since memory is our bottleneck the increased CPU throughput does not help us and losing *any* of our memory is disastrous!

If the Raspberry Pi 4 has more memory like we all expect it to this recommendation will change completely. Even 2 GB of memory would make the extra memory that 64-bit uses a non-issue and the CPU throughput performance gains very desirable. For now though stay 32-bit for a Minecraft server!

Tested Distributions

Raspbian Lite – It’s Raspbian. It has very low memory usage and is the official distribution of the Raspberry Pi. The server runs very well on this. It’s overall the best choice. The Buster release has made OpenJDK 11 available on it so it’s no longer behind the rest of the distros.

Ubuntu Server 18.04.3 – Ubuntu Server is my favorite Linux distro. I use it for nearly all of my projects. The performance of the 32-bit armhf version is on par with Raspbian. It’s a great choice! Click here for my Ubuntu setup guide for Raspberry Pi. The 64-bit version is not a fantastic choice and not recommended because of the higher memory usage. Stick with 32-bit and you’ll be a happy camper with Ubuntu Server.

Debian Buster 64-bit – Debian is the distribution Raspbian is based on. This version is a preview of Debian “Buster” which is the successor to Stretch and will be the next version of Raspbian when it is released. I like this distribution but it is currently still unofficial and unsupported. Performance and stability was less than Ubuntu and Raspbian.

Benchmark Your Storage

Make sure your storage is running fast enough to be an effective Minecraft server. I wrote a benchmark for this purpose to make this extremely easy. To get accurate results make sure nothing is running when the benchmarking is taking place.

Run the benchmark by pasting/typing:

sudo systemctl stop minecraft
sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash 

Ideally you will score around 1000 for a good quality Micro SD card (and much higher for solid state storage). A low score (< 700) here indicates here that it is probably time to upgrade to a solid state drive or a faster Micro SD card. Click here to view all the existing benchmarks.

You can still run the server if you’d like with a low storage score but be advised when operations like saving the server’s blocks take place the people online may experience quite a big of lag!


SSH into your Raspberry Pi and paste the following commands:

wget https://raw.githubusercontent.com/TheRemote/RaspberryPiMinecraft/master/SetupMinecraft.sh
chmod +x SetupMinecraft.sh

The script will setup the Minecraft sever and ask you some questions on how to configure it. I’ll explain here what they mean.

“Enter amount of memory in megabytes to dedicate to the Minecraft server” – The amount of memory that will be dedicated to the Minecraft server. The more the better, but you must leave some room for the operating system background processes.

If you exceed the total available memory either the server will crash or the Pi will get incredibly slow to the point where your SSH session will start timing out. The setup script will make a recommendation to you which is your available memory – 10% for headroom. If you aren’t sure what to put just go with the recommended amount.

Note for Raspberry Pi 4: Currently on 32-bit Raspbian 2700 MB is the maximum that Linux will let us allocate in a 32 bit environment. The script has been updated to check for this as the server will not start if it is set over 2700M on a 32 bit server. 64 bit operating systems will be able to allocate all available memory as Pi 4 support rolls out for them.

“Start Minecraft server at startup automatically (y/n)?” – This will set the Minecraft service to start automatically when your Pi boots. This is great because whenever you want to play you can just plug it in and go without having to SSH in.

“Automatically reboot Pi and update server at 4am daily (y/n)?” – This will add a cron job to the server that reboots the Pi every day at 4am. This is great because every time the server restarts it backs up the server and updates to the latest version. See the “Scheduled Daily Reboots” section below for information on how to customize the time or remove the reboot.

That is it for the setup script. The server will finish configuring and start!

Check Java Version

Sometimes if you have multiple versions of Java installed the wrong version of Java will be selected as the default. If the server didn’t start check that the right version of Java is selected with this command:

sudo update-alternatives --config java

If you get the message “update-alternatives: error: no alternatives for java” then you only have one version of Java installed and can skip to the next section.

If you are presented with a list of choices then your machine has multiple versions of Java installed. It will look like this:

update-alternatives: warning: /etc/alternatives/java has been changed (manually or by a script); switching to manual updates only
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
  0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1101      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1101      manual mode
  2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode

You will usually want to just select the newest version of OpenJDK that is listed so you would type 0 and press enter. In some cases on some platforms you may want to switch to the official Oracle JDK although I strongly recommend sticking with OpenJDK!

First Run

The first time you run the server it will take a little longer to start since it is generating all the server data. If you try to log in before it fully starts you will get a connection timeout error. Watch for the line: “Timings Reset”. This is the last line that prints when the server is ready to rock and roll. At this point you will be able to connect successfully.

The very first time you log into the server it will be slow for about 1-2 minutes. This is because since nobody has logged in before the server has to scramble to generate all the chunks within your view distance (10 by default) and send them to you/store them. During this time you may not be able to see very far and if you try to destroy blocks there will be noticeable lag from when they break to when they actually disappear.

Don’t panic! This will go away within a couple of minutes as the Pi catches up with all the first time login stuff it needs to do. Performance stabilizes and it will feel very much like the offline experience after that.

If you are hosting for a few friends I’d recommend logging in for the first time right after you set up the server instead of having several people nail a blank server at first startup. This gets it out of the way and when everyone is ready to log in the starting area chunks will be fully fleshed out and the Pi just has to read them. It’s an order of magnitude faster for the Pi to read chunks than to generate and store chunks.

In my experience after the initial login exploring new parts of the server doesn’t cause any lag even though new chunks are being generated. The reason for this is that when you’re walking it’s really only having to generate a new chunk as you get close to the border instead of a huge square area of chunks in all directions and all at the same time like during the first login.

Changing Minecraft Server Version

If you want to change which version your Minecraft server is running it can be changed by opening SetupMinecraft.sh with any text editor (example: nano SetupMinecraft.sh).

Change the line Version=”1.15.1″ to whichever Minecraft server version you want to run. Note that that version must already exist for Paper Minecraft. You can view all available versions at the following URL:


Changing Minecraft Client Version

If you are wisely running the “stable” branch instead of the “development” branch there will be times where you need to select the version of Minecraft to run otherwise you will get an error message that your client is outdated when you try to log in.

Fortunately this is very easy. Open up the Minecraft launcher and instead of hitting “Play” choose “Launch Options” in the menu at the top of the window. It will look like this:

Minecraft launch options
Minecraft Launcher “Launch Options” Tab

Click the “Add new” button and pick which version you want to add. You can optionally gave it a name or just click save.

Now when you go back to the “News” tab you will see a dropdown arrow where you can select which version of Minecraft you want to play!

Start, Stop and Restart Server

The server can be started, stopped and restarted two different ways. You can use the provided scripts in the Minecraft folder or you can use systemctl. Here are the commands:

cd ~/minecraft


sudo systemctl start minecraft
sudo systemctl stop minecraft
sudo systemctl restart minecraft

Automatic Backups

The server backs up each time it starts. This helps you recover easily if something goes wrong. This system works best if you configured the server to restart daily since it means you will have a backup every day.

To access these backups type:

cd ~/minecraft/backups

When a backup is made the filename will be the date and time the backup was taken. If you need to restore a backup it’s very easy. Substitute the timestamp in my example to the backup you want to roll back to. Type:

cd ~/minecraft
rm -rf world world_nether world_the_end
tar -xf backups/2019.

Your world has now been restored! It’s a good idea to download these backups off the Pi periodically just in case the Pi’s storage fails.

Scheduled Daily Reboots

The daily reboots are scheduled using cron. It’s very easy to customize the time your server restarts.

To change the time that the server restarts type: crontab -e

This will open a window that will ask you to select a text editor (I find nano to be the easiest) and will show the cronjobs scheduled on the Pi. The Minecraft one will look like the following:

0 4 * * * /home/ubuntu/minecraft/restart.sh
cron options

There are 5 fields here. The default restart time is set to reboot at 0 minutes of the 4th hour of the day (4 AM). The other 3 fields are left as * to represent every day of every month. Make any desired changes here and press Ctrl+X to exit nano and update the cronjob.

To remove the daily reboot simply delete the line and save.

Installing Plugins

The server supports plugins that are compatible with Bukkit / Spigot / Paper. A popular place that you can get plugins is at where there are thousands of them!

To install a plugin you simply download the .jar to the minecraft/plugins folder and restart the server. For example, WorldGuard is a very popular plugin that lets you add protection to different areas of your server.

To install this plugin on our Minecraft server we would use the following commands:

cd ~/minecraft/plugins
wget https://dev.bukkit.org/projects/worldguard/files/latest
sudo systemctl restart minecraft

The server will restart and the plugin will be installed. It’s that simple! To use the plugin refer to the documentation on the plugin download page to find out which commands you use to configure/interact with it.

Warning: be advised that plugins are the #1 issue for performance degradation on Minecraft servers. This isn’t because all plugins are bad. Some plugins are coded very inefficiently or perform features that require a lot of hooks in the code.

You should be careful about what plugins you install on the server and if you start having bad performance disable your plugins one by one until you find the culprit!

Reconfigure / Update Scripts

The scripts can always be reconfigured and updated by downloading the latest SetupMinecraft.sh and running the installer again. It will update all of the scripts in the Minecraft directory and reinstall the startup service for you.

Running SetupMinecraft.sh again will also give you a chance to reconfigure options such as the memory dedicated to the server, daily reboots, starting the server on boot, etc.

This will not overwrite your world or any other data so it is safe to run!

Port Forwarding

If everyone on your server is on the same LAN or WiFi network as you then you don’t need to do this. If you want people to connect from outside your local network then you need to set up port forwarding on your router.

The process for this is different for every router so the best thing to do is just look at your router and find the model # and put that in google with port forwarding for easy instructions on how to do it for your specific router.

You want to forward port 25565. The type of connection is TCP if your router asks. Once you do this people will be able to connect to your Minecraft server through your public IP address. This is different than your local IP which is usually a 192.x.x.x or 10.x.x.x. If you don’t know what that is just go to google and type “what’s my ip” and Google will kindly tell you!

Wired vs. Wireless

Going with an ethernet (wired) connection is going to be faster and more reliable. There’s so much wireless traffic and other interference in the air that running your server on WiFi is not recommended.

Even if it is working great 99% of the time it can ruin your experience very quickly if the WiFi drops for a couple of seconds and you get blown up by a creeper!

All that being said, the server works fine on wireless. The script will work fine as is with a wireless connection.


PLEASE BACK UP YOUR SERVER FIRST! The server makes automated backups by default for you in the backups folder but I recommend you back up the entire server folder yourself (basically the entire minecraft folder) any time you attempt to upgrade or downgrade. If you need to roll back to older versions it won’t work without a backup from that version or older!

The easiest way to upgrade an installation is to download the latest SetupMinecraft.sh and run it. This will automatically upgrade you to the latest version.

Upgrading and downgrading to versions that aren’t the default the script chooses is pretty simple. Simply change the Version line at the top in the SetupMinecraft.sh script:

# Minecraft Server Installation Script - James A. Chambers - https://jamesachambers.com
# More information at https://jamesachambers.com/raspberry-pi-minecraft-server-script-with-startup-service/
# GitHub Repository: https://github.com/TheRemote/RaspberryPiMinecraft

# Minecraft server version

Edit this file in your favorite text editor (you can use nano or vi on the Pi like nano SetupMinecraft.sh) and change the Minecraft version to what you want.



If you are having problems on a newer version of Minecraft and want to downgrade you can do so using a complete backup of your server before you ran it on a newer version.

The reason you can’t take server data that has been touched by a version such as 1.16.1 and go back to 1.15 is that the new version adds all sorts of new data types/structures for the new content into your server data files. If you try to roll back the old versions of the Minecraft server will not understand these data types since they didn’t exist in that version and will crash.

As long as you use a backup for your server files from that version (or older) it’s as simple as changing the version in SetupMinecraft.sh just like I show in the “Upgrading” section.

You can upgrade any old version of Minecraft to any version, but again make sure you have a backup first as it is a one way street and you will need that backup if you want to roll back!

Version History

To view the version history check out the GitHub README here:


488 thoughts on “Raspberry Pi Minecraft Server Setup Script w/ Startup Service”

  1. Avatar for Sander

    Hey, I’m having problems with my cpu usage.

    I’m using a rapsberry pi 4 running ubuntu server 64bit and I’m booting from USB3.0 to a 32gb flash drive.
    My dedicated memory is 3.5gb and set my view distance to 6.
    I even pregenerated my world in a 1000 blocks radius from spawn.

    When nobody’s on the server it uses 25% cpu but when I log in it will peak at 300% and stay stable between 150 and 200%.

    Could you help me out ?
    Thanks !

    1. Avatar for jamesachambers

      Hey waiter,

      Great question! It won’t update you automatically from the daily restarts to a different revision since I didn’t want it to upgrade people before they were ready.

      Fortunately updating is very easy! To update to a different version just run the latest SetupMinecraft again and it will update all of your scripts on your existing world for you.

  2. Avatar for NinjaCheetah

    So, I’m trying to set up the server (after the multiverse mishap), and I’m encountering the problem that it is finished loading up, but nobody can join. (Says can’t connect to server) I tried changing the ram to 2450 MB, but no luck. Raspberry Pi 4B 4GB of ram, Raspbian Buster Lite

    1. Avatar for waiterKK


      few questions:

      1) how are you trying to reach it? From inside of your LAN or outside?
      2) what are you pasting in the minecraft client?
      3) output from command “ip a s” would be nice.

      1. Avatar for NinjaCheetah

        So, I know this is kinda late but…

        After re-installing Raspbian and the server program, I found my problem: I have been putting in worlds and the server.properties file from the previous version (1.14.4), and something changed in the one of them, so I started fresh and then imported stuff a little at a time, and everything works now

        Sorry for the inconvience

  3. Avatar for Max

    Thanks for this great guide! I had crashes at first after about 10 minutes of runtime but changing the RAM to 2450MB fixed it. The server is now stable and runs fine for two people, I think there is room for a few more.

    Currently its running on a SanDisk Extreme Pro, I would like to upgrade it to use a SSD. Could I just move the minecraft directory to the SSD and create a symbolic link in the home directory so I can still use the installations script and everything? Would this method be worse in performance then booting from the SSD?

    1. Avatar for jamesachambers

      Hey Max,

      That’s perfect, the memory usually needs a little bit of tuning!

      The SSD is definitely much faster, especially for Minecraft which has a lot of I/O activity from loading/saving “chunks” as people wander the world and modify blocks. The SanDisk Extreme Pro is a great SD card (among the best) but on storage.jamesachambers.com you can see that any basically any SSD is going to be 3-10x the performance!

      A symlink to the SSD folder should do nicely. You may want to explore running the whole OS off the SSD and using a SD card bootloader as I describe how to do here but if you wanted to leave the operating system on the SD card and use a symlink to the SSD and only run the Minecraft server from it that should be fine too.

      You shouldn’t incur much of a performance penalty from a symlink to the SSD but any system IO calls that Minecraft makes may slow it down slightly since the Minecraft server is (mostly) single threaded. Running the whole thing off a SSD is ideal but the performance penalty should be quite small and will be leagues ahead of running the whole thing off a micro SD. Hope that helps and let us know how it goes!

      1. Avatar for waiterKK

        No, not especially, it depends on the load on the server, I have pi4 4GB and minecraft server where I got max 6 players playing simultanoesly at the same time and RAM usage were never higher than 1.1G, but maybe in the future it will get higher and maybe it would need more than 2GB.

  4. Avatar for Matt

    Hi! Great guide, helped me so much in setting this up. I’m getting a weird error that I figured you might be able to help with. Playing fine for about 10 minutes, then I’m kicked and the server is closed giving the prompt “Internal Exception: java.IOException: An existing connection was forcibly closed by the remote host” when I never touched anything on the server side. Any idea what that is?

  5. Avatar for Sportsman225

    Thank you James for the guide! It helped me out so much as a linux novice. One question though. I’m trying to download plugins to my server but I keep getting a 403 error. This happens with bukkit and Spigot (though I don’t even know if spigot plugins are compatible with paper). Do you think you know why this must be?

    1. Avatar for Sportsman225

      Follow up comment for more information. I am able to connect to the Pi through SSH so it’s definitely on the network. I am using the same command you have in the plugins section (wget https://dev.bukkit.org/projects/worldguard/files/latest. I am able to ping http://www.facebook.com so it’s connected to the internet. Not sure if the bukkit servers were down or what but I was able to download some plugins to my Windows 10 PC so I don’t think that’s it either.

        1. Avatar for Bryan

          Linux noob here…

          I’m running into a similar issue. I downloaded the mod .jar to my windows PC, and uploaded it to google drive.
          I put the wget command to download the .jar from my google drive and rebooted.

          HOWEVER, my server is not recognizing the mod. I got it directly from spigot. Do I need to unzip the .jar? (still wrapping my head around how .jar works)
          Once you got it into the plugins folder, did you have to do any other installation tricks?

          1. Avatar for Bryan

            Figured out what I was doing wrong.
            I was downloading the html file and not the jar. I ended up moving the plugin from my pc to the pi using winscp.

  6. Avatar for waiterKK

    Hey James,

    huge thanks for this tutorial, with this one I was able to create minecraft server on pi 4 which works like a charm 😀 I’m playing on it with my wife since 2 days and it works flawlessly, there is definitely room and juice for some more players which I will definitely test soon and let you know about the performance!

    Also this was possible thanks to your tutorial on how to boot pi 4 from ssd disk, this definitely improves the overall performance!

    Great job, keep it up!

  7. Avatar for NinjaCheetah

    So I use Multiverse, and had some trouble with the server not staying online I updated to 1.15.1. My plan was to get everything off, and then completely re-install. Instead I decided to use the backup system to restore it… problem is I lost everything because the backups do not save anything other than world, world_nether and world_the_end. Anything I can do to get them back?

    1. Avatar for jamesachambers

      Whoa, now that’s an interesting use case that isn’t currently accounted for and this is the first I’ve heard of someone doing multiverse! Given that, it sounds like I need to expand the backup system to account for that.

      Now whether it’s recoverable depends on whether you followed my instructions to restore a backup. If you followed these instructions:

      cd ~/minecraft
      rm -rf world world_nether world_the_end
      tar -xf backups/2019.

      Then you should still have everything in there and would only need to redo your properties files like server.properties.

      If you instead deleted the entire folder first or reformatted your SD card then no it wouldn’t have captured those additional multiverse folders in the backup. I’m sorry if this is the case, you’re the first person this has happened to and all I can do is make sure that you’re also the last and make sure the backups capture these going forward!

      EDIT: The expanded backup system is now live. Now each snapshot will be your entire server folder!

  8. Avatar for OBJ

    Hi James,
    I followed your instructions and changed the version in setupminecraft.sh to 1.14.4, but the server remains in 15.1
    Any help or advice?

      1. Avatar for jamesachambers

        Hey OBJ,

        For all of these you will type “screen -r minecraft” first and use the Minecraft console. To make yourself a server operator type:

        op yourusername

        Now you can issue server commands from inside the game. To change the difficulty you will type:

        /difficulty hard

        You can also use easy or normal. There’s lots of other commands too if you type /help or just “help” in the console. It will spam you with a very large list of commands!

    1. Avatar for jamesachambers

      Absolutely! First make sure the server is completely closed. You can use sudo systemctl stop minecraft or just run stop.sh by typing ./stop.sh inside the minecraft folder. After you’ve done this type:

      screen -r minecraft and make sure it tells you that there are no screens to resume.

      Now at this point it’s definitely easiest to just completely delete the old minecraft folder with sudo rm -rf ~/minecraft (make sure you don’t have anything in the old server you want!).

      Now if you run SetupMinecraft.sh again with the change you made in the version it will download the version of Minecraft that you specified and you should be good to go!

      Now open up SetupMinecraft.sh again and make

  9. Avatar for XBUG

    Been runing the server for almost a week with a 4GB Rpi with no problems. Gave it 2550 MB of memory and I also selected the option to run the server on boot, but this has been unsuccessful so far and I have no idea why. I ended un changing the restart.sh so that it ran the stop.sh and then the start.sh, but i feel like rebooting is better. Would there be a problem if I don’t reboot? And if I need to, what should I be checking?

    1. Avatar for jamesachambers

      Hey XBUG,

      The first thing to do is run SetupMinecraft.sh again which will let you reconfigure the service. If it’s still not working after a reconfiguration, take a look at crontab -e and you should see it in there. The line looks like this (depending on your user name):

      0 4 * * * /home/pi/minecraft/restart.sh

      Which means to reboot at 4 am. You can use any variation of crontab to do this though!

    1. Avatar for Jonathan Pease

      I seem to be having the same issue. No crash error that I can find, just randomly after maybe 15 minutes people are kicked from the server and I have to go back to my Pi and re-start the server. Can’t figure out why.

  10. Avatar for Gijs

    Really appreciate the work you have done.
    I’ve had a lot of fun on playing on the server with friends.
    I just had one question will you be making a 1.15 version?

    1. Avatar for stizn

      I don’t know if this is recommended from James, but heres what I did:

      make sure, that you have your world backups if something goes wrong!

      go to your minecraft folder -> cd minecraft
      stop your server -> ./stop.sh
      make a backup of your start.sh -> sudo cp start.sh start.sh.bak
      edit the start file -> sudo nano start.sh
      search for:
      wget -O paperclip.jar https://papermc.io/api/v1/paper/1.14.4/latest/download
      and change it to:
      wget -O paperclip.jar https://papermc.io/api/v1/paper/1.15.1/latest/download
      then save the changes -> Strg+X
      start the server -> ./start.sh

      This worked for me, and my server is on 1.15.1 now.


  11. Avatar for Jeremy

    Hey James

    First, thank you a lot for your work! That’s great.

    I’ve been able to launch your script on my Rpi 3B+ (running Raspbian Buster Lite) and all, server is running but I’ve never been asked to choose allocated RAM or any other thing. Did I do something wrong? I strictly copy-pasted the command lines to get the script and run it.
    I tried to redo the operation but the script stops as soon as he detects an already existing Minecraft folder. And that seems perfectly normal after looking at the script: command “exit” if Minecraft folder exists.

    Second point: I connected to my server right after it finished starting, but the world it has generated is pretty much… empty. Just one island and then an ocean all around. Does the server need tweaking for world generation?

    Thanks in advance for the answer

    1. Avatar for Jeremy

      Hi there!

      I found what was wrong… but I don’t get why it happened: using wget command on RPI I managed to download a script, but it was very short (like 25 lines). I had a look at this script and he never asked anything about automatic reboot etc. So I tried to reach the URL on my PC and then, there was a much more complete script there. I downloaded it from my PC and then used it on my PI and everything was okay then.

      I still wonder how this could have been possible! If you have the answer, I would love to know it.

      Thank you for this James, you made a really great tool.

  12. Avatar for Flipo

    Excellent work ! Thanks a lot !
    Just a little question : how to update the future minecraft serveur version when it release ?
    May be with the SetupMinecraft.sh ?

  13. Avatar for Zrov

    this might be a silly question.
    after I quit the Minecraft server terminal, I got send into the first login/password raspbian screen
    how do i get back to the Minecraft server terminal again?

  14. Avatar for Zrov

    hello. seems like Im stuck after Timings Reset. any input I type in will be received by minecraft.
    so I cannot input any sudo or anything.

    i cant even type /help
    it says “Unkown command. Type /help for help.”

  15. Avatar for Harrison

    Hi there,
    I’ve had my server running for months now, it hasn’t ever really had a major problem,
    However, starting yesterday, I have been unable to join at all, everytime someone tries to connect the server crashes, It produces the error report below,

    # There is insufficient memory for the Java Runtime Environment to continue.
    # Native memory allocation (mmap) failed to map 161652736 bytes for committing reserved memory.

    I’ve tried rerunning the setup script and setting the max memory to even beyond what the Pi has, still is not working,
    Any ideas?

    1. Avatar for Harrison

      Never mind this,
      It appears the main world somehow became corrupted, even when launching it client side, it crashed the game.
      Thank god for backups

Leave a Comment

Your email address will not be published. Required fields are marked *

Type here..