Хостинг серверов Minecraft playvds.com
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Туториал Установка сервера на vds

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем SmokeD, 13 май 2012.

  1. Rook

    Rook Активный участник

    Баллы:
    63
    Имя в Minecraft:
    evil326
    А где можно зарегаться, чтобы заявку приняли?
     
  2. Хостинг MineCraft
    <
  3. Автор темы
    SmokeD

    SmokeD Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    SmokeD
    Какую?
     
  4. OrAnGe_BoX

    OrAnGe_BoX Активный участник Пользователь

    Баллы:
    88
    На VDS стоит ограничение на потребляемые ресурсы, если сервак жрет больше, то он вырубается, как это исправить?
     
  5. Автор темы
    SmokeD

    SmokeD Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    SmokeD
    -Xms минимум оперативки. -Xmx максимум оперативки.
     
  6. semen1999

    semen1999 Активный участник Пользователь

    Баллы:
    78
    login as: root
    root@77.72.133.39's password:
    Last login: Tue Oct 9 14:09:06 2012 from 85.26.235.185

    п■п╬п╠я─п╬ п©п╬пІп╟п╩п╬п╡п╟я┌я▄!

    ----------------------------------------------------------------------------------------------------
    п║я│я▀п╩п╨п╦ пҐп╟ пЄп╬п╨я┐п╪п╣пҐя┌п╟я├п╦я▌:

    * Colobrudge Wiki: http://www.colobridge.net/wiki/
    * п·п©п╦я│п╟пҐп╦п╣ я┬п╟п╠п╩п╬пҐп╬п╡ п·п║: http://www.colobridge.net/wiki/vps/templates
    * п═п╣пЇп╣я─п╡пҐп╬п╣ п╨п╬п©п╦я─п╬п╡п╟пҐп╦п╣: http://www.colobridge.net/wiki/backup

    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    * п²п• п≈п░п▒пёп■п╛п╒п• п║п°п•п²п≤п╒п╛ п÷п░п═п·п⌡п╛ п■п⌡п╞ MySQL

    п≤я│п©п╬п╩я▄пЇя┐п╧я┌п╣ п╨п╬п╪п╟пҐпЄя┐: mysql_secure_installation

    * п≤п║п÷п·п⌡п╛п≈пёп≥п╒п• п▓п•п≈п■п• п║п⌡п·п√п²п╚п• п÷п░п═п·п⌡п≤, п≤п²п░пїп• п▓п░п╗ п║п•п═п▓п•п═ п▒пёп■п•п╒ п▓п≈п⌡п·п°п░п²

    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    -----------------------------------------------------------------------------------------------------

    [root@ies-mc ~]#
    такое происходит после авторизации(хостинг colobridge)
     
  7. Автор темы
    SmokeD

    SmokeD Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    SmokeD
    Это особенности Colorbridg 'a. Под тайной кривой кодировке тебе дают советы и ссылки на вики, и.т.д.
    Вообщем ничего важного.
     
    semen1999 нравится это.
  8. frostboolio

    frostboolio Активный участник

    Баллы:
    68
    Skype:
    frostboolio
    Имя в Minecraft:
    frostboolio
    сделайте гайд по установке Java на линукс через root доступ, то есть на VDS хост
     
  9. Автор темы
    SmokeD

    SmokeD Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    SmokeD
    Чуть позже. Пока нет VDS хоста. Появится время поставлю линукс на ВМ и сделаю видео гайд.
     
  10. over9000

    over9000 Активный участник

    Баллы:
    63
    Имя в Minecraft:
    Adidas
    Народ помогите пишу в консоли ./start.sh и выдает ошибку
    root@rav-dev-con:/home/minecraft# ./start.sh
    ./start.sh: line 1: java: command not found
    что делать?
     
  11. frostboolio

    frostboolio Активный участник

    Баллы:
    68
    Skype:
    frostboolio
    Имя в Minecraft:
    frostboolio
  12. Автор темы
    SmokeD

    SmokeD Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    SmokeD
    Содержимое файла в студию.
     
  13. Автор темы
    SmokeD

    SmokeD Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    SmokeD
    Какая ось?
     
  14. iluha97

    iluha97 Активный участник

    Баллы:
    88
    а на сколько слотов рассчитан этот тарифный план?
    (VDS-5 у IPHoster)
     
    DavidShabaev нравится это.
  15. smilesdc

    smilesdc Няша Модератор

    Баллы:
    153
    Имя в Minecraft:
    smilesdc
    Со скринами же:
    screen -S Name - создание.
    screen -x Зайти на скрин.
    screen -ls - Посмотреть все скрины.
    ctrl + a + d - сверуть.
    ctrl + a + x - удалить. Вроде.
     
    SmokeD нравится это.
  16. Автор темы
    SmokeD

    SmokeD Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    SmokeD
    Забыл апдейтнуть пост, НИКОГДА НЕ БЕРИТЕ СЕРВЕРА У IPHOSTER, лучше берите хосты у @Mr.Sota , дешевле и лучше. IPHOSTER, не дают нормально работать яве.
     
    GJEvolution нравится это.
  17. papagot

    papagot Активный участник

    Баллы:
    63
    Skype:
    oleg555555555
    Имя в Minecraft:
    papagot
    предлагаю ещё добавить скрипт по управлению сервером майна
    1) создаём файл в /etc/init.d/minecraft/
    2) cd /etc/init.d/
    3) nano minecraft
    4) вставляем код
    Код:
    #!/bin/bash
    # /etc/init.d/minecraft
     
    ### 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:    Minecraft server
    # Description:    Starts the minecraft server
    ### END INIT INFO
     
    #Settings
    SERVICE='craftbukkit.jar'
    OPTIONS='nogui'
    USERNAME='root'
    WORLD='Oddworld_Medieval'
    MCPATH='/var/www/server3'
    BACKUPPATH='/var/www/minecraft.backup'
    MAXHEAP=1536
    MINHEAP=580
    HISTORY=750
    CPU_COUNT=1
    INVOCATION="java -Xmx${MAXHEAP}M -Xms${MINHEAP}M -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 -h $HISTORY -dmS minecraft $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 minecraft -X eval 'stuff \"say SERVER BACKUP STARTING. Server going readonly...\"\015'"
        as_user "screen -p 0 -S minecraft -X eval 'stuff \"save-off\"\015'"
        as_user "screen -p 0 -S minecraft -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 minecraft -X eval 'stuff \"save-on\"\015'"
        as_user "screen -p 0 -S minecraft -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 minecraft -X eval 'stuff \"say SERVER SHUTTING DOWN IN 10 SECONDS. Saving map...\"\015'"
        as_user "screen -p 0 -S minecraft -X eval 'stuff \"save-all\"\015'"
        sleep 10
        as_user "screen -p 0 -S minecraft -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"`
        as_user "cd $MCPATH && wget -q -O $MCPATH/minecraft_server.jar.update $MC_SERVER_URL"
        if [ -f $MCPATH/minecraft_server.jar.update ]
        then
          if `diff $MCPATH/$SERVICE $MCPATH/minecraft_server.jar.update >/dev/null`
          then
            echo "You are already running the latest version of $SERVICE."
          else
            as_user "mv $MCPATH/minecraft_server.jar.update $MCPATH/$SERVICE"
            echo "Minecraft successfully updated."
          fi
        else
          echo "Minecraft update could not be downloaded."
        fi
      fi
    }
     
    mc_backup() {
      mc_saveoff
     
      i=2 #(  )
    find $BACKUPPATH -type f -mtime +$i -exec rm -f {} \;
     
      NOW=`date "+%Y-%m-%d_%Hh%M"`
      BACKUP_FILE="$BACKUPPATH/${WORLD}_${NOW}.tar"
     
        time=`date +%H%M`
        if [ "$time" -ge "0000" ]minecraft.backup
        cd /var/www/minecraft.backup
        find /var/www/minecraft.backup/* -mtime +1 -print0 | xargs -0 rm -rf
        else
        echo 'ne prishlo vremja udoolat';
        fi
         
      echo "Backing up minecraft world..."
      #as_user "cd $MCPATH && cp -r $WORLD $BACKUPPATH/${WORLD}_`date "+%Y.%m.%d_%H.%M"`"
      as_user "tar -C \"$MCPATH\" -cf \"$BACKUP_FILE\" $WORLD"
     
      echo "Backing up $SERVICE"
      as_user "tar -C \"$MCPATH\" -rf \"$BACKUP_FILE\" $SERVICE"
      #as_user "cp \"$MCPATH/$SERVICE\" \"$BACKUPPATH/minecraft_server_${NOW}.jar\""
     
      mc_saveon
     
      echo "Compressing backup..."
      as_user "gzip -f \"$BACKUP_FILE\""
      echo "Done."
      as_user "screen -p 0 -S minecraft -X eval 'stuff \"say SERVER RESTART IN 10 SECONDS...\"\015'"
      echo "SERVER RESTART IN 10 SECONDS..."
      sleep 10
        mc_stop
        mc_start
      if pgrep -u $USERNAME -f $SERVICE > /dev/null
        then
          echo "$SERVICE is running."
        else
          echo "$SERVICE is not running."
        fi
    }
     
    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 minecraft -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_backup
        ;;
      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: $0 {start|stop|update|backup|status|restart|command \"server command\"}"
      exit 1
      ;;
    esac
     
    exit 0
    

    5) разрешаем выполнять скрипт chmod a+x /etc/init.d/minecraft

    6) запускаем при старте сервера update-rc.d minecraft defaults

    7) в крон табе 0,30 * * * * /etc/init.d/minecraft backup
     
    wailorman нравится это.
  18. Автор темы
    SmokeD

    SmokeD Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    SmokeD
    Способ не всегда подойдет, т.к не на всех VPS/VDS есть Cron.
     
  19. Serrrgio

    Serrrgio Старожил Пользователь

    Баллы:
    173
    Skype:
    nonecsa
    Имя в Minecraft:
    None
    @SmokeD, пример можешь привести? cron это одна из основных служб linux

    если вдруг, по каким-то причинам, крона не будет, то что мешает сделать sudo apt-get install cron ?
     
  20. ksada

    ksada Старожил

    Баллы:
    103
    Skype:
    k-s-a-d-a
    В памятку про screen добавьте:
    openjdk лучше не юзать, раньше у меня стоял - сильно глючил, лучше скачать нормальную яву от oracle
     
  21. papagot

    papagot Активный участник

    Баллы:
    63
    Skype:
    oleg555555555
    Имя в Minecraft:
    papagot
    Полностью согласен тем более крон нужен только для запуска авто бекапа удаление старых бекапов и перезапуск сервера после бекапа если надо могу поставить коменты где что удалить надо....
    И да если есть VPS например на debian или ubuntu или то там этот пакет ставится автоматически. Он может там отсутствовать только если его ЯВНО удалять админы.

    SmokeD, Не в обиду но похожу вы даже с кронам и не знакомы что это такое выдержка из википедии
    Плюс если у вас на винде нет Планировщика задач значит вы на маке сидите.

    А сам скрипт проста облегчает жизнь запуск и остановку сервера например
    чтоб остановить сервер не надо бежать в скрин а достаточна ввести
    service minecraft stop
    для запуска
    service minecraft start
    для перезапуска
    service minecraft restart
    Плюс если сервер будет перезагружен по тем или иным причинам то сервер майна без данного скрипта не запустится а тут хоть сервер 100000 перезагружай сервер майна будет запущен автоматически. так что думаю в туториал вверх темы надо поставить. если автор согласится поставить могу прокомментировать код и подробней написать как работать со скриптом.
     

Поделиться этой страницей