How do I set up RLCraft on a Linode?
I wanted to set up and play RLCraft on my Linode, but I couldn't find any guides on how to get the server set up and running within Linux. How do I get an RLCraft server running on Linode?
3 Replies
Hello!
I recently set up an RLCraft server! To get it up and running, I had to combine a few different guides I found on the internet. Hopefully this post makes it a bit easier to get it installed :)
Note: This was installed on Ubuntu 18.04. After deploying my Ubuntu image, I also made sure to run through our Securing your Server doc, as it has some great suggestions to harden your Linodes security. Later on in this post I create a secondary user called minecraft
to run this server. If you are following along the Securing your Server guide, you can supplement your usual secondary user with minecraft
.
As far as plan sizes, I chose to run this from a Dedicated4GB Linode plan, as 4GB of RAM is recommended from the RLCraft developers, and having two dedicated cores will allow my users to expect a stable performance.
First, we will need to install some tools for later. We will need to install Java version 8 to get the server running, and I'd also highly recommend installing screen and unzip as well:
apt install openjdk-8-jre screen unzip
Once that software is installed, I go ahead and create my secondary user, which is where I store and run my RLCraft server from:
adduser minecraft
adduser minecraft sudo
Once I have made some necessary changes to security, such as adding my public ssh key to my Linode, I log into my minecraft user and create a directory called minecraftserver
, where I contain and run RLCraft from:
mkdir minecraftserver
cd minecraftserver
Next, I make to install the appropriate version of Forge, which allows RLCrafts mods to work:
wget https://files.minecraftforge.net/maven/net/minecraftforge/forge/1.12.2-14.23.5.2838/forge-1.12.2-14.23.5.2838-installer.jar
I then installed the forge server by running the following command. Note, this is the current version that RLCraft uses, and this may change in the future:
java -jar forge-1.12.2-14.23.5.2838-installer.jar --installServer
From here, you will want to download the RLCraft server files to your home computer, and either use a utility like scp or filezilla to move the .zip file to your Linode. You can find the server files here. At the time of writing, the current server version is RLCraft Server Pack 1.12.2 - Beta v2.8.1
.
Once the file is on your Linode, ensure that it is located in the minecraftserver
folder, unzip the folder using unzip:
unzip RLCraft+Server+Pack+1.12.2+-+Beta+v2.8.1.zip
Once unzipped, we are nearly done! We will now need to configure a start up script. Using nano
, I created the file start.sh
within the minecraftserver directory, and I included the following text in this script:
java -Xms1G -Xmx3G -jar forge-1.12.2-14.23.5.2838-universal.jar
I then made the script executable:
chmod u+x start.sh
and then ran it:
./start.sh
A large amount of text will appear on the screen as it is starting up the server and preparing some of the mods, however, the server will stop as we have not yet accepted the eula. We can do this by changing eula=false
to eula=true
in the eula.txt
file within the minecraftserver
directory.
Once that has been done, we will want to open up port 25565 for minecraft:
ufw allow 25565
Finally, we are ready to play! To start our server, run the following command:
screen /home/minecraft/minecraftserver/start.sh
Screen is essential, as it allows us to disconnect for our Linode without interrupting the RLCraft server. To disconnect, simply hold CTRL+A, and hit the d key.
Now go and play some RLCraft!
Is there a way to set the start.sh to start on bootup??
Thanks
Is there a way to set the start.sh to start on bootup??
There is. Unfortunately, it requires writing/installing a systemd(1) service…and then configuring your new service to run at system start.
Disturbing the guts of systemd(1) is definitely not for the faint of heart. One screwup can render your system (permanently) unworkable…and you get very little information about what's wrong, why it's wrong and how to fix it (most of the information you do get is circular in nature as in you can't get there from here).
Cage matches with systemd(1) can cause your blood pressure to go up to the danger zone very quickly…and there seems to never, ever be a simple solution to a systemd(1) problem. Trust me on this…
Just in case you're feeling lucky:
http://tuxgraphics.org/npa/systemd-scripts/
See also:
Don't say you weren't warned!
-- sw