Форум
назад
1
далее

Установка сервера CS:GO на Linux

O JI E Ж K A
был  22 апреля в 21:47

30 Сентября 2016 в 10:15

Скачиваем и устанавливаем STEAM
CODE
adduser csgo

Вводим пароль, директория юзера и прочие настройки оставляем по умолчанию и пробиваем все ентером
Переходим в директорию пользователя
CODE
cd /home/csgo

Скачиваем Steam для linux
CODE
wget http://blog.counter-strike.net/wp-content/uploads//2012/04/steamcmd.tar.gz

Распаковываем наш скачанный архив
CODE
tar xvfz *.tar.gz

Далее нам нужно запустить Steam следующей командой
CODE
STEAMEXE=steamcmd ./steam.sh
Программа будет автоматически обновлена и будет выведена строка с надписью Steam>. Введите help для более подробной информации.

Далее нам нужно залогиниться используя свой Steam аккаунт. Для этого введите в командную строку:
CODE
login vashloginvsteam

Нажмите ввод (Enter) и затем введите свой пароль. Обратите внимание! если Вы используете защиту стима Steam Guard (если защита не включена, можете дальше не читать. Но я настоятельно рекомендую включить ее для вашей же безопасности), авторизация будет провалена, - все в порядке, посмотрите ваш почтовый ящик и скопируйте оттуда КОД. Установите этот код в командной строке таким образом:
CODE
Steam> set_steam_guard_code ВАШ_КОД

Далее повторите попытку авторизации заново (Steam>login vashloginvsteam) - на этот раз она должна быть успешной.

Или проще Steam>login anonymous

Переходим к скачиванию сервера

Зададим директорию по умолчанию для будущего сервера, я указал полный путь от корня сервера, можете поступить так же.
CODE
force_install_dir /home/csgo

В таком случае структура Вашего сервера будет выглядеть следующим образом
CODE
/home/csgo
csgo@Debian-60-squeeze-64-minimal:~$ ls -la
total 1928
drwxr-xr-x 10 csgo csgo 4096 May 12 06:25 .
drwxr-xr-x 5 root root 4096 May 12 05:42 ..
drwxr-xr-x 4 csgo csgo 4096 May 12 06:25 852513c258fb430b76a1a1c2497d65a4djtf4g
drwxr-xr-x 4 csgo csgo 4096 May 12 06:25 bin
drwxr-xr-x 14 csgo csgo 4096 May 12 06:25 csgo
drwxr-xr-x 2 csgo csgo 4096 May 12 06:24 depotcache
drwxr-xr-x 2 csgo csgo 4096 May 12 05:45 linux32
drwxr-xr-x 2 csgo csgo 4096 May 12 05:45 package
drwxr-xr-x 10 csgo csgo 4096 May 12 06:25 platform
drwxr-xr-x 2 csgo csgo 4096 May 12 05:45 public
-rwx------ 1 csgo csgo 99328 May 12 06:25 srcds.exe
-rwx------ 1 csgo csgo 10259 May 12 06:25 srcds_linux
-rwx------ 1 csgo csgo 11233 May 12 06:25 srcds_run
-rwxr-xr-x 1 csgo csgo 1964 May 8 14:08 steam.sh
-rw-r--r-- 1 csgo csgo 1715622 Apr 12 03:44 steamcmd.tar.gz
-rwx------ 1 csgo csgo 73216 May 12 06:25 thirdpartylegalnotices.doc


Если это Ваша первая установка запускаем команду
CODE
app_update 740 validate

В будущем достаточно обновляться
CODE
app_update 740

Полный список AppID

После завершения, введите quit для успешного завершения работы со Steam серверами.

Запуск сервера

Выходим из командной строки стима, и уже в терминале линукса (для тестов - строка запуска будет такой)

Classic Casual (классический режим):
CODE
./srcds_run -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_allclassic +map de_dust2

Classic Competitive (классический DeathMatch):
CODE
./srcds_run -game csgo -console -usercon +game_type 0 +game_mode 1 +mapgroup mg_allclassic +map de_dust2

Arms Race (классический GunGame):
CODE
./srcds_run -game csgo -console -usercon +game_type 1 +game_mode 0 +mapgroup mg_armsrace +map de_dust2

Demolition (разновидность GunGame, только не в режиме DeathMatch. За раунд достаточно убить одного противника, что бы в следующем получить следующие оружие):
CODE
./srcds_run -game csgo -console -usercon +game_type 1 +game_mode 1 +mapgroup mg_demolition +map de_dust2

Deathmatch:
CODE
./srcds_run -game csgo -console -usercon +game_type 1 +game_mode 2 +mapgroup mg_allclassic +map de_dust

Также в строке запуска можно прописать следующие переменные:
CODE
-tickrate "128"
+sv_lan "0"
+sv_pure "0"
+fps_max "1000"
-maxplayers_override "32" // Количество игроков на сервере. В конфигах может быть любое значение, но это будет главнее.


Для автоматического обновления сервера в конце дописываем.
CODE
-autoupdate -steam_dir /home/SteamCMD -steamcmd_script /home/SteamCMD/start-update_csgo.txt (путь к вашему файлу обновления сервера)


Login Failure: No Connection
На Linux вы можете получить ошибку "Login Failure: No Connection". Она связана с отсутствующими правилами iptables. Необходимо прописать например
CODE
iptables -A INPUT -p udp -m udp --sport 27000:27030 --dport 1025:65355 -j ACCEPT
iptables -A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT


Установка Counter Strike Global Offensive Server (SteamCMD) на CentOS 5.8

При установке увидели такую ошибку?
CODE
[00:35:11] [gamearmy@gamearmy test]$ ./steam.sh
./steam.sh: line 49: ulimit: open files: cannot modify limit: Operation not permitted
./steam.sh: line 56: /home/gamearmy/test/linux32/steam: No such file or directory
[00:35:12] [gamearmy@gamearmy test]$ STEAMEXE=steamcmd ./steam.sh
./steam.sh: line 49: ulimit: open files: cannot modify limit: Operation not permitted
/home/gamearmy/test/linux32/steamcmd: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.10' not found (required by /home/gamearmy/test/linux32/steamcmd)
/home/gamearmy/test/linux32/steamcmd: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /home/gamearmy/test/linux32/steamcmd)

Ругнулся на линию 54, удаляем ее из файла "steam.sh"

Проверяем. Пишет следующее.
CODE
[00:36:15] [gamearmy@gamearmy test]$ ./steam.sh
./steam.sh: line 54: /home/gamearmy/test/linux32/steam: No such file or directory


Это легко исправить. Перейдите к линии 54 от "steam.sh" и заменить следующее:
CODE
${DEBUGGER} "${STEAMROOT}"/${PLATFORM}/${STEAMEXE} "$@"

На это:
CODE
${DEBUGGER} "${STEAMROOT}"/${PLATFORM}/steamcmd "$@"

Теперь ошибки будут следующие:
CODE
[00:39:25] [gamearmy@gamearmy test]$ ./steam.sh
/path/to/steamsh/linux32/steamcmd: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.10' not found (required by /path/to/steamsh/linux32/steamcmd)
/path/to/steamsh/linux32/steamcmd: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /path/to/steamsh/linux32/steamcmd)


Одну из них вы можете решены путем загрузки libstdc.so.6.0.9 которые можно взять здесь.
CODE
Libstdc + + so.6.0.9.tar
wget http://dbiers.me/wp-content/uploads/2012/08/libstdc++.so_.6.0.9.tar.gz
tar -zxvf libstdc++.so_.6.0.9.tar.gz
rm -f libstdc++.so_.6.0.9.tar.gz


Затем вам нужно будет поместить его в /USR/Lib и связать его с запрашиваемой версией:
CODE
chmod 755 libstdc++.so.6.0.9
cp libstdc++.so.6.0.9 /usr/lib/.
cd /usr/lib/
unlink libstdc++.so.6
ln -s libstdc++.so.6.0.9 libstdc++.so.6
/sbin/ldconfig


Как только это будет завершено, вам все равно придется еще решить одну ошибку. Чтобы исправить это, вам нужно будет скачать пакет из Fedora 10.
x86 (32-bit):

CODE
http://rpm.pbone.net/index.php3/stat/4/idpl/10502724/com/libstdc++-4.3.2-7.i386.rpm.html

x64 (64-bit):
CODE
http://rpm.pbone.net/index.php3/stat/4/idpl/10505303/com/libstdc++-4.3.2-7.x86_64.rpm.html

x86 (32-Bit)
CODE
rpm -ivh libstdc++-4.3.2-7.x86_64.rpm --replacefiles

x64 (64-Bit)
CODE
rpm -ivh --replacefiles libstdc++-4.3.2-7.x86_64.rpm

Теперь можно приступать к установке самого сервера CS:GO
CODE
[00:48:01] [gamearmy@gamearmy csgotest]$ STEAMEXE=steamcmd ./steam.sh
./steam.sh: line 53: ulimit: open files: cannot modify limit: Operation not permitted
Installing breakpad exception handler for appid(steam)/version(1345149945)
[ 0%] Checking for available updates...
[ 0%] Download complete.
[----] Verifying installation...
unlinked 0 orphaned pipes
removing stale semaphore last operated on by process 19612 with name 0eBlobRegistryMutex_E16D90A478D322868F42C740015851FD
removing stale semaphore last operated on by process 19612 with name 0eBlobRegistrySignal_E16D90A478D322868F42C740015851FD
Steam Console Client (c) Valve Corporation
-- type 'quit' to exit --
Loading Steam3...OK.
Loading Steam2...OK.

Steam>




Для Linux x64 нужно установить библиотеки x86:
Debian, Ubuntu, Mint и т.д.:
CODE
apt-get install ia32-libs

Если выходит ошибка:
The following packages have unmet dependencies: ia32-libs : Depends: ia32-libs-multiarch but it is not installable E: Unable to correct problems, you have held broken packages.
CODE
sudo dpkg --add-architecture i386

CODE
sudo apt-get update

перед запуском
CODE
apt-get install ia32-libs

Red Hat, RHEL, Fedora, CentOS и т.д.:
CODE
yum install glibc.i686 libstdc++.i686

Arch Linux:
Вначале включаем репозиторий multilib
и пишем это
CODE
pacman -S lib32-gcc-libs

На Linux мне очень сложно обновлять сервер. Каждый раз глючит вход в стим аккаунт.
Облегчил и ускорил обновление скрипт, который прописываю при обновлении сервера.

Создайте файл в паке SteamCmd с названием update_csgo.txt

Вписываем следующее для SteamCmd в файл:
CODE
@ShutdownOnFailedCommand 1
@NoPromptForPassword 1
@sSteamCmdForcePlatformType windows - данный параметр может быть linux или macos, в зависимости от ОС вашего компа.
login anonymous
force_install_dir /Home/csgo
app_update 740 validate
exit


Запускаем SteamCmd с параметром +runscript.
CODE
STEAMEXE=steamcmd ./steam.sh +runscript update_csgo.txt


P.S. Если у вас возникает ошибка ERROR! Failed to install app 'xxxxxx' (No subscription)
Значит нужно в параметре login указать логин и пароль. Анонимно не будет качаться. Это при скачивании файлов сервера для любой игры.


Своя группа карт в gamemodes_server.txt

В строке запуска укажите название своей группы +mapgroup mg_all

В файле gamemodes_server.txt

Находим внизу в разделе настройки режима "mapgroupsMP" и вставляем.
"mg_all" ""

Чтобы получилось
// Map groups for online modes
CODE
"mapgroupsMP"
{
"mg_all" ""
"mg_bomb" "0"
"mg_hostage" "1"
"mg_de_train" "2"
"mg_de_dust" "3"
"mg_de_dust2" "4"
"mg_de_aztec" "5"
"mg_de_inferno" "6"
"mg_de_nuke" "7"
"mg_de_vertigo" "8"
"mg_cs_italy" "9"
"mg_cs_office" "10"
}


Ищем ниже раздел групп карт "mapgroups"

Добавляем свою группу со списком карт.

CODE
"mg_all" // mapgroup definition
{
"name" "mg_all"
"maps"
{

"cs_office" ""
"cs_italy" ""
"de_dust2" ""
"de_train" ""
"de_inferno" ""
"de_dust" ""
"gg_office" ""
"de_aztec" ""
"gg_dust" ""
"de_nuke" ""

}
}

O JI E Ж K A
был  22 апреля в 21:47

29 Августа 2017 в 10:51

Дополнительные параметры запуска
CODE
-tickrate
Устанавливает FPS сервера. Стандартное значение 64. Рекомендуемое для более комфортной игры 128, но это увеличит потребление ресурсов.
-insecure
Отключение VAC. Лучше этого не делать, если только вы не собираетесь собрать у себя на сервере самых отборных читеров
+net_public_adr 111.222.333.444
Задать внешний IP-адрес сервера. Полезно, если у Вас стоит роутер.
-port 27015
Задать порт сервера. ПО умолчанию 27015


Режимы игры
По умолчанию сервер запустится в режиме Classic casual(Классический обычный),
Чтобы изменить режим игры, нужно дописать параметры game_type и game_mode.


CODE
Классический обычный (Casual): +game_type 0 +game_mode 0
Классический соревновательный (Competitive): +game_type 0 +game_mode 1
Гонка вооружений (GunGame): +game_type 1 +game_mode 0
Уничтожение объекта (GunGame с бомбой - Demolition): +game_type 1 +game_mode 1
Бой насмерть (Deathmatch): +game_type 1 +game_mode 2



Для каждого режима игры на сервере созданы по умолчанию файлы конфигурации.
CODE
cfg/gamemode_armsrace.cfg
cfg/gamemode_casual.cfg
cfg/gamemode_competitive.cfg
cfg/gamemode_deathmatch.cfg
cfg/gamemode_demolition.cfg


Они все включаются по умолчанию от выбранного режима игры, который вы прописали в строке запуска сервера. Для каждого режима есть отдельные блоки настроек в /csgo/gamemodes.txt



Настройка сервера
Стандартная конфигурация каждого игрового режима определена в файле /csgo/gamemodes.txt. Изменять этот файл не рекомендуется. Если вы хотите изменить что-то в игровом режиме, используйте файл gamemodes_server.txt.example и сохраните его например gamemodes_server1.txt. Это пример файла настройки игровых режимов. Пропишите его в строке запуска сервера для параметра -gamemodes_serverfile
CODE
-gamemodes_serverfile "gamemodes_server1.txt"

Поправим в файле только конфиг игрового режима сервера:
Значения из этого файла перезапишут стандартные значения из gamemodes.txt
не буду отображать содержимое всего файла, только самую суть.


CODE
"GameModes_Server1.txt"
{
"gameTypes" //типы игрового режима
{
"classic" //классические режимы
{
"gameModes" //игровой мод
{

/////////////////////////////////////////
// Соревновательный
/////////////////////////////////////////
"competitive"

"exec"
{
// Выполнение вашего конфига server_last.cfg. Будет выполнен после server.cfg и перезапишет его параметры.
// Можно добавить свои конфиги, дописав
// В этом режиме по умолчанию используется конфиг cfg/gamemode_competitive.cfg или cfg/gamemode_competitive_server.cfg
// Я рекомендую его отредактировать как вам нужно и сохранить отдельным файлом, например gamemode_competitive_server1.cfg
// "exec" "название конфига.cfg"
"exec" "server_last.cfg"
"exec" "gamemode_competitive_server1.cfg"
}

/////////////////////////////////////////
// Обычный
/////////////////////////////////////////
"casual"
{
"exec" // В этом режиме по умолчанию используется конфиг cfg/gamemode_casual.cfg или cfg/gamemode_casual_server.cfg
{
// Укажем и создадим для этого режима новый файл конфигурации cfg/gamemode_casual_server1.cfg
"exec" "gamemode_casual_server1.cfg"
}

"gungame" // "Gungame" режимы
{
"gameModes"
{
/////////////////////////////////////////
// Гонка вооружений, gungame без бомбы ARMS RACE
/////////////////////////////////////////
"gungameprogressive"
{
"exec" // В этом режиме по умолчанию используется конфиг cfg/gamemode_armsrace.cfg или cfg/gamemode_armsrace_server.cfg
{
"exec" "gamemode_armsrace_server1.cfg"
}

/////////////////////////////////////////
// Уничтожение объекта, gungame с бомбой
/////////////////////////////////////////
"gungametrbomb"
{
"exec" // В этом режиме по умолчанию используется конфиг cfg/gamemode_demolition.cfg или cfg/gamemode_demolition_server.cfg
{
"exec" "gamemode_demolition_server1.cfg"
}

/////////////////////////////////////////
// DeathMatch Бой насмерть
/////////////////////////////////////////
"deathmatch" // Deathmatch режим. По умолчанию он отсутствует в файле.
{
"exec" // В этом режиме по умолчанию используется конфиг cfg/gamemode_deathmatch.cfg или cfg/gamemode_deathmatch_server.cfg
{
"exec" "gamemode_deathmatch_server1.cfg"
}

///////////////////////////////////////////////////////////////////////////////
// Группы карт. Вы можете создать свою группу карт, и добавить в нее карты, которые вам нравятся.
// Если вы используете Sourcemod, то, скорее всего, будете использовать какой-нибудь плагин управления картами, и этот раздел вам не понадобится.
///////////////////////////////////////////////////////////////////////////////
"mapgroups"
{
"mg_bomb_se" // Название группы карт
{
"name" "mg_bomb_se"
"maps"
{
"de_dust_se" ""
"de_dust2_se" ""
"de_nuke_se" ""
"de_train_se" ""
"de_inferno_se" ""
"de_aztec_se" ""
}

ЦИТАТА
назад
1
далее
АКТИВНЫЕ ТЕМЫ
O JI E Ж K A
26 Декабря 2023 в 13:22
G3ntEZ
04 Января 2024 в 14:23
Bober
05 Июня 2022 в 07:55
fynpaso
16 Апреля 2024 в 12:03
micro_killer
23 Февраля 2020 в 11:54
O JI E Ж K A
11 Января 2020 в 17:23
O JI E Ж K A
14 Ноября 2019 в 18:48
xopumun11
18 Апреля 2024 в 09:30
O JI E Ж K A
22 Июня 2018 в 11:01
MRWhite9
06 Января 2021 в 12:47
Популярные темы
xopumun11
18 Апреля 2024 в 09:30
Salazar
04 Июня 2018 в 14:59
G3ntEZ
04 Января 2024 в 14:23
micro_killer
23 Февраля 2020 в 11:54
micro_killer
23 Февраля 2020 в 12:13
relabyc
16 Апреля 2024 в 17:04
micro_killer
15 Октября 2017 в 13:08
O JI E Ж K A
09 Января 2021 в 13:40
fynpaso
16 Апреля 2024 в 12:03
micro_killer
16 Февраля 2020 в 14:13
мы в социальных сетях
Сайт может содержать контент,
не предназначенный для лиц
младше 16 лет
Главная Мониторинг серверов Новости Скины Карты Форум Скачать CSS v34
Спонсор раздела: