4.6 KiB
layout | title | tab | docsitem |
---|---|---|---|
docs | Installation · Docs · MSM | docs | installation |
Installation
Note: You must have both sudo
and cron
install on your system for MSM to function properly.
Install MSM on a Debian server (Ubuntu etc.) by pasting this line in your terminal:
wget -q https://git.io/Sxpr9g -O /tmp/msm && bash /tmp/msm
Or on RedHat using:
wget -q https://git.io/lu0ULA -O /tmp/msm && bash /tmp/msm
Or [suggest a new platform][issues].
You can paste the links in your browser to read the script that will be executed. Or, if you don't want to trust a script, install MSM manually:
Manual Installation
-
This script uses the following tools: screen, rsync, zip, jq. Let's install them:
sudo apt-get update sudo apt-get install screen rsync zip jq
-
Download MSM's default configuration file, then read through it and change anything you want. Be sure to carry any changes you make forwards through this guide.
sudo wget https://git.io/6eiCSg -O /etc/msm.conf
-
Create the user and directories MSM needs:
First create the folder where MSM will store server, jars, and other files:
sudo mkdir /opt/msm
Second, add the user and set permissions
sudo useradd minecraft --home /opt/msm sudo chown minecraft /opt/msm sudo chmod -R 775 /opt/msm
If you want to store your world folders in RAM for a performance boost, create this directory in ramdisk (
/dev/shm
is the default in Ubuntu):sudo mkdir /dev/shm/msm sudo chown minecraft /dev/shm/msm sudo chmod -R 775 /dev/shm/msm
-
Download the MSM script and place it in
/etc/init.d
:sudo wget https://git.io/J1GAxA -O /etc/init.d/msm
-
Set script permissions, and integrate script with startup/shutdown:
sudo chmod 755 /etc/init.d/msm sudo update-rc.d msm defaults 99 10
-
Create a shortcut so we can use just type
msm
:sudo ln -s /etc/init.d/msm /usr/local/bin/msm
-
Ask MSM to update, getting the latest files:
sudo msm update
-
Setup MSM's included cron script for scheduled tasks and force cron to load script:
sudo wget https://git.io/pczolg -O /etc/cron.d/msm sudo service cron reload
If you understand cron, give it a read and alter the timings to your liking.
-
Create a jar group to manage current and future Minecraft versions:
sudo msm jargroup create minecraft minecraft
-
Create a new server, and tell it to use the latest of those Minecraft jars:
sudo msm server create <server-name> sudo msm <server-name> jar minecraft
-
Start your new server:
Before you start make sure to let MSM know which version of Minecraft you are running by adding the following line to
/opt/msm/servers/<server-name>/server.properties
msm-version=minecraft/1.7.0
The available strings are currently:
minecraft/1.2.0
minecraft/1.3.0
minecraft/1.7.0
and abovecraftbukkit/1.2.0
craftbukkit/1.3.0
and above
See [versioning/versions.txt][versions] for the up to the minute list.
Once that clunky step it out the way (I'm working on making it more transparent) let's start the server:
sudo msm <server-name> start
-
Move generated worlds to the world storage folder:
When a Minecraft server starts for the first time, it generates a new world according to the
level-name
entry inserver.properties
, which isworld
by default.MSM requires that you move this newly generated world (and any accompanying folders such as
world_nether
orworld_the_end
in the case of CraftBukkit) to a new directory which you must create inside of the server root folder calledworldstorage
.After moving them, run
sudo msm <server-name> worlds load
to create the symlinks needed for the server to recognize new worlds.See [Concepts → Server Layout][layout] for further explanation.
Check Out The Commands
If stuck, you can always type msm help
for a quick list of all commands, or if you want to know more about a command read the [command documentation][commands].
[config]: {{ site.baseurl }}/docs/configuration/ [cron]: {{ site.baseurl }}/docs/concepts/cron.html [commands]: {{ site.baseurl }}/docs/commands/ [#26]: https://github.com/marcuswhybrow/minecraft-server-manager/issues/26 [versions]: https://github.com/marcuswhybrow/minecraft-server-manager/blob/latest/versioning/versions.txt [layout]: {{ site.baseurl }}/docs/concepts/layout.html [issues]: https://github.com/marcuswhybrow/minecraft-server-manager/issues