Close
    Search Buscar

    Tutoriales / Servidor habilitado con Ramdisk

    Quien soy
    Aina Martin
    @ainamartin
    Autor y referencias

    advertencia  Dado que esta es una página web y cualquiera puede modificar cualquier página en cualquier momento, se sugiere que no utilice este script, sino que simplemente lo utilice como una guía para escribir el suyo.

    Este tutorial está destinado a brindarle una comprensión básica de qué es un disco RAM, para qué sirve Minecraft y cómo hacer que un servidor de Minecraft use un disco RAM.


    Contenido

    • 1 Introducción a Ramdisk
    • 2 Ventajas y desventajas
      • Ventajas de 2.1
      • 2.2 Desventajas
    • 3 Por qué tiene sentido para los servidores de Minecraft
    • 4 Configuración básica de Minecraft y ramdisk
      • 4.1 GNU / Linux (forma fácil)
      • 4.2 GNU / Linux (alternativa)
      • 4.3 GNU / Linux (rápido y sucio)
      • 4.4 de Windows
      • 4.5 macOS

    Introducción a Ramdisk

    De manera convencional, los archivos y directorios se almacenan en unidades de disco duro que, según los estándares actuales, ofrecen mucho espacio a velocidades de transferencia de datos mediocres (entre 80 MB / sy 200 MB / s). Los discos RAM son sistemas de archivos virtuales (a diferencia de los discos duros que son hardware) que viven completamente dentro de la RAM de la computadora. Ofrecen tasas de transferencia de datos significativamente más altas (entre 3,000 MB / sy 15,000 MB / s) a costa de la volatilidad (los datos se perderán después de reiniciar la computadora) y el espacio (limitado por la cantidad de RAM instalada en el sistema, incluido el intercambio espacio). Sin embargo, muchas utilidades hacen posible la copia de seguridad de los datos de Ramdisk a intervalos establecidos y antes de que el sistema se apague, luego cargan los últimos datos cuando se inicia el sistema.



    Ventajas y desventajas

    Ventajas

    • Velocidad de transferencia muy alta (datos a la aplicación)
    • Tiempo de búsqueda muy bajo (búsqueda entre y en archivos)

    Desventajas

    • Los discos RAM se borrarán cuando se reinicie el sistema (no es cierto para Dataram RAMDisk)
    • Imposible si el tamaño del mundo excede la RAM disponible

    Por que tiene sentido para los servidores de Minecraft

    En un servidor de Minecraft, uno de los cuellos de botella más fuertes son las operaciones relacionadas con E / S de disco (por ejemplo, administración de fragmentos). Al mover los datos a la RAM, los tiempos de acceso serán casi instantáneos y las tasas de transferencia de datos serán significativamente más rápidas, lo que hará que la carga de fragmentos y el ahorro de operaciones sean mucho más rápidos. Dado que un mundo de Minecraft consta actualmente de muchos archivos fragmentados, el tiempo de búsqueda es igualmente importante, si no más, para la velocidad general.


    Configuración básica de Minecraft y ramdisk

    ¡Asegúrese de hacer una copia de seguridad de sus archivos antes de comenzar!

    GNU / Linux (forma fácil)

    Una forma sencilla de cargar un servidor de Minecraft en un disco RAM se publicó en el blog Aimless Bits [1] el 12 de marzo de 2011. Implica modificar el script de inicio del servidor disponible en la página web y realizar algunos cambios menores en fstab. Esta guía completa el proceso y realiza algunos cambios menores en el script de Aimless Bits.


    Esta guía rápida asume que tiene un usuario para cargar Minecraft, un directorio de Minecraft y un servidor en ejecución. También es útil estar familiarizado con el script de inicio /etc/init.d/minecraft.

    • En primer lugar, comience creando un directorio para el ramdisk en su directorio de inicio, es decir, "/ home / username / minecraft_ramdisk".
    • Para montarlo como un disco RAM, simplemente edite su archivo / etc / fstab /:

    sudo nano / etc / fstab

    Luego agregue esta línea, asegurándose de que la ruta sea correcta (nombre de usuario, nombre de directorio, etc.)

    tmpfs / home / username / minecraft_ramdisk valores predeterminados de tmpfs, tamaño = 512m 0 0

    El tamaño del disco RAM DEBE ser mayor que el mundo del directorio de Minecraft. Asegúrese de darse algunos gastos generales.

    • Reinicia tu computadora. El ramdisk ahora se cargará cada vez que reinicie. Si desea cargar inmediatamente, escriba

    mount -t tmpfs ninguno / inicio / nombre de usuario / minecraft_ramdisk -o tamaño = 512m

    Ahora es cuestión de simplemente ejecutar una secuencia de comandos modificada que carga los archivos de la unidad en el servidor, los vuelve a copiar oportunamente para evitar la pérdida de datos y realiza copias de seguridad. Nuevamente, esta es una versión modificada del script que se encuentra en Aimless Bits.

    Si tiene /etc/init.d/minecraft, elimínelo o sobrescríbalo con este script. Si no lo hace, cree un nuevo archivo de texto, llámelo Minecraft y copie este script en él.



    #! / bin / bash # /etc/init.d/minecraft # versión 0.9 (Sasquatch) 2016-04-29 (AAAA-MM-DD) ### BEGIN INIT INFO # Proporciona: 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 # Descripción breve: Minecraft RAMDISK Server # Descripción: Inicia el servidor de Minecraft a través de ramdisk ### END INIT INFO # CONFIGURACIÓN DEL SERVIDOR JARFILE = "spigot.jar" USERNAME = "minecraft" MCSTORE = "/ home / $ USERNAME / server_store" MCPATH = "/ home / $ USERNAME / ramdisk "BACKUPPATH =" / home / $ USERNAME / backups / "WORLD = 'world' # Configuración de la máquina CPU_COUNT = 8 MAX_RAM = 8048 START_RAM = 2048 # JAVA INVOCATION INVOCATION =" java -Xmx $ {MAX_RAM} M -Xms $ {START_RAM } M -server -jar $ JARFILE -o false "# CÓDIGOS DE COLOR NOR =" e [0m "BOL =" e [1m "GRE =" e [32m "RED =" e [31m "YEL =" e [33m " # ERRORS LAST_BACK = "$ {RED} $ {BOL} ¡El último $ WORLD.bak aún existe! $ {NOR} Es posible que el servidor se haya bloqueado. $ {YEL} Por favor revise los registros. $ {NOR} n" check_java () {if java -version 2> & 1> / dev / null | grep -q "versión java"; luego devuelve 1 si no devuelve 0 fi} check_ramdisk () {if! df -h | grep -q $ MCPATH; luego devuelve 1 si no devuelve 0 fi} as_user () {if ["` whoami` "==" $ USERNAME "]; luego bash -c "$ 1" else su - $ NOMBRE DE USUARIO -c "$ 1" fi} mc_status () {ps aux | grep -F -v grep | grep -F -v PANTALLA | grep -F --quiet $ JARFILE return $ ? } mc_start () {si check_java; entonces si mc_status; luego echo -e "$ {YEL} Intenté iniciar pero $ JARFILE ya se estaba ejecutando! $ {NOR}" else #if! df -h | grep -q $ MCPATH; luego # echo -e "$ {YEL} Iniciando RAMDISK ... $ {NOR} n" # start_ramdisk #fi echo -e "$ {YEL} Iniciando $ {JARFILE} ... $ {NOR}" if [-d $ MCSTORE / $ WORLD.bak]; luego echo -e $ LAST_BACK exit 1 fi cd $ MCPATH if [! -f "$ MCPATH / $ JARFILE"]; luego echo -e "$ {YEL} RAMDISK está vacío ... preparando. $ {NOR}" as_user "cp -R $ MCSTORE / * $ MCPATH /" fi as_user "cd $ MCPATH && screen -dmS minecraft $ INVOCATION" sleep 7 si mc_status; entonces echo -e "$ {GRE} $ {JARFILE} ahora se está ejecutando. $ {NOR}" else echo -e "$ {RED} $ {BOL} No se pudo iniciar $ JARFILE. $ {NOR}" fi fi más salir 1 fi} mc_saveoff () {si mc_status; luego echo -e "$ {YEL} $ {JARFILE} se está ejecutando ... suspendiendo los guardados. $ {NOR}" TO_SCREEN = "screen -p 0 -S minecraft -X eval 'stuff" as_user "$ TO_SCREEN" say SERVER BACKUP A PARTIR DE. El servidor va a solo lectura ... "

    Añade un comentario de Tutoriales / Servidor habilitado con Ramdisk
    ¡Comentario enviado con éxito! Lo revisaremos en las próximas horas.