How to setup a Ubuntu CraftBukkit Server (x64) running Java x64

Discussion in 'Bukkit Help' started by TnT, Jan 15, 2011.

  1. Offline

    TnT Trinitrotoluene Maximus Administrator Bukkit Help

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Xms is the starting value for the heap size. I doubt you'll see much of a difference unless the server actually needs that many GB of heap space right off the bat. You can play with that value or remove it all together - the only time you'll see a performance difference is on freshly starting the server.
  2. Offline

    LinkterSHD

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Really USEFUL thank you so much TnT

    This post has been edited 1 time. It was last edited by TnT Jun 2, 2013.
  3. Offline

    palisade

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I use the following runmc script to launch craftbukkit.jar. It lets you start, stop, grab an update, backup, or run commands in the background via screen on your server without an interactive terminal open. It'll even handle saving the world and turning off world saves before backing up, and then turning it back on afterwards. Rename your craftbukkit-v-v-RCn.jar to just craftbukkit.jar for this script to work. The update even verifies if the website has a new jar available or not before bothering to update.

    Also anywhere where it says /home/palisade/mc point it to your minecraft directory instead, and set USERNAME to the user you run mc as. In addition make sure BACKUPPATH is set to a location you store backups, preferably one that is backed up on a remote drive. That way if the platter in your server fails you have a remote backup of the worlds. You could call `runmc backup` in a cron job at a certain interval to back up the world (e.g. every 30 mins), and maybe change the cp line to a zip, bzip2 or 7z if you want to save space. You might need to add additional worlds, like the world-nether directory, this script only handles the main world.

    I've set java to use 2gb, you might want to adjust this to your personal preference. Also, my server had 4 cores, so you'll want to adjust the CPU_COUNT. Anywhere that says mcserver is the screen session name, if you want to change that.

    I rewrote the original script for this from minecraft's wiki to work with bukkit:
    http://www.minecraftwiki.net/wiki/Server_startup_script

    I wanted to put this up on bukkit's wiki but the page was locked, so I'm posting it in the forum instead. Enjoy! Hope it helps. :p

    Code:
    #!/bin/bash
    # /home/palisade/mc
    # version 0.3.6 2011-10-17 (YYYY-MM-DD)
     
    ### BEGIN INIT INFO
    # Provides:  minecraft
    # Required-Start: $local_fs $remote_fs
    # Required-Stop:  $local_fs $remote_fs
    # Should-Start:  $network
    # Should-Stop:    $network
    # Default-Start:  2 3 4 5
    # Default-Stop:  0 1 6
    # Short-Description:    mc server
    # Description:    starts mc server
    ### END INIT INFO
     
    #Settings
    SERVICE='craftbukkit.jar'
    OPTIONS='nogui'
    USERNAME='palisade'
    WORLD='world'
    MCPATH='/home/palisade/mc'
    BACKUPPATH='/home/palisade/mcbackup'
    CPU_COUNT=4
    INVOCATION="java -Xmx2048M -Xms2048M -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalPacing -XX:ParallelGCThreads=$CPU_COUNT -XX:+AggressiveOpts -jar $SERVICE $OPTIONS"
     
    ME=`whoami`
    as_user() {
      if [ $ME == $USERNAME ] ; then
        bash -c "$1"
      else
        su - $USERNAME -c "$1"
      fi
    }
     
    mc_start() {
      if  pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "$SERVICE is already running!"
      else
        echo "Starting $SERVICE..."
        cd $MCPATH
        as_user "cd $MCPATH && screen -dmS mcserver $INVOCATION"
        sleep 7
        if pgrep -u $USERNAME -f $SERVICE > /dev/null
        then
          echo "$SERVICE is now running."
        else
          echo "Error! Could not start $SERVICE!"
        fi
      fi
    }
     
    mc_saveoff() {
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "$SERVICE is running... suspending saves"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"say SERVER BACKUP STARTING. Server going readonly...\"\015'"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"save-off\"\015'"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"save-all\"\015'"
        sync
        sleep 10
      else
        echo "$SERVICE is not running. Not suspending saves."
      fi
    }
     
    mc_saveon() {
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "$SERVICE is running... re-enabling saves"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"save-on\"\015'"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"say SERVER BACKUP ENDED. Server going read-write...\"\015'"
      else
        echo "$SERVICE is not running. Not resuming saves."
      fi
    }
     
    mc_stop() {
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "Stopping $SERVICE"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"say SERVER SHUTTING DOWN IN 10 SECONDS. Saving map...\"\015'"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"save-all\"\015'"
        sleep 10
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"stop\"\015'"
        sleep 7
      else
        echo "$SERVICE was not running."
      fi
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "Error! $SERVICE could not be stopped."
      else
        echo "$SERVICE is stopped."
      fi
    }
     
    mc_update() {
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "$SERVICE is running! Will not start update."
      else
    #    MC_SERVER_URL=http://s3.amazonaws.com/MinecraftDownload/launcher/minecraft_server.jar?v=`date | sed "s/[^a-zA-Z0-9]/_/g"`
        MC_SERVER_URL=http://dl.bukkit.org/latest-rb/craftbukkit.jar
        as_user "cd $MCPATH && wget -q -O $MCPATH/craftbukkit.jar.update $MC_SERVER_URL"
        if [ -f $MCPATH/craftbukkit.jar.update ]
        then
          if `diff $MCPATH/$SERVICE $MCPATH/craftbukkit.jar.update >/dev/null`
          then
            echo "You are already running the latest version of $SERVICE."
          else
            as_user "mv $MCPATH/craftbukkit.jar.update $MCPATH/$SERVICE"
            echo "Minecraft successfully updated."
          fi
        else
          echo "Minecraft update could not be downloaded."
        fi
      fi
    }
     
    mc_backup() {
      echo "Backing up minecraft world..."
      if [ -d $BACKUPPATH/${WORLD}_`date "+%Y.%m.%d_%H.%M"` ]
      then
        for i in 1 2 3 4 5 6
        do
          if [ -d $BACKUPPATH/${WORLD}_`date "+%Y.%m.%d_%H.%M"`-$i ]
          then
            continue
          else
            as_user "cd $MCPATH && cp -r $WORLD $BACKUPPATH/${WORLD}_`date "+%Y.%m.%d_%H.%M"`-$i"
            break
          fi
        done
      else
        as_user "cd $MCPATH && cp -r $WORLD $BACKUPPATH/${WORLD}_`date "+%Y.%m.%d_%H.%M"`"
        echo "Backed up world"
      fi
      echo "Backing up $SERVICE"
      if [ -f "$BACKUPPATH/craftbukkit_`date "+%Y.%m.%d_%H.%M"`.jar" ]
      then
        for i in 1 2 3 4 5 6
        do
          if [ -f "$BACKUPPATH/craftbukkit_`date "+%Y.%m.%d_%H.%M"`-$i.jar" ]
          then
            continue
          else
            as_user "cd $MCPATH && cp $SERVICE \"$BACKUPPATH/craftbukkit_`date "+%Y.%m.%d_%H.%M"`-$i.jar\""
            break
          fi
        done
      else
        as_user "cd $MCPATH && cp $SERVICE \"$BACKUPPATH/craftbukkit_`date "+%Y.%m.%d_%H.%M"`.jar\""
      fi
      echo "Backup complete"
    }
     
    mc_command() {
      command="$1";
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        pre_log_len=`wc -l "$MCPATH/server.log" | awk '{print $1}'`
        echo "$SERVICE is running... executing command"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"$command\"\015'"
        sleep .1 # assumes that the command will run and print to the log file in less than .1 seconds
        # print output
        tail -n $[`wc -l "$MCPATH/server.log" | awk '{print $1}'`-$pre_log_len] "$MCPATH/server.log"
      fi
    }
     
    #Start-Stop here
    case "$1" in
      start)
        mc_start
        ;;
      stop)
        mc_stop
        ;;
      restart)
        mc_stop
        mc_start
        ;;
      update)
        mc_stop
        mc_backup
        mc_update
        mc_start
        ;;
      backup)
        mc_saveoff
        mc_backup
        mc_saveon
        ;;
      status)
        if pgrep -u $USERNAME -f $SERVICE > /dev/null
        then
          echo "$SERVICE is running."
        else
          echo "$SERVICE is not running."
        fi
        ;;
      command)
        if [ $# -gt 1 ]; then
          shift
          mc_command "$*"
        else
          echo "Must specify server command (try 'help'?)"
        fi
        ;;
     
      *)
      echo "Usage: runmc {start|stop|update|backup|status|restart|command \"server command\"}"
      exit 1
      ;;
    esac
     
    exit 0
  4. Offline

    TnT Trinitrotoluene Maximus Administrator Bukkit Help

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I have this: http://dev.bukkit.org/server-mods/ascii-bukkit-menu/

    This post has been edited 1 time. It was last edited by TnT Feb 26, 2012.
  5. Offline

    palisade

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I decided to look into the ascii-bukkit-menu and other than ramdisk my script and theirs does almost the same thing except that you can see when users join/leave. However, if you had 200 users it wouldn't work anyways. Also, you can't detach the screen in interactive mode or you lose the vertical layout when you reattach. Worth noting, they check if the process ID is still running before they move on, instead of just sleeping an arbitrary amount of time which is an improvement over what I was doing which became a problem as more plugins were being added to the server. The only real advantage the script I provided had was the ability to backup the world and bukkit jar.

    I went ahead and modified ascii-bukkit-menu some and added the following features:

    --status - this will print out running or stopped to let you know the state of your server
    --restart - allows you to restart your server
    --backup - performs a backup of your world and bukkit jar

    And, I created a recover.sh and placed it in Ascii-Bukkit-Menu like so (make this chmod +x):

    Code:
    #!/bin/bash
    /home/USERNAME/Ascii-Bukkit-Menu/abm.sh --status>/dev/null
     
    if [[ 1 == $? ]]; then
            /home/USERNAME /Ascii-Bukkit-Menu/abm.sh --start
    fi
    This recovers from a crash and brings the server back up if you call it in a cron job. You can set up a cron job by typing: crontab -e

    And then paste the following to give it a 5 minute interval check (this is lightweight since it only does a --status, which will only check the pid if it is still running):

    Code:
    */5 * * * * /home/USERNAME/Ascii-Bukkit-Menu/recover.sh
    I'll go ahead and zip this up and make it available for anyone who wants to try out my changes. Go ahead and grab the latest abm and install it and set it up, then you can just drop functions.sh and menu.sh in the scripts dir and overwite your abm.sh with mine, and drop recover.sh next to abm.sh. Just make sure to edit each and every one of these scripts and change /home/palisade to your own path.

    Here are my changes... I fixed a bug in the previous abm.sh, this one should be fine now.

    http://rm-f.net/~palisade/abm-new-v1-1.tgz

    There is a bug in updating that was in the original abm, I haven't had a chance to fix it yet. Been scurrying to get my bukkit server compliant with 1.2.

    Enjoy!

    This post has been edited 5 times. It was last edited by palisade Mar 3, 2012.
  6. Offline

    palisade

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I decided to paste this as a new comment just in case someone still wants to use the previous script that simply copies the folder to the backup directory. That is faster than compressing, and since your world is in readonly mode while this is happening users might be unhappy if it takes too long. So, there's a disadvantage to doing it this way, as long as you're aware of that here it is.

    Note again that you should change CPU_COUNT and anywhere it says USERNAME, and set your BACKUPPATH and WORLD* variables to point to the correct paths.

    This version compresses the world folders with a progress bar, and handles nether and the end as well. It requires you have pv (pipeviewer) installed which you can get from sourceforge or apt-get, etc.

    Code:
    #!/bin/bash
    # /home/USERNAME/mc
     
    ### BEGIN INIT INFO
    # Provides:  minecraft
    # Required-Start: $local_fs $remote_fs
    # Required-Stop:  $local_fs $remote_fs
    # Should-Start:  $network
    # Should-Stop:    $network
    # Default-Start:  2 3 4 5
    # Default-Stop:  0 1 6
    # Short-Description:    mc server
    # Description:    starts mc server
    ### END INIT INFO
     
    #Settings
    SERVICE='craftbukkit.jar'
    OPTIONS='nogui'
    USERNAME='USERNAME'
    WORLD='world'
    WORLDNETHER='world_nether'
    WORLDEND='world_the_end'
    MCPATH='/home/USERNAME/mc'
    BACKUPPATH='/home/USERNAME/mcbackup'
    CPU_COUNT=4
    INVOCATION="java -Xmx2048M -Xms2048M -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalPacing -XX:ParallelGCThreads=$CPU_COUNT -XX:+AggressiveOpts -jar $SERVICE $OPTIONS"
     
    ME=`whoami`
    as_user() {
      if [ $ME == $USERNAME ] ; then
        bash -c "$1"
      else
        su - $USERNAME -c "$1"
      fi
    }
     
    mc_start() {
      if  pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "$SERVICE is already running!"
      else
        rm -f "$MCPATH/server.log"
        echo "Starting $SERVICE..."
        cd $MCPATH
        as_user "cd $MCPATH && screen -dmS mcserver $INVOCATION"
        sleep 7
        if pgrep -u $USERNAME -f $SERVICE > /dev/null
        then
          echo "$SERVICE is now running."
        else
          echo "Error! Could not start $SERVICE!"
        fi
      fi
    }
     
    mc_saveoff() {
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "$SERVICE is running... suspending saves"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"say SERVER BACKUP STARTING. Server going readonly...\"\015'"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"save-off\"\015'"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"save-all\"\015'"
        sync
        sleep 10
      else
        echo "$SERVICE is not running. Not suspending saves."
      fi
    }
     
    mc_saveon() {
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "$SERVICE is running... re-enabling saves"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"save-on\"\015'"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"say SERVER BACKUP ENDED. Server going read-write...\"\015'"
      else
        echo "$SERVICE is not running. Not resuming saves."
      fi
    }
     
    mc_stop() {
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "Stopping $SERVICE"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"say SERVER SHUTTING DOWN IN 10 SECONDS. Saving map...\"\015'"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"save-all\"\015'"
        sleep 10
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"stop\"\015'"
        sleep 20
      else
        echo "$SERVICE was not running."
      fi
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "Error! $SERVICE could not be stopped."
      else
        echo "$SERVICE is stopped."
      fi
    }
     
    mc_update() {
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        echo "$SERVICE is running! Will not start update."
      else
    #    MC_SERVER_URL=http://s3.amazonaws.com/MinecraftDownload/launcher/minecraft_server.jar?v=`date | sed "s/[^a-zA-Z0-9]/_/g"`
        MC_SERVER_URL=http://dl.bukkit.org/latest-rb/craftbukkit.jar
        as_user "cd $MCPATH && wget -q -O $MCPATH/craftbukkit.jar.update $MC_SERVER_URL"
        if [ -f $MCPATH/craftbukkit.jar.update ]
        then
          if `diff $MCPATH/$SERVICE $MCPATH/craftbukkit.jar.update >/dev/null`
          then
            echo "You are already running the latest version of $SERVICE."
          else
            as_user "mv $MCPATH/craftbukkit.jar.update $MCPATH/$SERVICE"
            echo "Minecraft successfully updated."
          fi
        else
          echo "Minecraft update could not be downloaded."
        fi
      fi
    }
     
    mc_backup_world() {
      echo "Backing up world... $1"
      if [ -d $BACKUPPATH/${1}_`date "+%Y.%m.%d_%H.%M"` ]
      then
        for i in 1 2 3 4 5 6
        do
          if [ -d $BACKUPPATH/${1}_`date "+%Y.%m.%d_%H.%M"`-$i ]
          then
            continue
          else
            as_user "cd $MCPATH && tar -cf - $1 | pv | gzip - > $BACKUPPATH/${1}_`date "+%Y.%m.%d_%H.%M"`-$i.tgz"
    #        as_user "cd $MCPATH && cp -r $1 $BACKUPPATH/${1}_`date "+%Y.%m.%d_%H.%M"`-$i"
            break
          fi
        done
      else
        as_user "cd $MCPATH && tar -cf - $1 | pv | gzip - > $BACKUPPATH/${1}_`date "+%Y.%m.%d_%H.%M"`-$i.tgz"
    #    as_user "cd $MCPATH && cp -r $1 $BACKUPPATH/${1}_`date "+%Y.%m.%d_%H.%M"`"
        echo "Backed up world"
      fi
    }
     
    mc_backup_service() {
      echo "Backing up $SERVICE"
      if [ -f "$BACKUPPATH/craftbukkit_`date "+%Y.%m.%d_%H.%M"`.jar" ]
      then
        for i in 1 2 3 4 5 6
        do
          if [ -f "$BACKUPPATH/craftbukkit_`date "+%Y.%m.%d_%H.%M"`-$i.jar" ]
          then
            continue
          else
            as_user "cd $MCPATH && cp $SERVICE \"$BACKUPPATH/craftbukkit_`date "+%Y.%m.%d_%H.%M"`-$i.jar\""
            break
          fi
        done
      else
        as_user "cd $MCPATH && cp $SERVICE \"$BACKUPPATH/craftbukkit_`date "+%Y.%m.%d_%H.%M"`.jar\""
      fi
      echo "Backup complete"
    }
     
    mc_command() {
      command="$1";
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
      then
        pre_log_len=`wc -l "$MCPATH/server.log" | awk '{print $1}'`
        echo "$SERVICE is running... executing command"
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"$command\"\015'"
        sleep .1 # assumes that the command will run and print to the log file in less than .1 seconds
        # print output
        tail -n $[`wc -l "$MCPATH/server.log" | awk '{print $1}'`-$pre_log_len] "$MCPATH/server.log"
      fi
    }
     
    #Start-Stop here
    case "$1" in
      start)
        mc_start
        ;;
      stop)
        mc_stop
        ;;
      restart)
        as_user "screen -p 0 -S mcserver -X eval 'stuff \"say SERVER REBOOTING IN 10 SECONDS, WILL BE BACK IN 30 to 40 SECONDS...\"\015'"
        mc_stop
        sleep 5
        mc_start
        ;;
      update)
        mc_stop
        mc_backup_world $WORLD
        mc_backup_world $WORLDNETHER
        mc_backup_world $WORLDEND
        mc_backup_service
        mc_update
        mc_start
        ;;
      backup)
        mc_saveoff
        mc_backup_world $WORLD
        mc_backup_world $WORLDNETHER
        mc_backup_world $WORLDEND
        mc_backup_service
        mc_saveon
        ;;
      status)
        if pgrep -u $USERNAME -f $SERVICE > /dev/null
        then
          echo "$SERVICE is running."
        else
          echo "$SERVICE is not running."
        fi
        ;;
      command)
        if [ $# -gt 1 ]; then
          shift
          mc_command "$*"
        else
          echo "Must specify server command (try 'help'?)"
        fi
        ;;
     
      *)
      echo "Usage: mc {start|stop|update|backup|status|restart|command \"server command\"}"
      exit 1
      ;;
    esac
     
    exit 0

    NOTE: You may want to replace the backup stuff I posted above with something easier like:

    Code:
    backupWorld() {
      echo "Backing up $1"
      as_user "tar -cf - $1 | pv | gzip - > $BACKUP/$1.tgz"
    }
     
    backupService() {
      echo "Backing up craftbukkit.jar"
      as_user "cp $bukkitdir/$cbfile $BACKUP/$cbfile"
      echo "Backup complete"
    }
     
    performBackup() {
            PATHDATE=`date "+%Y.%m.%d_%H.%M"`
            BACKUP="$BACKUPPATH/$PATHDATE"
            mkdir $BACKUP
            backupWorld $WORLD
            backupWorld $WORLDNETHER
            backupWorld $WORLDEND
            backupService
    }
    You'll see a result when you run it like:

    Code:
    Server Already Running..
    SERVER BACKUP STARTING.. Server going readonly...
    Backing up world
    241MB 0:00:18 [12.9MB/s] [                                <=>                                                      ]
    Backing up world_nether
    18.3MB 0:00:01 [  13MB/s] [  <=>                                                                                    ]
    Backing up world_the_end
    7.2MB 0:00:00 [  33MB/s] [ <=>                                                                                      ]
    Backing up craftbukkit.jar
    Backup complete
    SERVER BACKUP ENDED. Server going read-write...
    Sync complete. Server now read-write.
    This second example will create a directory that is simply a date inside your backup path. So, if your path is /home/user/mcbackup then it'll look like:

    Code:
    mcbackup/2012.03.03_20.17:
    total 183000
    -rw-r--r-- 1 palisade users  11039568 Mar  3 20:17 craftbukkit.jar
    -rw-r--r-- 1 palisade users  10929243 Mar  3 20:17 world_nether.tgz
    -rw-r--r-- 1 palisade users 164793721 Mar  3 20:17 world.tgz
    -rw-r--r-- 1 palisade users    414340 Mar  3 20:17 world_the_end.tgz

    This post has been edited 5 times. It was last edited by palisade Mar 4, 2012.
  7. Offline

    Solaridors

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I Dont understandt part 1 i dowload it but dont know how to instal it
  8. Offline

    Xptical

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  9. Offline

    TheEstMacRam

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    s
    sorry dude, but It does not, I can prove it, because I use OpenJDK 7 instead of oracle or sun java, and I can run minecraft with no problem at all, also my bukkit server works perfectly.

    This post has been edited 1 time. It was last edited by md_5 Nov 11, 2012.
  10. Offline

    arweth

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Mate before you reply to a post especially regarding something about compatibility check how old the post is. Unless you are running the version that was current on the 16th of Jan 2011 then you cant say it did back then. It may work now with the latest versions but back then it obviously didn't.
  11. Offline

    blackice504

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Hi TNT i also use Ubuntu 64 bit Server working well, but read your tutorial anyway because you never know there maybe new tricks, here is my one for Sun Java 64bit.
    i hope this helps your tut,

    sudo apt-get install python-software-properties
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get dist-upgrade
    sudo add-apt-repository ppa:webupd8team/java
    sudo apt-get update
    sudo apt-get install oracle-java7-installer
    java -version

    this was done on ubuntu64 bit linux 12.4

    This is a simpler way to install java.
    pm me if you have any problems.

    Great Tutorial.

    Java just changed there agreements, so if the first script not work this will

    sudo sh -c "echo 'deb http://www.duinsoft.nl/pkg debs all' >> /etc/apt/sources.list"
    sudo apt-get update
    sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 5CB36B26
    sudo apt-get update
    sudo apt-get install update-sun-jre
    java -version

    people if you use it more then once make a javaupdate.sh ;)

    This post has been edited 2 times. It was last edited by blackice504 Dec 10, 2012.
    Vern8k likes this.
  12. Offline

    waco001

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Will this work for the normal desktop version too? Thx
  13. Offline

    TnT Trinitrotoluene Maximus Administrator Bukkit Help

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Yes, they are very similar in nature.
  14. Offline

    Vern8k

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  15. Offline

    Zeppelin

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME

    This post has been edited 1 time. It was last edited by mbaxter Feb 14, 2013.
  16. Offline

    West_Dover

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    @TnT I need your help....
    I have already existing Bukkit server that I downloaded onto the OS. I created the file "start.sh" but i dont know how or where to download Java 64... Also i cant figure out how to SSH from my mac.

    Please help,
    West
  17. Offline

    TnT Trinitrotoluene Maximus Administrator Bukkit Help

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  18. Offline

    computerman_

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    i'm getting two errors that are repeating very fast they'er,
    Code:
    at net.minecraft.server.v_16_R2.PropertyManager.a(PropertyManger.java:66)
    at net.minecraft.server.v_16_R2.PropertyManager.savePropertiesFile(PropertyManger.java:82)
    
    and i'm also runing X32 bit not X64

    This post has been edited 3 times. It was last edited by computerman_ Jul 22, 2013.
  19. Offline

    TnT Trinitrotoluene Maximus Administrator Bukkit Help

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    @computerman_
    Pastebin your full server.log - that doesn't look to be an error with CraftBukkit.
  20. Offline

    computerman_

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    @TnT
    it was the start up code its fixed do you, do you still want me to paste it?
  21. Offline

    TnT Trinitrotoluene Maximus Administrator Bukkit Help

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I am interested in seeing details on the problem and what you did to fix it. :)
  22. Offline

    computerman_

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    @TnT
    i just used a different java code to start it that is in the coments that you might of posted, or i used the code on wiki
    :| i just noticed it didn't create the server.log with the errors sorry, also the java installation Din't work for me i used a command i found on a different forums for ubuntu "sudo apt-get install open-7-jdk icedtea-7-plugin" and last of all Thanks for the tutorial

    This post has been edited 1 time. It was last edited by computerman_ Jul 23, 2013.
  23. Offline

    TnT Trinitrotoluene Maximus Administrator Bukkit Help

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    @computerman_
    Ahh. My tutorial installs Oracle Java, not OpenJDK. Glad you found the rest of the tutorial useful. :)
    zaphodikus likes this.
  24. Offline

    LandonTheGeek

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I love how this was made back in 2011 but still gets great feedback. :) And it should, because this is a great tutorial. Very detailed and well done! :D @TnT
  25. Offline

    Iroh "Stamps out Riots" Moderator

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Just set up my first vps for my new server this was a god send :)

    Just a note the auto-extracting of the jre file didn't work for me and I needed to use tar
    Code:
    tar -xvf /tmp/jre-7u67-linux-x64
    
    Not sure if this is a common problem or not but it might be worth including a note in the tutorial.

    This post has been edited 2 times. It was last edited by Iroh Aug 5, 2014.
  26. Offline

    ZodiacTheories

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  27. Offline

    LHammonds

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    If a post adds information not previously mentioned, its OK in my book, even if extremely necrotic in nature (however, I have seen threads locked in similar situations before. hehehe)
  28. Offline

    Tabardia

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I got stuck at step 3, any updated info on how to do it?
    Guide seems nice though, thank you!

    This post has been edited 1 time. It was last edited by TnT Aug 6, 2014.
  29. Offline

    TnT Trinitrotoluene Maximus Administrator Bukkit Help

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Tabardia likes this.
  30. Offline

    Tabardia

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I figured it out and your guide was great help! just bypassed that step and downloaded the jar I wanted from bukkit.

Share This Page