Установка сервера Counter-Strike: Global Offensive на linux с помощью steamCMD

counter-strike-global-offensive1

В связи с тем что статья написана практически после релиза cs go информация в ней немного устарела, появились новые переменные, и привязка игрового сервера к steam аккаунту с помощью переменной +sv_setsteamaccount, а так же я решил обезопасить читателей и уберу установку сервера из под root, тем более сами valve не рекомендуют запускать сервера под root.

Как создать свой сервер cs go на linux?

Предположительно у вас есть vps или выделенный сервер и на нём установлена операционная система ubuntu / debian на которую вы будете устанавливать сервер cs go, у вас есть клиент putty для подключения к удаленной машине, и filezilla для работы с файлами из под windows.
Первое что нам нужно сделать это установить 32 библиотеку для нормальной работы steamcmd.

sudo apt install lib32stdc++6

Для того, чтобы наша машина чувствовала себя безопасно - создать пользователя под которым мы будем запускать игровой сервер. Делается это так:
Входим под root

sudo -i

Добавляем пользователя

useradd -m steam

Заходим под созданным пользователем

su - steam

Приступим к следующему этапу.

Установка , загрузка  сервера cs go на linux с помощью steamCMD

Создаем директории в которые скачаем архив для установки steamcmd и сам сервер cs go

mkdir ~/steamcmd && mkdir ~/steamcmd/csgo

Переходим в первую директорию

cd ~/steamcmd

Скачиваем архив

 wget http://media.steampowered.com/client/steamcmd_linux.tar.gz

Распаковываем

 tar xvfz *.tar.gz

Создаем файл для загрузки и обновления сервера

nano update.sh

Не закрывая вставим в него

STEAMEXE=steamcmd ./steam.sh +login anonymous +force_install_dir /home/steam/steamcmd/csgo +app_update 740 validate +quit

Разрешим запуск скрипта прописав права

chmod +x update.sh

Начнем установку сервера выполнив команду:

./update.sh

Загрузка и установка сервера занимает длительное время (от 10 до 30 мин), можете попить кофе, сходить покурить, или по-отжиматься :) А лучше создать ключ для сервера он будет нужен для привязки к аккаунту steam, и для того чтобы сервер был доступен в публичном поиске.

  SteamCMD: Установка сервера Counter-Strike: Source на Windows

Создание токена для севера cs go

Заходим в свой или регистрируем новый аккаунт, обязательно нужно привязать к нему мобильный телефон.
Переходим по этой ссылке: http://steamcommunity.com/dev/managegameservers Создаете новый аккаунт

  • Введите номер приложения для cs go 730
  • Введите примечание. Например my server cs go
  • Нажмите создать

Далее у вас должно быть примерно так:
установка сервера cs go на linux
Правила создание ключа вам видны на скриншоте.

И так сервер загрузился мы создали ключ для своего сервера. Приступим к запуску сервера cs go на linux.

Запуск сервера сs go на linux

Для того чтобы при запуске сервер не ругался на отсутствие файла steamclient.so vмы сделаем на него символьную ссылку:

ln -s /home/steam/steamcmd/linux32/steamclient.so /home/steam/.steam/sdk32/

Затем перейдем в папку с загрузившимся сервером:

cd /home/steam/steamcmd/csgo

создадим файлы запуска для классического сервера

nano start.sh

Вставим в него:

#!/bin/sh
./srcds_run srcds -game csgo -console -hostport 27015 -usercon +sv_setsteamaccount F409F9DIHUJBA7A85DE1EAC1E38CA0 +game_type 0 +game_mode 0 +mapgroup mg_active +map de_dust2 > /dev/null 2>&1

После переменной +sv_setsteamaccount нужно будет удалить ключ и ввести свой !!! Иначе ваш сервер не будет виден в поиске, него можно будет зайти только тем кто знает айпи и порт сервера.

  Готовый сервер CSS v90 Steam / No steam - Only 2000

Назначим права запуска для файла:

chmod +x start.sh

Запустим сервер

./start.sh

Сервер будет запущен в обычном классическом режиме.

Для того чтобы отключить сервер вводите в консоли

exit или quit

Меняем название сервера cs go создаем server.cfg

nano /home/steam/steamcmd/csgo/csgo/cfg/server.cfg

вставим в него

hostname "== == DD2 == only 24/7 == by neo == =="
host_name_store 1
host_info_show 1
host_players_show 2
sv_lan 0
sv_region 3
sv_tags "rank, ffa, msk, spb, ekb, nsk, dd2, dust2, ru, rus"
motdfile 1

// RCON
rcon_password "Yjh6ryceFFvjgRd"
sv_rcon_banpenalty 60

// Баланс
mp_autoteambalance 1

// Чат
sv_alltalk 1 // 1 - разрешаем разговоры между обеими командами. 0 - только свои
sv_deadtalk 0 // 1 - разрешаем разговоры живых и мертвых
sv_ignoregrenaderadio 1 // игнорируем сообщения броска гранаты
sv_spec_hear 1 // наблюдатели слышат других

// действие в конце матча
mp_endmatch_votenextmap 0 // 0 - отключаем стандартное голосование на смену карты в конце матча
mp_endmatch_votenextleveltime 15
mp_match_end_changelevel 1 // 1 - в конце матча смена карты
mp_match_end_restart 0
mp_endmatch_votenextmap_keepcurrent 0 // 1 - убрать отыгранную карту из голосования

// Игровые настройки сервера
mp_solid_teammates 1
mp_free_armor 0
mp_forcecamera 1
spec_freeze_time 2
mp_spectators_max 2
mp_freezetime 0
mp_startmoney 1200
//mp_afterroundmoney 1200 // 1200 - количество денег в каждом новом раунде, 0 - отключить эту функцию
//mp_maxmoney 16000 // максимальное количество денег
//mp_maxrounds 30 // максимально раундов до конца карты
//mp_timelimit 30 // время до конца карты в минутах
mp_buytime 0
mp_defuser_allocation 0
mp_death_drop_defuser 0
mp_death_drop_grenade 0
mp_death_drop_gun 0
mp_tkpunish 1
mp_autokick 0
mp_win_panel_display_time 3
mp_radar_showall 0

// Рейты сервера
sv_maxrate 128000
sv_mincmdrate 128
sv_minrate 128000
sv_minupdaterate 128
sv_client_cmdrate_difference 0

// Огонь по своим
mp_friendlyfire 1

// Управление ботами
bot_quota 0
bot_difficulty 2
bot_chatter "off"
bot_join_after_player 1
sv_hibernate_when_empty 0
sv_hibernate_postgame_delay 5

// Бэкапы отключим
mp_backup_round_file 0
mp_backup_round_file_last 0
mp_backup_round_file_pattern 0

Все готово теперь можно запустить по новому серер

  Как установить сервер Counter-Strike : Source на Ubuntu, Linux?

Как видите данная процедура установки и загрузки сервера "кс гоу" самостоятельно не так сложна.

SteamCMD : Если ваш сервер cs go  не хочет запускаться 

1) Причиной может быть то что у вас установлена 64 битная система , но не паникуйте все поправимо просто нужно установить  пакет 32 битные библиотеки для 64 битной OS

Для ubuntu , debian , linux mint

# apt-get install ia32-libs

Для CentOS

# yum install glibc.i686 libstdc++.i686

2) Возможно вам нужно так же установить права на запуск для этих файлов (srcds_run , srcds_linux)

переходим в директорию с нашим сервером

# cd /opt/csgo_server

и назначаем права на запуск файлам

# chmod +x srcds_linux
# chmod +x srcds_run

Больше проблем при запуске сервера gs go на linux я не встречал . Надеюсь вам помогла эта небольшая инструкция...

скачать Готовый сервер css v86

28 Комментария (ев)

  1. Приветствую. Сделал автозапуск, вручную скрипт выполняется, ошибок нет, серв работает. Когда делаю ребут, скрипт запускается, но в консоле пишет что не может найти файл (null).steam/sdk32/steamclient.so, файл конечно есть. До этого была такая ошибка при ручном запуске, но решилась через символ. Может в скрипте что то добавить?

    rc.local
    /root/server/start.sh

    start.sh
    #!/bin/bash
    cd /root/server
    screen -A -m -d -S server ./hlds_run

        • Можно через крон можно systemcmd, но самое главное от какого пользователя вы это делаете, просто доступ например vasya не может получить к файлу steamclient.so так как он принадлежит steam , или root. Если симлинк сделан на файл и запускаете от пользователя steam через крон то проблем быть не должно.

  2. Доброе время суток!
    Подскажите настроил сервер по Вашей инструкции. Не могу прикрутить SoureMod и MetaMod. Подскажите как это сделать? Если вообще это возможно?

    • Можно конечно, в папку addons распаковать metamod и sourcemod в эту же папку далее в этом файле

      /addons/sourcemod/configs/admins_simple.ini

      добавить админа по steam id или через ip

        • Сорян, она появится после того как распаковать архив с модом, если вы делали по моей инструкции то можно сделать все вот так:

          cd /home/steam/steamcmd/csgo/csgo/ && 
          wget https://mms.alliedmods.net/mmsdrop/1.10/mmsource-1.10.7-git961-linux.tar.gz && 
          wget https://sm.alliedmods.net/smdrop/1.8/sourcemod-1.8.0-git6040-linux.tar.gz &&
          tar xvfz mmsource-1.10.7-git961-linux.tar.gz && 
          tar xvfz sourcemod-1.8.0-git6040-linux.tar.gz

          Архивы c meta и sourcemod загрузятся и распакуются в нужной папке...

    • имеется в виду после перезагрузки системы чтобы автоматически был запущен серер? Если про это то это делается командой cron
      заходите под пользователем steam (это в том случае если под ним выполняли установку сервера )

      su steam

      Запускаете редактор комманд cron

      crontab -e

      Вписываете

      @reboot cd /home/steam/steamcmd/csgo/ && ./start.sh

      или вот так:

      @reboot sh /home/steam/steamcmd/csgo/start.sh

      Сохраняете. Попробуйте..

  3. Есть нюанс. Гайд на первой строчке гугла, но не актуален из-за нововведений вольво.
    1. app id теперь не 740 а 730 и под анонимусом его не скачаешь
    2.сервер без привязки managegameservers не доступен из вне.
    3.команда запуска не корректна частично
    часа 2 это все выяснял...
    Но все равно спасибо автору, пришлось все подробно разбирать.

  4. Установил сервер, всё установилось запустилось, но подключиться к серверу не получается.
    С другими Серверами CS такой проблемы не наблюдается.
    Когда запускаю с опцией sv_lan 1 и пытаюсь подключиться, то клиент говорит что сервер предназначен для локальных игр, когда запускаю с sv_lan 0 идёт подключение к серверу и всё на этом.
    С Самим сервером обмен есть, проверено tcpdumpom.
    Может нужно как-то настраивать опцию сервера sv_setsteamaccount ?
    Клиент CSGO скачал в инете, им подключаюсь к разным игровым серверам CS:Go проблем не наблюдается.
    В чём может быть проблема, куда смотреть?
    В логах сервера игры ничего не появляется в момент подключения.

    • если разные версии сервера и клиента то подключения не произойдет и если клиент пиратка и сервер без эмулятора no steam то подключения так же не произойдет...

    • у меня в юбунту вооюще в консоле не запускается, запускается игра с ботами и все... -console не пашет почему-то

  5. при смене карти на сервере крашиться кс в всіх хто на сервері і видає ошибку error loaging swf lile!
    падскажите пажалуста

    • убрал, думаю некоторые из за этой одной буквы не могли запустить сервер ))) ....

  6. Напишите что при скачивании сервера если не запускается update.sh нужно прописать apt-get install ia32-libs для ubuntu, yum install glibc.i686 libstdc++.i686 для CentOS
    Происходит это в основном с 64 разрядными системами ) мучался целый час пока вики не прочитал от валве ))))))

    • Тут же написано и была дана ссылка на то как установить

      1) Причиной может быть то что у вас установлена 64 битная система , но не паникуйте все поправимо просто нужно установить  пакет 32 битные библиотеки для 64 битной OS

      Но все равно спасибо добавил в текст так как народ че то по ссылкам кликать не любит, и читает не внимательно
      Я писал инструкцию под ubuntu , Debian , Linux mint

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here