Процесс в screen'e как бы останавливается но не ложится

Тема в разделе "Linux", создана пользователем NiGaByte, 23 фев 2015.

  1. NiGaByte

    NiGaByte

    Сообщения:
    601
    Симпатии:
    116
    Всем привет, с linux'om работаю месяц, у меня проблема, дело в том что сервер перестаёт быть доступным для игроков, но его процесс(сервера) не падает, а как бы перестаёт дальше выполняться.

    Мои действия:
    Запускаю screen, далее двигаюсь в папку с сервером, после запускаю сервер вот так:
    PHP:
    ./srcds_run -game csgo -console -usercon -port 27015 +gametype 0 +game_mode 0 +mapgroup mg_active +map de_dust2 -tickrate 64 -maxplayers_override 38 -autoupdate
    Сервер прекрасно работает, если падает, то встаёт, но в определённый момент(мне точно не известно в какой), процесс в screen'e тупо останавливается и что-то ждёт я хз, в этот момент сервер не доступен, это происходит до тех пор пока руками не снесёшь процесс, и не запустишь заново.

    ОС centos 6.6 32 bit

    Помогите разобраться я не шарю, но если мне начать объяснять то я вас пойму.

    P.S Ещё раз уточню, сервер не падает, процесс продолжает выполняться в скрине, но движений никаких, тупо встал и всё, помогает только перезапуск сервера, и так до следующего раза.
     
  2. TWRP

    TWRP Read Only

    Сообщения:
    317
    Симпатии:
    45
    попробуй этот стартник

    HTML:
    #!/bin/sh/
    echo "Starting CS:Source Server (Dust2 Only)"
    sleep 1
    taskset -c 2 screen -A -m -d -S cssdust ./srcds_run -console -localcser -nomaster -game cstrike -port 27016 +tv_port 27126 +fps_max 1000 -tickrate 66 +maxplayers 35 +map de_dust2 +sv_lan 0
    echo "Finish CS:Source Server (Dust2 Only)"
    
    taskset -c 0 - это привязка на 1-е ядро
    Естественно переделай под свой.

    Этот стартник для CSS если у тебя CSGO нужен другой...
     
  3. NiGaByte

    NiGaByte

    Сообщения:
    601
    Симпатии:
    116
    Верно у меня CSGO, так?
    PHP:
    #!/bin/sh/
    echo "Starting Tyt NAME(НАЧАЛО ЗАПУСКА)"
    sleep 1
    screen 
    ----S NAME_SCREEN ./srcds_run -game csgo -console -usercon -port 27015 +gametype 0 +game_mode 0 +mapgroup mg_active +map de_dust2 -tickrate 64 -maxplayers_override 38 -autoupdate 
    echo "Finish Tyt NAME(КОНЕЦ, только не пойму чего, конец запуска или конец работы серва?)"
    если написал без ошибок то, можешь пояснить, для чего:
    sleep 1 и вот эти ключи -A -m -d -S

    P.S Ядро одно)
     
  4. TWRP

    TWRP Read Only

    Сообщения:
    317
    Симпатии:
    45
    sleep это задержка.
    -A -m -d -S - это ключи утилиты screen.

    За гугли инфо о screen и найдешь пояснение этим ключам
     
    NiGaByte нравится это.
  5. NiGaByte

    NiGaByte

    Сообщения:
    601
    Симпатии:
    116
    TWRP, скажи как запускать, создать файл *.sh и потом его запускать ./*.sh, или тупо сразу прописать то что ты написал?
     
  6. TWRP

    TWRP Read Only

    Сообщения:
    317
    Симпатии:
    45
    закидываешь файл где находятся папки bin, platform, csgo
    потом ставишь на стартник права 777, а то не даст запустить.

    через PuTTY подкл и идешь сюда.
    Например: cd /var/www/css/data/css-servers/warmod
    потом пишешь ./start.sh и сервер запустится.

    Вообще в инете есть много видосов как запустить сервер на линухе
     

    Вложения:

    • start.rar
      Размер файла:
      289 байт
      Просмотров:
      6
    NiGaByte нравится это.
  7. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.194
    Симпатии:
    409
    Такая же проблема. Непонятно какое решение у ней
     
  8. September

    September

    Сообщения:
    1.781
    Симпатии:
    371
    какой-то плагин приводит сервер к такому крашу. У меня это было из-за нескольких модов связанных с MySQL, когда сервер терял связь с бд, то происходило именно то, что написано в первом сообщении ТС. Я не уверен, что в этом была проблема, но это прекратилось, при всём этом, в лаунчере LGSM есть функция, которая помогает этого избежать, она принудительно перезапустит сервер, если тот не встал после падения, мне это тоже помогло. Даже смена хостинга мне тогда не помогла.
     
  9. Tallanvor

    Tallanvor Красноглазый

    Сообщения:
    1.268
    Симпатии:
    436
    Тоже плюсую за LGSM
    Там проверяется не наличие процесса (который, ессно, присутствует), а стучатся непосредственно к серверу, своего рода пинговалка.
    Если не отвечает - то рестарт)
     
  10. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.194
    Симпатии:
    409
    И вы хотите сказать, что решение проблемы - перезапуск сервера ?
    P.S. Если что сервер чистый, даже нету SourceMod ...
    --- Добавлено позже ---
    Тогда я лучше буду запускать сервер без screen из crongtab'а, но не такое решение
    --- Добавлено позже ---
    Зтот "гребаный" движок Source и так имеет кучу Segmentation Fault утечек, а тут еще и принудительный перезапуск из-за screen ? Нет, спасибо.
     
    Последнее редактирование: 13 дек 2017 в 15:18
  11. Tallanvor

    Tallanvor Красноглазый

    Сообщения:
    1.268
    Симпатии:
    436
    @Vit_ amin, это не из-за скрина. Внутреннее что-то
     
  12. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.194
    Симпатии:
    409
    Тема на AlliedModders говорит, что из-за этого
     
  13. Tallanvor

    Tallanvor Красноглазый

    Сообщения:
    1.268
    Симпатии:
    436
    хз, LGSM на тмуксе живёт, и там этот функционал зачем-то тоже впилен. Решай сам :)
     
  14. MFS

    MFS

    Сообщения:
    1.534
    Симпатии:
    666
    Если учитывать то, что в дебиане за 10 лет не было такой ситуации ни разу, логично предположить, что проблема именно в связке centos+screen
     
  15. September

    September

    Сообщения:
    1.781
    Симпатии:
    371
    У меня было на debian