User Tools

Site Tools


java:instalacionsencillaservidor

This is an old revision of the document!


Instalar un servidor en Minecraft sencillo

Intro

Pasos para la instalación de un servidor de Minecraft en linux de forma sencilla y elegante. Nada de complicados scripts o complejas secuencias de pasos.

Creando usuario

Crearemos un usuario que será el que aloje todos los datos del servidor. A mí me gusta crearlo con su propio grupo de seguridad (usuario minecraft, grupo minecraft).

useradd --create-home --user-group --system minecraft2

Instalación y configuración de Java

El servidor tiene que tener instalado java y funcionando. Omito las instrucciones específicas. Simplemente incluyo una breve instruccion para comprobar que nuestro usuario tiene capacidad para ejecutar java:

minecraft@server:~$ java -version
java version "1.7.0_75"
OpenJDK Runtime Environment (IcedTea 2.5.4) (7u75-2.5.4-1~trusty1)
OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)

Descargar servidor

Se descarga de aquí: https://minecraft.net/download

Para descargar versiones antiguas, es preciso “fabricar” la dirección correcta de descarga. Por ejemplo, la dirección de descarga para la popular versión 1.6.4 es ésta:

https://s3.amazonaws.com/Minecraft.Download/versions/1.6.4/minecraft_server.1.6.4.jar

Para otras versiones, he comprobado que basta con cambiar los números y pegar la url resultante en un navegador.

Simplemente dejaremos el fichero minecraft_server.1.6.4.jar en la carpeta del usuario y le pondremos los permisos adecuados.

Instalar servicio

Para ejecutar minecraft tengo un servicio creado que sencillamente instalaremos en /etc/init.d –Debian/Ubuntu– o bien en /etc/rc.d –SuSE–.

Puedes descargarlo aquí:

minecraft.zip

Al instalarlo, configuraremos la ruta correcta a la máquina virtual java:

JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre/

y el directorio home de nuestro usuario “minecraft” (si se llama “minecraft”, te funcionará como está). También hay que configurar el acceso al fichero jar. En nuestro

SERVER_HOME=/home/minecraft
MINECRAFT_JAR=$SERVER_HOME/minecraft.jar

Apéndice: servicio para ejecutar minecraft

#!/bin/bash
#
# minecraft.sh  - to start / stop the minecraft server 
#
# http://minecraft.gamepedia.com/Tutorials/Setting_up_a_server
#
 
### BEGIN INIT INFO
# Provides:		minecraft1
# Required-Start:	$local_fs $network $syslog
# Required-Stop:	$local_fs $network $syslog
# Default-Start:	2 3 4 5
# Default-Stop:		0 1 6
# Short-Description:	Minecraft server 1
### END INIT INFO
 
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre/
JAVA=$JAVA_HOME/bin/java
 
SERVER_HOME=/home/minecraft
MINECRAFT_JAR=$SERVER_HOME/minecraft.jar
PID_FILE=$SERVER_HOME/pidfile
 
umask 022
 
test -f "$JAVA" || exit 0 
test -f "$MINECRAFT_JAR" || exit 0 
 
 
case $1 in
start)
    echo "Starting minecraft server"
    cd "$SERVER_HOME"
    sudo -u minecraft $JAVA -Xms1300M -Xmx1500M -Djava.awt.headless=true -jar "$MINECRAFT_JAR" nogui &> console.log &
    echo $! > "$PID_FILE"
    echo "done"    
    ;;
stop)
    echo "Stopping minecraft server"
    # first make a gentle kill 
    kill $(cat "$PID_FILE")
    # then sleep and make a hard kill 
    sleep 4s
    kill -9 $(cat "$PID_FILE") 2> /dev/null
    rm "$PID_FILE"
    echo "done"
    ;;
reload)
    $0 stop
    $0 start
    ;;
status)
    if kill -0 $(cat "$PID_FILE") ; then 
    	echo "Minecraft process is running"
    else
    	echo "Minecraft process has stopped"
    fi
    ;;
*)
    echo "Usage: $0 start | stop | reload | status"
    ;;
esac 
 
exit 0
java/instalacionsencillaservidor.1428444133.txt.gz · Last modified: 2022/12/02 22:02 (external edit)