Minecraft package for Synology NAS

UPDATE – The instructions and notes on this page apply to both the Minecraft and the CraftBukkit packages hosted on my repo. Now works on QorIQ CPU Synology models!

Minecraft is an intriguing game. I only recently bought it after a friend had recommended it. There’s a lot to like: the striking retro visual style, the mellow sporadic music, exploring the procedurally generated world, the logical way items are crafted, multiplayer collaboration, and emergent gameplay. Notch its creator certainly deserves the fortune he’s now sitting on. I thoroughly recommend you watch this short documentary all about it.

Minecraft Package Info

Right after I released the Java package for Synology a couple of people mentioned that they wanted to use it for installing a Minecraft server. Now that I have the game, I decided to try that too. I had assumed that the ARM CPUs would not be capable of running it, and the first tests seemed to confirm this. I decided it would be worth creating a package nonetheless since the Intel CPU NAS units would be ok, especially with their extra RAM. However, with a little performance tuning it actually runs acceptably (no lag when mining blocks) on my ARM powered DS111 which only has 256MB. The CPU load is 100% for a while at first, but soon after playing it settles down to around 60%. I have briefly tested with two players connected and after a bit of lag at first (one second delay to mine a block) it does seem to settle down.

Minecraft running showing draw distance and server load

Minecraft showing draw distance and server load running on a Synology DS111

 

Installation

  • This package is not CPU specific. If you have Java it will run. At the moment that means ARM, Intel and QorIQ PowerPC processors, but not the older PowerPCs.
  • In the User Control Panel in DSM, enable the User Homes service.
  • Install the package directly from Package Center in DSM. In Settings -> Package Sources add my package repository URL which is http://packages.pcloadletter.co.uk. You will need to install either one of my Java SE for Embedded packages first (Java 6 or 7).

Notes

  • The package fetches the minecraft server jar file from Mojang as it is installed. I am complying with their wish that no one redistributes it.
  • The server daemon script checks the amount of system RAM and scales the Java heap size appropriately. It also applies a few performance tweaks to Java to try to reduce garbage collection latency.
  • The first time you run the server it will create a new world, which can take a few minutes. You cannot interrupt this but you can check on progress by repeatedly viewing the Log tab.
  • Because the time investments in playing Minecraft can be so considerable, when you uninstall the package it will back up the world folder and settings to /volume1/public/minecraftworld.todaysdate.bak to prevent accidental deletion.
  • The package supports upgrades to future versions while preserving the world folder and server settings.
  • If you want to transplant an existing world folder into the server, copy it to /volume1/@appstore/Minecraft. You will also need to run chown -R minecraft /volume1/@appstore/Minecraft to grant ownership of the files to the daemon user.
  • The first time you run the package, the server config file /volume1/@appstore/Minecraft/server.properties is generated. The next time it is launched, my script reduces the default draw distance for ARM CPUs from 10 chunks to 7. This was appropriate for my DS111 to prevent latency when mining blocks, but you may wish to reduce this further on the J series NAS units which have less RAM and slower CPUs. Other server files (white-list.txt etc.) are found in the same folder. For CraftBukkit the files are in the folder /volume1/@appstore/Craftbukkit/server.properties (note the capitalization – the CraftBukkit project seemed to change this after I had already created the package with a lower case ‘b’).
  • The simplest way to edit these config files if you’re not really confident with Linux is to install Merty’s Config File Editor package, which requires the official Synology Perl package to be installed too (since DSM 4.2). Load Config File Editor, then in the dropdown menu edit Config File Editor’s own config (it’s the last in the list) and add the lines:
    /volume1/@appstore/Minecraft/server.properties,Minecraft-properties
    /volume1/@appstore/Minecraft/white-list.txt,Minecraft-whitelist
    /volume1/@appstore/Minecraft/ops.txt,Minecraft-ops

    Make sure to add an extra blank line underneath, save, then relaunch CFE and you’ll have entries for Minecraft in the dropdown. You’ll need to restart the Minecraft package for any changes to take effect.
  • It was a bit tricky to get the server to shut down gracefully without just killing the Java process. We need it to shutdown properly so it saves the active chunks to disk first. Most of the guides on the Net use the screen binary which isn’t included with Synology DSM, and I didn’t want to have to make a version of the package for each CPU architecture. I found that I could use tail to send the last line of the file /tmp/stdin.minecraft to the server (/tmp/stdin.craftbukkit for the CraftBukkit package). This is how the stop command is issued. You could send your own commands, for instance echo say Hello players >> /tmp/stdin.minecraft. You can verify that the command was received by looking at the server log in Package Center.
  • The server runs on the default TCP port for Minecraft (25565) so you will need to port forward this on your router if you want it to be publicly accessible.
 

Package scripts

For information, here are the package scripts so you can see what it’s going to do. You can get more information about how packages work by reading the Synology Package wiki.

installer.sh

#!/bin/sh

#--------MINECRAFT/CRAFTBUKKIT installer script
#--------package maintained at pcloadletter.co.uk

if [ "${SYNOPKG_PKGNAME}" == "Minecraft" ]; then
  DOWNLOAD_PATH="http://s3.amazonaws.com/MinecraftDownload/launcher"
  DOWNLOAD_FILE="minecraft_server.jar"
  UPGRADE_FILES="server.properties *.txt world"
fi
if [ "${SYNOPKG_PKGNAME}" == "Craftbukkit" ]; then
  DOWNLOAD_PATH="http://cbukk.it"
  DOWNLOAD_FILE="craftbukkit-beta.jar"
  UPGRADE_FILES="server.properties *.txt *.yml world world_nether world_the_end plugins bukkit_update"
fi

DOWNLOAD_URL="${DOWNLOAD_PATH}/${DOWNLOAD_FILE}"
DAEMON_USER="`echo ${SYNOPKG_PKGNAME} | awk {'print tolower($_)'}`"
DAEMON_ID="${SYNOPKG_PKGNAME} daemon user"
DAEMON_PASS="`openssl rand 12 -base64 2>/dev/null`"
MIGRATION_FOLDER="${DAEMON_USER}_data_mig"
ENGINE_SCRIPT="/var/packages/${SYNOPKG_PKGNAME}/scripts/launcher.sh"
INSTALL_FILES="${DOWNLOAD_URL}"
source /etc/profile
TEMP_FOLDER="`find / -maxdepth 2 -name '@tmp' | head -n 1`"
PRIMARY_VOLUME="/`echo $TEMP_FOLDER | cut -f2 -d'/'`"
WORLD_BACKUP="${PRIMARY_VOLUME}/public/${DAEMON_USER}world.`date +\"%d-%b\"`.bak"

preinst ()
{
  if [ -z ${JAVA_HOME} ]; then
    echo "Java is not installed or not properly configured. JAVA_HOME is not defined. "
    echo "Download and install the Java Synology package from http://wp.me/pVshC-z5"
    exit 1
  fi
  
  if [ ! -f ${JAVA_HOME}/bin/java ]; then
    echo "Java is not installed or not properly configured. The Java binary could not be located. "
    echo "Download and install the Java Synology package from http://wp.me/pVshC-z5"
    exit 1
  fi
  
  #is the User Home service enabled?
  UH_SERVICE=maybe
  synouser --add userhometest Testing123 "User Home test user" 0 "" ""
  UHT_HOMEDIR=`cat /etc/passwd | sed -r '/User Home test user/!d;s/^.*:User Home test user:(.*):.*$/\1/'`
  if echo $UHT_HOMEDIR | grep '/var/services/homes/' > /dev/null; then
    if [ ! -d $UHT_HOMEDIR ]; then
      UH_SERVICE=false
    fi
  fi
  synouser --del userhometest
  #remove home directory (needed since DSM 4.1)
  [ -e /var/services/homes/userhometest ] && rm -r /var/services/homes/userhometest
  if [ ${UH_SERVICE} == "false" ]; then
    echo "The User Home service is not enabled. Please enable this feature in the User control panel in DSM."
    exit 1
  fi

  cd ${TEMP_FOLDER}
  for WGET_URL in ${INSTALL_FILES}
  do
    WGET_FILENAME="`echo ${WGET_URL} | sed -r "s%^.*/(.*)%\1%"`"
    [ -f ${TEMP_FOLDER}/${WGET_FILENAME} ] && rm ${TEMP_FOLDER}/${WGET_FILENAME}
    wget ${WGET_URL}
    if [[ $? != 0 ]]; then
      if [ -d ${PUBLIC_FOLDER} ] && [ -f ${PUBLIC_FOLDER}/${WGET_FILENAME} ]; then
        cp ${PUBLIC_FOLDER}/${WGET_FILENAME} ${TEMP_FOLDER}
      else     
        echo "There was a problem downloading ${WGET_FILENAME} from the official download link, "
        echo "which was \"${WGET_URL}\" "
        echo "Alternatively, you may download this file manually and place it in the 'public' shared folder. "
        exit 1
      fi
    fi
  done
  
  exit 0
}


postinst ()
{
  #create daemon user
  synouser --add ${DAEMON_USER} ${DAEMON_PASS} "${DAEMON_ID}" 0 "" ""
  
  mv ${TEMP_FOLDER}/${DAEMON_USER}*.jar ${SYNOPKG_PKGDEST}/${DAEMON_USER}.jar
  
  #determine the daemon user homedir and save that variable in the user's profile
  #this is needed because new users seem to inherit a HOME value of /root which they have no permissions for
  DAEMON_HOME="`cat /etc/passwd | grep "${DAEMON_ID}" | cut -f6 -d':'`"
  su - ${DAEMON_USER} -s /bin/sh -c "echo export HOME=\'${DAEMON_HOME}\' >> .profile"
  
  #change owner of folder tree
  chown -R ${DAEMON_USER} ${SYNOPKG_PKGDEST}
  
  exit 0
}


preuninst ()
{
  #make sure server is stopped
  su - ${DAEMON_USER} -s /bin/sh -c "${ENGINE_SCRIPT} stop ${SYNOPKG_PKGNAME} ${SYNOPKG_PKGDEST}"
  sleep 10
  
  #if a world exists, back it up to the public folder, just in case...
  if [ -d ${SYNOPKG_PKGDEST}/world ]; then
    if [ ! -d ${WORLD_BACKUP} ]; then
      mkdir -p ${WORLD_BACKUP}
    fi
    for ITEM in ${UPGRADE_FILES}; do
      mv ${SYNOPKG_PKGDEST}/${ITEM} ${WORLD_BACKUP}
    done
  fi
  
  exit 0
}


postuninst ()
{
  #remove daemon user
  synouser --del ${DAEMON_USER}
  
  #remove daemon user's home directory (needed since DSM 4.1)
  [ -e /var/services/homes/${DAEMON_USER} ] && rm -r /var/services/homes/${DAEMON_USER}
  
  exit 0
}


preupgrade ()
{
  #make sure the server is stopped
  su - ${DAEMON_USER} -s /bin/sh -c "${ENGINE_SCRIPT} stop ${SYNOPKG_PKGNAME} ${SYNOPKG_PKGDEST}"
  sleep 10
  
  #if a world exists, back it up
  if [ -d ${SYNOPKG_PKGDEST}/world ]; then
    mkdir ${SYNOPKG_PKGDEST}/../${MIGRATION_FOLDER}
    for ITEM in ${UPGRADE_FILES}; do
      if [ -e ${SYNOPKG_PKGDEST}/${ITEM} ]; then
        mv ${SYNOPKG_PKGDEST}/${ITEM} ${SYNOPKG_PKGDEST}/../${MIGRATION_FOLDER}
      fi
    done
  fi
  
  exit 0
}


postupgrade ()
{
  #use the migrated data files from the previous version
  if [ -d ${SYNOPKG_PKGDEST}/../${MIGRATION_FOLDER}/world ]; then
    for ITEM in ${UPGRADE_FILES}; do
      if [ -e ${SYNOPKG_PKGDEST}/../${MIGRATION_FOLDER}/${ITEM} ]; then
        mv ${SYNOPKG_PKGDEST}/../${MIGRATION_FOLDER}/${ITEM} ${SYNOPKG_PKGDEST}
      fi
    done
    rmdir ${SYNOPKG_PKGDEST}/../${MIGRATION_FOLDER}
    
    #daemon user has been deleted and recreated so we need to reset ownership (new UID)
    chown -R ${DAEMON_USER} ${SYNOPKG_PKGDEST}
  fi
  	
  exit 0
}
 

start-stop-status.sh

#!/bin/sh

#--------MINECRAFT/CRAFTBUKKIT start-stop-status script
#--------package maintained at pcloadletter.co.uk

DAEMON_USER="`echo ${SYNOPKG_PKGNAME} | awk {'print tolower($_)'}`"
DAEMON_ID="${SYNOPKG_PKGNAME} daemon user"
ENGINE_SCRIPT="/var/packages/${SYNOPKG_PKGNAME}/scripts/launcher.sh"
DAEMON_USER_SHORT=`echo ${DAEMON_USER} | cut -c 1-8`

daemon_status ()
{
    ps | grep "^ *[0-9]* ${DAEMON_USER_SHORT} .*java" > /dev/null
}

case $1 in
  start)
    DAEMON_HOME="`cat /etc/passwd | grep "${DAEMON_ID}" | cut -f6 -d':'`"
    
    #set the current timezone for Java so that log timestamps are accurate
    #we need to use the modern timezone names so that Java can figure out DST
    SYNO_TZ=`cat /etc/synoinfo.conf | grep timezone | cut -f2 -d'"'`
    SYNO_TZ=`grep "^${SYNO_TZ}" /usr/share/zoneinfo/Timezone/tzname | sed -e "s/^.*= //"`
    grep "^export TZ" ${DAEMON_HOME}/.profile > /dev/null \
     && sed -i "s%^export TZ=.*$%export TZ='${SYNO_TZ}'%" ${DAEMON_HOME}/.profile \
     || echo export TZ=\'${SYNO_TZ}\' >> ${DAEMON_HOME}/.profile
    
    su - ${DAEMON_USER} -s /bin/sh -c "${ENGINE_SCRIPT} start ${DAEMON_USER} ${SYNOPKG_PKGDEST} &"
    exit 0
  ;;
  
  stop)
    su - ${DAEMON_USER} -s /bin/sh -c "${ENGINE_SCRIPT} stop ${DAEMON_USER} ${SYNOPKG_PKGDEST}"
    exit 0
  ;;
  
  status)
    if daemon_status ; then
      exit 0
    else
      exit 1
    fi
  ;;
  
  log)
    echo "${SYNOPKG_PKGDEST}/server.log"
    exit 0
  ;;
esac
 

launcher.sh

#!/bin/sh

#--------MINECRAFT/CRAFTBUKKIT server launcher script
#--------package maintained at pcloadletter.co.uk
 
#--------Allows graceful shutdown of server without CPU-specific binaries
#--------You can send commands to the running server like so:
#--------    echo say Hello players >> /tmp/stdin.minecraft
#--------    echo say Hello players >> /tmp/stdin.craftbukkit

DAEMON_USER=$2
SYNOPKG_PKGDEST=$3
DAEMON_USER_SHORT=`echo ${DAEMON_USER} | cut -c 1-8`
JAR_FILE=${SYNOPKG_PKGDEST}/$2.jar

case $1 in
  start)
    if [ -f /tmp/stdin.${DAEMON_USER} ]; then
      rm /tmp/stdin.${DAEMON_USER}
    fi
    touch /tmp/stdin.${DAEMON_USER}
    cd ${SYNOPKG_PKGDEST}
    if [ ! -f syno-marker.txt ]; then
      if [ -f server.properties ]; then
        sed -i "s/A Minecraft Server/A Synology Minecraft Server/" server.properties
  
        #ARM CPU lags a lot, so reduce drawing distance from 10 chunks to 6
        cat /proc/cpuinfo | grep "CPU architecture: 5TE" > /dev/null \
         && sed -i "s/^view-distance=10/view-distance=6/" server.properties
  
        #record that these mods have been made
        echo config updated > syno-marker.txt
      fi
    fi
    JAVA_OPTS='-XX:+UseConcMarkSweepGC -XX:+CMSIncrementalPacing -XX:+AggressiveOpts'
    RAM=$((`free | grep Mem: | sed -e "s/^ *Mem: *\([0-9]*\).*$/\1/"`/1024))
    if [ $RAM -le 128 ]; then
      JAVA_MAX_HEAP=80M
    elif [ $RAM -le 256 ]; then
      JAVA_MAX_HEAP=192M			
    elif [ $RAM -le 512 ]; then
      JAVA_MAX_HEAP=448M
    elif [ $RAM -le 1024 ]; then
      JAVA_MAX_HEAP=896M
    elif [ $RAM -le 2048 ]; then
      JAVA_MAX_HEAP=1792M
    elif [ $RAM -gt 2048 ]; then
      JAVA_MAX_HEAP=2048M
    fi
    JAVA_START_HEAP=${JAVA_MAX_HEAP}
    tail -n 0 -f /tmp/stdin.${DAEMON_USER} | java -Xmx${JAVA_START_HEAP} -Xms${JAVA_MAX_HEAP} ${JAVA_OPTS} -jar ${JAR_FILE} nogui
  ;;

  stop)
    echo say shutting down.. >> /tmp/stdin.${DAEMON_USER}
    sleep 5
    echo stop >> /tmp/stdin.${DAEMON_USER}
    sleep 10
    kill -9 `ps | grep "^ *[0-9]* ${DAEMON_USER_SHORT}.*tail -n 0 -f /tmp/stdin.${DAEMON_USER}" | sed -e "s/^ *\([0-9]*\).*$/\1/"`
    if [ -f /tmp/stdin.${DAEMON_USER} ]; then
      rm /tmp/stdin.${DAEMON_USER}
    fi
  ;;
esac
 

Changelog:

  • 0015 updated to Minecraft 1.5.2, CraftBukkit beta 1.5.2-R0.1
  • 0014 updated to Minecraft 1.4.7, CraftBukkit beta 1.4.7-R0.1, and fixes for DSM 4.2
  • 013 updated to Minecraft 1.4.6, and CraftBukkit beta 1.4.6-R0.3
  • 012 updated to Minecraft 1.4.5, and CraftBukkit 1.3.2-R1.0
  • 011 updated to Minecraft 1.4.2
  • 010 updated to Minecraft 1.3.2, and CraftBukkit 1.3.1-R2.0
  • 009 package scripts fully re-written to unify the Minecraft and CraftBukkit packages
  • 008 updated to Minecraft 1.3.1, unified most scripts into a single installer script, and incorporated minor enhancements from my other packages
  • 007 updated to Minecraft 1.2.3
  • 006 reduced Java max heap to 80MB on 128MB systems, fixed timezone support each server start
  • 005 fixed Java max heap size behaviour on systems with more than 2GB RAM
  • 004 fixed wget SSL problem preventing jar download on some systems
  • 003 updated to Minecraft 1.1
  • 002 server config files are also migrated during version upgrades, and backed up during uninstall. My script’s edits to server.properties are made only once, rather than every startup
  • 001 intial public release
 
 
About these ads

556 thoughts on “Minecraft package for Synology NAS

  1. psymon75

    Hello,
    That’s a good spk but I can’t install it… It can’t download the minecraft_server.jar… Impossible to continue the installation :/

    Reply
    1. patters Post author

      It could have been timing out fetching the jar file because of the increased demand (Minecraft 1.1 came out today). I just updated the package, and it worked for me just now.

      Reply
      1. patters Post author

        What is your model of NAS and DSM version please? I tested against an unmodded (no bootstrap) RS411 on 3.2 build 1955 today after you posted and it was fine.

    1. patters Post author

      Could be that the version of wget is different on Intel systems, but maybe the bootstrap puts an older one on until you install wget-ssl from ipkg. I’ve realised that the file can be downloaded without https anyway, so I have updated the package. Let me know it it works for you now.

      Reply
  2. Fraggle

    As far as I inderstood this package is for arm based synology NAS. Do you have one for an atom based? I have the synology 712+ and would like to install minecraft there. If you have one it would be great if I can download and install it followed by an review for you.

    Reply
  3. jordymaesJordy

    First I want to say that this is a great package.
    But i’ve got a few installation problems.
    Package is fully installed and running.

    But the log says the following: “Can’t keep up! Is the time changed or server overloaded?”
    – CPU is running 99% all the time (now 2-3 hours)
    – I’ve a Synology DS211+

    My question is:
    – How can I play minecraft?
    – How do I start the game?

    Really don’t know what to do with it.

    Thanks in advance.

    Reply
    1. patters Post author

      Not sure about the CPU load – mine settled down quite quickly. The message about it not keeping up is pretty normal.
      If you don’t know about Minecraft, it’s a game/phenomenon which you need to buy the client for and it costs 20 euros.
      Here’s a review:

      http://www.edge-online.com/reviews/minecraft-review

      The only point of running a server is if you want to play it online with friends. Since it seems that the ARM CPU and limited system RAM aren’t powerful enough to host multiplayer games, it’s just a curiosity really, but I guess this package could be useful to owners of synos with Intel processors.

      Reply
      1. jordymaes

        Hi,

        Thanks for your reply.
        I’ve got minecraft client (bought it)
        But is there any way to customize my server (with a control panel). Only using it for my LAN network.

      2. patters Post author

        Ah ok. There’s not much to customize at all, except the settings in /volume1/@appstore/Minecraft/server.properties. No control panel, that’s normal.
        For the CPU load – bear in mind that my draw distance reduction tweak will only get made the second time the package starts. So maybe if you stop and start it again it will settle down.

  4. jordymaes

    Ok thanks.
    And how exacly can you ‘go’ to /volume1/@appstore/Minecraft/server.properties
    Because it’s hidden.
    You can go to it via SSH but then how you edit it? Or is there a more easier way?

    Reply
    1. patters Post author

      SSH only. But you’ll need a decent text editor (nano).
      Use my binary from the top of this post: http://pcloadletter.co.uk/2011/10/06/compiling-nano-with-utf-8/

      So:
      wget http://dl.dropbox.com/u/1188556/blog/nano.tar.gz
      gunzip nano.tar.gz
      tar xvf nano.tar
      cp nano /bin

      Then you run:
      nano /volume1/@appstore/Minecraft/server.properties

      The keyboard shortcuts are shown onscreen. It’s Ctrl-X to exit and save.
      You need to stop and restart the Minecraft package for changes to take effect.

      Reply
      1. philippe

        i have a question
        i want to go to the server.properties on my macbook
        how do i get there how can i give commands with terminal if it is possible

      2. patters Post author

        You can remote into your NAS from the Mac OS terminal using this (replace the IP address with your NAS’s one):
        ssh root@192.168.1.200

        The root password is the same as the admin one.
        Be careful with this though, typing something wrong could delete something important.
        Once you’re connected, you can send commands to the Minecraft server like this:
        echo say Hello players >> /tmp/stdin.mc

        That’s adding the text “say Hello Players” to the file /tmp/stdin.mc which is being fed to the Minecraft server like keypresses on a keyboard.

        For editing server.properties you’ll need a text editor because the Linux built in one (vi) is quite difficult to understand and easy to mess up the file with. If your NAS has the Marvell Kirkwood processor, I have compiled a version of Nano (a much easier to use editor). Run these steps:
        cd /tmp
        wget http://dl.dropbox.com/u/1188556/blog/nano.tar.gz
        gunzip nano.tar.gz
        tar xvf nano.tar
        cp nano /bin

        Then you run:
        nano /volume1/@appstore/Minecraft/server.properties

        The keyboard shortcuts are shown onscreen. It’s Ctrl-X to exit and save.
        You need to stop and restart the Minecraft package for changes to take effect.

      3. philippe

        this is what i see if i run: nano /volume1/@appstore/Minecraft/server.properties
        BadhuisNAS> nano /volume1/@appstore/Minecraft/server.properties
        Error opening terminal: xterm-256color.

        what do i wrong?

      4. patters Post author

        You didn’t do anything wrong. It seems to be an issue that only affects Macs that have been upgraded from Mac OS 10.6 to Lion. Mine is a fresh install of Lion so I don’t get this. It’s described here:

        http://stackoverflow.com/questions/6804208/nano-error-error-opening-terminal-xterm-256color

        Apparently you need to go to Terminal Preferences, in the Advanced section change xterm-256color to xterm-color, which should fix it.

        Btw, if you’re running Craftbukkit, the server config files are in /volume1/@appstore/Craftbukkit instead.

      5. Philippe

        Hi,
        Editing the properties file still doesn’t work. Both on Mac or WIndows we get “Error opening terminal: xterm” when we try to run “nano /volume1/@appstore/Craftbukkit/server.properties”. Do you have any idea what the problem could be? We are not familiar toe remote editing on linux server. Do you happen to know a good tutorial for us? We have a Synology 211+. Thanks a lot!

      6. Papa

        For Mac you can download iTerm. It’s free and has no problem with the x256color.

  5. psymon75

    So, There’s problem for x86 CPU ? Have you deleted the package ? I can’t see it any more in my packages center.

    Reply
    1. patters Post author

      It’s not CPU specific so it should show in the list for all synos. If you’re using a build of DSM prior to 3.2-1955 then the scroll bars are missing so you can only see 6 packages I think. Maximize the window if that’s the case (or better still, upgrade DSM).

      Reply
  6. jordymaes

    @patters

    Thank you :)
    My server is up and running but I think my NAS is too slow for it. Changed the visibility from 10 to 3. Still a lagg.. Especially when you try to mine some blocks.
    However, it looks nice but my NAS (DS211+) can’t run it.

    Reply
    1. patters Post author

      Give it a little time. Once the world generation settles down it’s fine every time I start the package after that. My DS111 runs it ok on draw distance 6. I think it has the same CPU as yours, and you have twice the RAM which should help a lot. I do have to stop all the other packages though (Transmission obviously, Serviio, Subsonic).

      Reply
      1. jordymaes

        Yup, you also have a
        Marvell Kirkwood mv6282 1.6Ghz ARM Processor (Marvell ARMADA 300)

        Weird though, I’ll let it run for this day, and if my CPU is still working on 100%
        I give it up :p

        And i’ve also shutted down all the other packages.
        Only MC (and java) is running.

        I’ve set my draw distance to 3 hope this ‘ll help.

  7. Fragglesnot

    I have a DS1511+ (x86)…

    I tried installing Java 7 first, got “cannot handle TLS Data” when trying to do a java -version command. Uninstalled that, loaded Java 6 package instead. That went on fine, java -version reports 1.6.0_30. Minecraft package loads without error, but won’t start. Logs won’t show anything either. I do see minecraft user is created, and there is a minecraft_server.jar file in volume1/@appstore/Minecraft – so it appears to have loaded correctly. I can’t figure out why it won’t start though. Any ideas?

    Reply
    1. patters Post author

      Cool, thanks for the Java 7 on Intel feedback. I’ll remove the package, I guess there’s probably some dependency missing on Intel synos.

      Reply
      1. FusedElements

        Firstly, patters, top work on all the packages. Serviio, Crashplan and Craftbukkit in particular (though I have installed all of them) have become essential apps on my new Synology DS1511+ :D

        One major issue I am now encountering is that some of the Craftbukkit plugins need Java 7 to run, and as I am using an Intel based NAS this appears to be a issue. My understanding is that you do not have an Intel Syno to test on, but if you can provide some pointers I am happy to test and feedback here? I am not a programmer, but I am relatively proficient with Linux, so should be able to follow any suggestions to try and get the Java 7 package working…

        As a separate request, I am really keen to get Hamachi2 working. There are a few knife and fork howto’s out there which are quite convoluted, so it would be great to have a package :) Hamachi, which I sure you know already, is great for creating “instant” VPNs with your friends for sharing media and of course server based games like Minecraft…(https://secure.logmein.com/products/hamachi/download.aspx). I have installed and tested on Ubuntu with no issues, and I also found an excellent GUI called Haguichi (http://www.haguichi.net) which could be helpful in creating a GUI for DSM? (though definitely not required, command line Hamachi would be just fine!).

      2. patters Post author

        Hi, I’m kind of reaching the limits of what I can reasonably support so I’m not really looking for any additional packages to make at present. CrashPlan has proved to be quite a handful since their updates will never work properly on Synology, and they keep changing stuff!

        The issue with Java 7 on Intel is that it installs ok – it’s just that it doesn’t work. I linked to a Synology Forum thread about the same error in my Java package blog post (http://forum.synology.com/enu/viewtopic.php?f=27&t=40450). That was the situation with Java SE for Embedded 7. It may be that the full Java SE 7 for Linux does work – but I can’t test it.

      3. FusedElements

        Thanks patters. The Crashplan package has been a life saver, and Crashplan can thank you for me signing up to the Crashplan+ Unlimited package (you should be getting some commission :)). I have configured all my devices (laptops, desktops, servers) to backup to the Syno using Crashplan (free) and then Crashplan+ on the NAS to backup all my data to the cloud, and my important media on the NAS to an external USB drive as a local fail-safe (again, only possible using backup sets in the premium plus version). And I can monitor the progress of all my backups via the desktop GUI connected to the NAS. So, again, thanks patters for making this possible. I hope Crashplan and Synology pick up on the good work you are doing, because your additional packages have turned the already great Syno into a work of art.

        Anyway, I will monitor the Java 7 package and see if I can work out how to get it working, and if and if and when I do, I will report back here. Likewise on Hamachi.

  8. Fragglesnot

    OK, I think I see what is going on. When I look in the minecraft.sh, there seems to be an error when setting JAVA_MAX_HEAP. I have 3GB RAM in my NAS, and you can see the comparison instructions are not set up properly to handle that. Looks like maybe all the -lt should be -le, and then on the top end, we should add a -gt condition for those that have more than 2048.

    Thanks

    Reply
  9. Thomas

    Thanks a lot! That was a great help to get me started.
    I succeeded making the server run on a synology ds110j with only 128 mb ram. After one day of running there was no lag with only 1 player online.

    I’m thinking of running a craftbukkit server the same way. Just to play around with a few friends.

    I wonder – Would the script work if reworked to use a craftbukkit installation?

    Again, thanks for the work you’ve done. It made it very easy for me to confirm that it was possible to run it on my synology. Even on a low end server.

    Reply
    1. patters Post author

      I haven’t looked into Craftbukkit but I imagine that it would work ok. On the syno you can amend package script files live while they’re installed. You’ll find them at /var/packages, so modify my scripts and have a play.

      Reply
  10. ODWP

    New to Synology so please pardon my questions.
    Mode: DS2411+
    OS: DSM3.2
    RAM: 3GB
    Java SE Embedded 6 (1.6.0_30-005)
    Minecraft 1.1-004

    I have the server running great from the NAS, but had a few questions. Can it be started without a SSH session to the NAS? For my install I have to terminal into it to start it, unlike most apps where I can just click run in Package Center. Minecraft shows status : stopped.

    Update will not work for 1.1-005. Is this common?

    Reply
      1. ODWP

        When upgrading from 004 I got error “failed to download”. Have now uninstalled 004 and tried a new install and still getting the same error from the new 005 package. Any thoughts? Thanks for the quick response.

      2. patters Post author

        That’s odd, I upgraded my syno to 005 from the repo yesterday (I’m on DSM 4.0 beta). Could be a bad MD5 checksum, I used a different tool as my NAS is no longer bootstrapped since 4.0, and it put the MD5 in upper case, which maybe DSM 3.2 doesn’t like. I’ll take a look later this morning.

      3. ODWP

        Thanks, its working for me as well. Now just need to figure out how to get my old World to work again. Any advice on this process as I made a copy of the /volume1/@appstore/Minecraft directory before making any changes.

      4. patters Post author

        When you uninstall the package the server config and world files are autosaved to /volume1/public/minecraftworld.todaysdate.bak
        So to restore your world you need to stop the package then:

        cd /volume1/public/minecraftworld.todaysdate.bak
        cp -R * /volume1/@appstore/Minecraft
        chown -R minecraft /volume1/@appstore/Minecraft

  11. Fragglesnot

    Same problem here patters… update from 04 to 05 won’t work. The only error it throws is “Failed to Download.”

    Thanks for the hard work!

    Reply
  12. Fraggle

    I tried to install java from your repository and follow the messages which said (in two messages) download and copy the following pakets:

    ejre-1_6_0_30-fcs-b12-linux-i586-headless-10_nov_2011.tar
    gcc420_glibc236_pineview.tgz

    Installation seems to be successful, Java is now shown in the available list.
    But there is only a deinstallation option, no running option. Clicking on more java is shown as stopped.
    What happens? And how can I start java then?

    Thanks for your help.

    Reply
      1. Fraggle

        I did not found that one. And I just want to install java to run minecraft ;)
        Could you give me the link to that threat please?

    1. Fraggle

      Thanks Patters, unfortunately I just read your link and not what was written below.
      But I found that you answered that there too. Many many thanks. For helping ad for making these pakets.

      Reply
  13. Fraggle

    Great, works very well.
    One short question: Can I update for new minecraft versions in the same way as for your last java update?

    Reply
      1. Fraggle

        :) Great.
        Did you ever thought to make some similar installation for the bukkit server system?
        Up to now I never thought about bukkit so I don´t know if that is already simple.

    1. patters Post author

      I haven’t really looked into that so I don’t know what’s involved. Is it a sort of alternate version of Minecraft, or is it just a framework for launching mods on the server?

      Reply
      1. Fraggle

        Bukkit is a standalone server mod.
        I found a solution for installation, but it is in german:

        http://minecraft.de/showthread.php?36741-Ein-Bukkit-Tutorial-Komplette-Einrichtung-von-Bukkit-Plugin

        For synology ignore apt-get and screen things. Install Patters JAVA but you should already have it.
        You need ssh, thats all.

        I used the above description and start then via putty.
        I have to mention:
        Closing putty close the server then.
        If I try nohup the cpu is 100% used and RAM 60% whereas normal start (as described there (without screen)) is after some minutes 20% CPU and 40% RAM.

        So, it works, but I have to found a solution to start it and closing ssh without closing the server and without increased use of ressources.

        If you can write something to start the bukkit server similar to start your package of minecraft server it will be the best.

      2. patters Post author

        I set it up a couple of hours ago just by downloading the bukkit jar to the Minecraft folder and launching it in a similar way. Seems to run fine. I’ll probably do a separate package for it, since it’s basically the same and won’t take me long.

      1. Fraggle

        Very nice works. Thanks a lot. The server is running. I will try to install now the essential files which are nice to have.
        When I tried with the above mentioned description I can use essentials.jar, essentialChat.jar and essentialsSpawn.jar in Version 1.72 with craftbukkit R1 (build 1818).
        If I try now a similar installation of the essential files it does not work. Do you have an idea why?

      2. Fraggle

        Please forget the essential part in my answer. I made the mistake to copy all of them directly to the plugin folder. Starting with essentials, then essentialspawn and then essentialchat will work. The server should be started after each copy.

  14. Telopher

    Great work on packaging that up!

    Does anyone know how the performance is like on a Synology DS411 (1,6GHz ARM CPU, 512MB Ram) – I would like to try it with 2-3 players max but would like to know if it is worth it…

    Thanks!

    Reply
    1. Fraggle

      Agree with both, it would be very great if you can do a similar package for a TS3 Server.

      Did you tried to contact Synology?
      I think, they support you a little bit for your work.

      Additional, is there a chance to support you? Some money for you, some money for social things in your name, postcard to you if you collect them (these 3 things I saw in the internet for donation).

      Reply
      1. patters Post author

        I’m unlikely to do TeamSpeak because I don’t have an Intel NAS, so I wouldn’t be able to test. Mine is ARM and there’s no ARM compile of TeamSpeak. For the other packages I make I do all the testing on ARM, then when I know it works I can build the Intel version.

      2. Fraggle

        Thanks for that information.
        And what about a donation button to say thank you for your work?

  15. kennethbl

    I can’t seem to find a way to copy a folder (world) from my desktop to the “Minecraft”-folder. How do I do this? I tried “copy > \world\” in Telnet but it didn’t seem to work.

    I also tried configuring FileZilla, but I couldn’t get access this way.

    Reply
    1. kennethbl

      After digging around for ages (it sure felt like it), I suddently came across this article. Short and precise.

      When you have done this, it’s possible to SFTP to the root (as the root user (who has the same password as your admin-user)).

      Note that you will have to set a port-forward on port 22 (as SFTP uses this) if not already there.

      Reply
  16. distrax

    Im having trouble with SSH to my NAS.
    -SSH is on
    -I can connect, and login as admin/root
    -I just cannot find the Minecraft directory ??
    -It is hidden and only accesable by SSH, but still i cannot find the directory for the properties file,

    What am i doing wrong ??

    Reply
  17. raphael

    the installation of the mincraft server and java embeded 7 was smoth and worked (as far as i hcecked, only on dsm gui) what might be interessting is that i did this on the DSM 4.0 beta
    so ii can confirm that it works there

    regards raphael

    Reply
  18. free premium minecraft

    After I initially left a comment I appear to have clicked on the -Notify me when new comments are added- checkbox and from now on whenever a comment is added I get 4 emails with the same comment. Perhaps there is a means you can remove me from that service? Thanks!

    Reply
  19. Fraggle

    After release of the final DSM 4.0 version I have a question.
    Can I just update the DSM or do I have to deinstall/reinstall the server at first?

    Reply
    1. Ivo h

      You can update the packets will be intact,

      Can you return my question?
      How to edit the cconfig fil i can ssh into my nas

      But it cannot find the directory or the file

      Reply
      1. Fraggle

        I don´t understand you question.
        To connect via SSH to the NAS you have to activated that service and make a port forwarding in your router. For which config your asked?

    2. patters Post author

      You’re fine to update DSM. I’d recommend stopping all Java-based packages and removing and re-installing the Java package though. This is because the DSM update will remove the locale support, which would break unicode support for Java.

      Reply
      1. Fraggle

        Thanks for that information.
        I stopped Bukkit (the only Java App) and does not need to reinstall Java. It works fine.
        The new DSM is very fine :)

    3. Ivo H

      Hey Fraggle, sorry for my short question, was typed on my mobile :-)

      My question was, i have a minecraft server running now thanks to the above tut.
      I can join the server and so can my friends, port forwaring is ok.

      I wanted to change the server name and view distance in the configuration.config.
      As the tut tells me i need to go to /volume1/@appstore/Minecraft, i cannot find the directory or the config file ? not even with /volume1/@appstore.

      Am i doing something wrong i would like to change some things in order to manage my server.

      Realy hope to hear from you, ( or someone else)

      Thanks

      Reply
      1. Fraggle

        Ah, now I understand your problem.
        I am not really sure. How familiar you are with linux systems?

        After login as root via ssh try this:
        cd /vol (then press tab key to fill-up the folder name automatically) add /@a and press tab again.
        If this does not work, please login via web-administration to your NAS, take a look in the system administration for hdd administration (at the moment I do not have the correct name). There the volume name should be written.
        If this is not volume1 use the correct name to find the Minecraft folder.

  20. kennethbl

    Hi there,

    Is it possible to update it to the newest version of MineCraft? I remembered that the installation downloaded the MineCraft Server file from MineCraft.net to prevent distribution. Can I use the minecraft.jar from minecraft.net myself somehow?

    Thank you in advance.

    Reply
    1. patters Post author

      Hi, I was on holiday all last week (yep, really disconnected from everything) but I’ve done that now – it’s live on the repo.

      Reply
    2. Fraggle

      I would suggest you to use the bukkit server which are better for server than the original minecraft. But they need always a little bit for new versions. Up to now there is only a beta version for minecraft 1.2. But this will be faster in the future as the bukkit developers are now part of mojang. Additional there are a lot of mods available.
      Then you can update as patters describe, just stop the server, copy the new bukkit jar file to replace the old one and start it.

      Reply
  21. loek

    hello,
    I want to change the config file.
    I use this to edit the config

    “wget http://dl.dropbox.com/u/1188556/blog/nano.tar.gz
    gunzip nano.tar.gz
    tar xvf nano.tar
    cp nano /bin

    Then you run:
    nano /volume1/@appstore/Minecraft/server.properties”

    Than i use this “nano /volume1/@appstore/Minecraft/server.properties”

    Than i get this error

    “nano /volume1/@appstore/Minecraft/server.properties
    Error opening terminal: xterm.”

    can someone help me?
    srry for my bad eng!

    Reply
    1. patters Post author

      I had that error the other day after bootstrapping my NAS following DSM 4.0 upgrade. I can’t remember precisely, but I think this may have fixed it:
      export PATH=/opt/bin:/opt/sbin:$PATH

      Don’t run this unless your NAS has Optware installed though.
      Notice that that version of nano you downloaded is for ARM CPUs only – not Intel.

      Reply
  22. ranmasaotome510

    stupid question…. but i got everything working just great, after initial installation of both Java and the minecraft server, all is good, i can connect to server and play, woo. I even managed to find out how to get to the folder to export my server on my pc to the NAS. All fine. but not quite….

    So.. from my understanding, i should be able to stop the minecraft server just by stopping it in the package center. so i can import my server in. and when that is done, i got back to tell it to run in the package center, and It doesn’t start at all. reinstalling the minecraft package does nothing either to make it start. so i figured okay maybe if i reboot the nas, it’ll let me start the server, only to find this doesn’t work either. I come to find out that the only way to get the minecraft to start again now at this juncture is to reinstall java and the server… but then i wont beable to import my server cause every time i tell minecraft to stop running i cant get it back up.

    What is the issue im having?

    i have a ds712+

    Reply
    1. Fraggle

      I observe this whilst using mod´s that are not compatible with the MC version.
      For example, I am using bukkit server and essentials mod. Essentials core has core, spawn, chat and protection module. If I remember correct, the last one induces the same problems. After removing the protection module I can start the server again.
      So my advise would be to check your modules. Try to remove one by one to find which one is inkompatible.

      Reply
      1. ranmasaotome510

        I haven’t installed any modules, and i am using the standard minecraft server, not bukkit.

      2. ranmasaotome510

        So any one have any ideas? i really would love to migrate my minecraft server onto my NAS, i cant have my server on my laptop i actually take places. lol

      3. ranmasaotome510

        i think i may be misunderstanding you. when you say module, are u talking about something in the jar of the server file? im not sure i even understood by what u meant as far as modules go.

        all i know is my server install is straight off the instructions, and runs as it should. only problem is i cant stop the server package without it never coming back up. this is what i need help with.

  23. Paul Steele

    Thanks for the package .. it works soooo easily!

    The one problem I am having is when I SSH to edit the files they are all read-only, I’ve tried chmoding the files, but just get “Operation not permitted”.

    What have I missed?

    Regards
    PS

    Reply
  24. Paul Steele

    Ok I’m an idiot!!

    I was logging in as Admin.. should have been logging in as root!!!

    Sorry for wasting your eyeball time!

    Reply
  25. Philippe

    Hi there,
    The Craftbukkit server has an update from 1.2.3 to 1.2.4! Are you going tot update the package. We would appreciate that very much!
    Cheers,
    Philippe (Netherlands)

    Reply
  26. alex

    Since the switch to summertime it seems the start-stop script its taking the wrong time/timezone.
    Now it’s 19:16 here but in the Minecraft log entries are always 1 hour behind.

    How can i fix that?

    Reply
  27. ranmasaotome510

    Okay i tried out craftbukkit aaaand still the same issue. installed fine, runs as it should, and able to connect to the server and play. only problem is i cant stop the server package without it failing to come back up. what the hell is sooo different about my setup that i cant stop the damn server, without it failing to come back on when i tell it to run?

    the solution to this is to re-install BOTH java and the server, but this isn’t much of a solution cause i’m TRYING to import my server.

    Mind you i have a DS712+ with firmware 4.0-2198(2012/03/07).

    im pulling my hair out cause i cant figure out what the hell is going on. really frustrated.

    Reply
    1. FusedElements

      I have been succesfully running a Craftbukkit server using patters package for a while now on a DS1511+ (Intel Atom, 1Gb Ram) with a few plugins and here are my observations and some of the issues I have encountered so far (which may help you troubleshoot).

      – The official Minecraft server does seem more stable and just as fast. I use Craftbukkit for the added flexibility of initial configuration and plugins.
      – Shutting the server down from Package Center does stop MC client access but doesn’t always appear to stop all the Craftbukkit processes, which continue to eat around 15% CPU even when no one is connected. So I often have to “ps | grep bukkit” followed by a “kill ” or “kill -9 “, by killing the lowest PID at the top of the list normally stops the all of them, to properly shut down the server. Aside from this I have had no issues restarting the server.
      – I have had no issues updating the craftbukkit.jar from dl.bukkit.com using wget to update the server (mainly to support the recent upgrade to 1.2.4). Need to make sure I do a “chown -R craftbukkit:users *” in the Craftbukkit app directory and sometimes a “chmod -R g+rw” and “chmod -R o+rw” to update the group and other file permissions.
      – Some of the new plugins require Java 7 which currently doesn’t easily install on an Intel Syno.
      – Plugins I currently use (all from bukkitdev) are CoreProtect, iSafe, eTeleport, EasyPlugin, PermissionsBukkit and IBICF (needs Java 7 so currently disabled).

      Reply
      1. ranmasaotome510

        Ah okay, and can i assume you are doing these “Commands” through terminal or another? and is there something else i should be doing to be able to successfully shut down then start the server?

        and 2nd, I’ve been wondering, but how would i issue commands for the server like i already normally do in the PC version in the GUI Command window? how do i do that on the NAS Version? through terminal? and if so how?

      2. ranmasaotome510

        un-fukin-believable. for NO apparent reason it decides to successfully shutdown and start up without having to do any terminal stuff. explain to me how its working now >_>. I kept spaming the command ps to show me the process’s and yea i was noticing minecraft starting and stopping. WEIRDDDDDDDDDDDD.

        now lets see if i can import my server now.

      3. patters Post author

        I suspect that the server doesn’t respond to shutdown or restart commands properly until the world is fully built and the CPU activity has settled down. Maybe you weren’t giving it enough time to do that.

      4. ranmasaotome510

        success, its REALLY wonky though. i mean even though it successfully was able to restart, it took about 9 times of trying to restart it to restart again…. whatever, i got to import my server and i’m the happiest person alive now.

    1. patters Post author

      The easiest way right now is to edit /var/packages/Minecraft/INFO and change the version number to a lower number. Package Center will then offer an upgrade, and the installer will in fact get the latest Minecraft.jar from Mojang as it installs (so it would be 1.24 right now). Since it’s an upgrade, your world data will be migrated.

      Reply
      1. jjLDN

        I did that, and the latest package offered by Package Center is 1.2.3-007?
        Is it the latest package of Minecraft, or am I doing something wrong?

      2. patters Post author

        No, that’s right. It will say 1.2.3 but when you install it, it actually grabs the latest JAR file from Mojang, so it will really be 1.2.5. Really I need to get round to updating the version number, but recently I’ve been busy updating CrashPlan, Java, and Serviio…

  28. FusedElements

    *** WARNING: DO NOT UPGRADE WITHOUT MANUALLY BACKING UP YOUR WORLD ***

    Hi patters,

    I saw that you had upgraded the Craftbukkit package and clicked “Upgrade” without thinking; previously I always took a copy of the worlds myself before upgrading. It came back saying the update had failed and then would not start. I checked the update and the world was empty, so I checked the backup and the only file that was backed up in ./public was ./world/region/r.1.0.mca (not sure if this is of any use or not?). I have lost weeks worth of changes and my kids (who I set the server up for) are devastated.

    It looks as though it might have failed to backup the worlds properly due to the permissions on the ./@appstore/Craftbukkit directory. I have not changed these but many of the files and directories have different owners and are set to “rwxr_xr_x”.

    I appreciate I should have been more cautious before attempting the upgrade, but I wanted to let you know, and warn people here quickly to avoid the same thing happening to others.

    It would be useful to somehow validate the worlds backup during the update or catch any errors generated from the copy command so that it doesn’t wipe the worlds if it fails.

    If you have any other ideas how I could recover the worlds, do please let me know!

    Gutted.

    Reply
    1. FusedElements

      OK

      While reviewing the preupgrade/postupgrade scripts I found the directory “./@appstore/cb_data_migration” with all of the old data including the world. PHEW!!!

      Looks like the upgrade failed to copy the data back after the upgrade, so still needs fixing, but at least I haven’t lost anything! And very relieved at that!

      Reply
      1. patters Post author

        Just checked the scripts in case there were any dumb typos… but nope. I had tested the upgrade on mine last night and my test world was fine. Just tested fine again now too. I have no idea what error condition would need catching. The obvious one is the wget download but any error there is caught. Package Center scripts run as root so I doubt your folder permissions were an issue. Anyhow, I just updated the package again because 1.2.5 is out, and I noticed that the download link I took from the bukkit.org website was in fact a dev build, when I had wanted to follow the recommended builds. That’s fixed now.

        As for the world data being rescued in /volume1/@appstore/cb_datamigration – yep that’s why I chose to put it there and not some /tmp folder :)

  29. Jansen

    Hi, I love your work and I have installed the Minecraft server on my Synology ds 209. Yesterday I was looking my packages and saw I needed to update some. I did the Java package as well, but it gave me an error and removed it from the system. I found out thet the link to the package site was not working. Please check.

    Thanks

    Reply
    1. patters Post author

      Which one, Java 6 or Java 7? I have just used a different syno, and even my MacBook to double check the reported package sizes and MD5 hashes and they’re definitely correct.

      Reply
  30. Chris

    Can you please provide a java package for PPC based systems. I have a 210+ (Freescale mpc8533E PPC Processor) and dont see one listed with browsing pcloadletter packages. I tried manually downloading java, installing and setting variables based on the workings of your java install script, but the minecraft package fails to start

    Thanks!

    Reply
    1. patters Post author

      Not going to happen I’m afraid. This has been mentioned many times, even on the Java package blog post – there’s a glibc version dependency for Oracle’s Java that cannot be met on the PowerPC synos. And JamVM is to old to use (Java 1.5).

      Reply
  31. Martijn

    hi, I can’t seem to get the Minecraft package installed. The Java SE for Embedded 6 installed succesfully but the Minecraft one is giving me this error:

    Faled to install – There was a problem downloading minecraft_server.jar from Mojang’s download link, which was “http://s3.amazonaws.com/MinecraftDownload/launcher/minecraft_server.jar”

    If I use wget to retrieve the file it works great… so how do I get it installed?

    I have a DS412+ with DSM 4.0
    Thanks in advance!

    Reply
    1. Martijn

      Hi, I’ve been trying other packages from your repository and I can’t seem to install any of them (except the Java one). I’m not sure why it’s going wrong…

      Is it possible to get the SPK file so I can edit it and try some stuff?
      Thanks!

      Reply
      1. Martijn

        Thanks for your reply, somehow the package refuses to download the jar file. What I’ve done to solve it is remove the error-handling in the preinst script and ran it. Then download the jar manually and put it in the right place… The log tells me it’s building the world :)

      2. patters Post author

        Mojang may have moved the file. I’ll look at modifying the packages that download stuff to fall back to looking for a locally downloaded copy in case of errors, which should future-proof them a bit.

      3. Martijn

        Well, funny thing is that the url in the script is perfectly fine, if I use wget with that url in putty, it downloads like expected. I think there’s something wrong on my side. Just can’t figure out what…

        Maybe you could manage it like you did with the Java SE Embedded package, if the user puts the JAR in the public share, the script can pick it up from there.

      4. patters Post author

        The wget downloads work ok for me. I would guess that perhaps your Synology has some kind of DNS issue. Can you:
        nslookup s3.amazonaws.com

      5. patters Post author

        You can see from the comments on the Java page how much that process confuses the hell out of people. But I think putting it in as a fallback is what I’ll do.

      6. Martijn

        DNS works fine, if I use “wget ” on my Synology it downloads the file without any problem.

        Output:
        Server: 212.54.40.25
        Address 1: 212.54.40.25 dns.tb.iss.as9143.net

        Name: s3.amazonaws.com
        Address 1: 72.21.211.199 s3-1.amazonaws.com

    1. patters Post author

      It’s probably because it’s on a free webhost, which other people are abusing. I guess I may need to put it on a proper paying one if this problem becomes more common.

      Reply
  32. reibu

    Hi there and thanks for the PKG,

    I’d like to find a way to stop, start, and reboot the bukkit server at specified hours (for bandwidth and lag purposes). I used to have a linux minecraft server before, and i did this using cron on the script.sh (bash one) placed in etc/init.d/.

    So i tried to find a way to do this with you script, but it doesn’t worked at all, i’m constantly failing surely cause i can’t find the place where is installed the ademon craftbukkit :(

    Could you please help me with this ?

    Reply
      1. reibu

        I knew it, and i did it thank you (cause i just know linux enough for this x) the harder part was to to add crontab with syno). So i also add a reboot part in the 2 files (stop / sleep / start), cause automatic reboots are very usefull for “real” and frequented h24 minecraft server : the minecraft server have a little memory leak, wich become huge each time a new user come in, and that end to kill the service and take the maximem of ram avalaible ;)

      2. reibu

        Hugh the crontabs don’t work, even with a dedicated pkg, with ipkg, or when editing rc.local.

        I don’t know why but i’ve tried many many solutions, and that’s a problem for a correct server management :(

  33. raspabas

    Hi, how do I acess the /volume1/@appstore/ folder and subfolders without using telnet? I’d like to edit the server.properties file :) I’ve tried to do it using telnet but it wouldn’t let me open the file :/

    Reply
    1. raspabas

      Oh well, seems like logging in as root (via SSH this time) helps a lot. I still don’t know how to edit the files or add new world folders but that’s just because I’m a linux noob :b

      Reply
      1. patters Post author

        Yeah, you need to be root I think. Look up how to use the text editor “vi” which is on the system already. It’s very counter-intuitive but won’t take you too long to figure out.

    2. reibu

      You need to use mount ssh command to virtually mount your folder in a “accessible” other folder : mount –bind originalfolder destinationfolder
      I’m not sure but maybe that mount need IPKG installed syno.

      Reply
    1. reibu

      drag plugins in the plugins located in volume1/@appstore/Craftbukkit/ system folder then reboot bukkit ^^ you need to use ssh, sftp, or a mounted folder with ssh (i gave the command just before your post)

      Reply
      1. Denis

        Thanks! But I cannot use MC becouse when I start it, the CPU load keep being 98-100% all the time :-(
        Do you maybe have a solution?

      2. Denis Smajlovic

        Thanks!!! But when i start the Minecraft package, the CPU usage is 98-100% all the time, for a couple of days now actually :-(

        Do you know how i can reset everything that have with Minecraft, Craftbukkit and Java 7 to do?

        I (think) i have tried everything already :-(

        Hopefully, you can help :-)

        And thanks one more time :-)

      3. reibu

        It looks weird that you can’t desinsralled them, so you have two options, go into the “package center” stop the server then desinstall it (that’s work fine for me) or use ssh : cd to volume1/@appstore then use “rm -rf directorie”, then cd to /var/packages/ and “rm -rf directory” maybe you could need to edit rc.local file with vim, try to find informations about it on google ;)

  34. Jim

    Ok so i am a complete noob to the world of mine craft, i got the package installed just fine on my NAS, now how do i play the game??

    Reply
    1. Bryce

      log into your nas and make sure minecraft is running under packages. Then start minecraft go to multiplayer enter the ip address your nas uses and click next.

      Reply
      1. Mak

        So you have installed the server and now need to run a minecraft client. This is the bit you should pay for from Mojang for. I tried running another server on another computer and using yet another computer for the client to see the servers popping up on the network and experimenting with versions/crakkbukkit etc. Took me awhile to figure out the symbology on the initial ‘play multiplayer’ screen (dumb but hey ho) and as I’m only a causal minecraft user (rather than dedicated player) reading the minecraft and bukkit wikis especially about server setup really filled in the blanks and explained most of the detail. This approach worked for me as I could see if I got a good connection (the green bars) or could connect to the server at all and which version the server was moving from step to step between platforms. Very neat getting it running on the synology though (txs Patters). I’ve had no problems with the 412+ although currently struggling a bit with the 213+ but nearly there. The instructions above do have all the required info but it’s not a automatic point and click process. Great though for learning about your NAS and keeping the kids quiet.

  35. Pingback: Björn's Blog » Archive » Minecraft op een Synology DS1512+

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s