Установку будем производить на операционной системе CentOS 6.0. Перед установкой сервера counter-strike 1.6 имеем чистую систему, как раз после установки. Единственное, были выполнены команды:
yum update yum install mc
Создадим папку где будем хранить весь исходный материал для серверов
mkdir source
Скачаем hldsupdatetool.bin
wget http://www.steampowered.com/download/hldsupdatetool.bin
Даём нужные права на файл:
chmod +x hldsupdatetool.bin
Запускаем hldsupdatetool.bin
./hldsupdatetool.bin -bash: ./hldsupdatetool.bin: /lib/ld-linux.so.2: bad ELF interpreter: Нет такого файла или каталога
У меня возникла ошибка. Решил её установкой:
yum install ld-linux.so.2
Пробуем снова
./hldsupdatetool.bin
На вопрос… отвечаем «YES»
Enter 'yes' to accept this agreement, 'no' to decline: yes
Выдало ошибку: «sh: uncompress: команда не найдена»
Enter 'yes' to accept this agreement, 'no' to decline: yes sh: uncompress: команда не найдена tar: Это не похоже на tar-архив tar: Завершение работы с состоянием неисправности с из-за возникших ошибок
Решаем её следующим образом:
ln -s /usr/bin/gunzip /usr/bin/uncompress
Пробуем снова:
./hldsupdatetool.bin
Если увидим ниже написанное, то все ок.
Enter 'yes' to accept this agreement, 'no' to decline: yes extracting steam.tar.Z...done
Проверяем, появились ли нужные нам файлы:
ls hldsupdatetool.bin readme.txt steam
Обновляемся, причем нас попросят это сделать два раза:
[root@cs hlds]# ./steam Checking bootstrapper version ... Getting version 45 of Steam HLDS Update Tool Downloading. . . . . . . . . . . . Steam Linux Client updated, please retry the command [root@cs hlds]# [root@cs hlds]# ./steam Checking bootstrapper version ... Getting version 45 of Steam HLDS Update Tool Downloading. . . . . . . . . . . . Steam Linux Client updated, please retry the command CAsyncIOManager: 0 threads terminating. 0 reads, 0 writes, 0 deferrals. CAsyncIOManager: 21 single object sleeps, 0 multi object sleeps CAsyncIOManager: 0 single object alertable sleeps, 0 multi object alertable sleeps [root@cs hlds]#
Создаем файл, через который будем в дальнейшем обновлять сервер:
touch update.sh
Даём нужные права на файл:
chmod +x update.sh
Записываем необходимое для обновления в файл:
echo ./steam -command update -game cstrike -dir . > update.sh
Проверяем:
cat update.sh ./steam -command update -game cstrike -dir .
Скачиваем (обновляем) сервер:
[root@cs hlds]# ./update.sh Checking bootstrapper version ... Updating Installation No installation record found at . No installation record found at . No installation record found at . Checking/Installing 'Counter-Strike Base Content' version 35 0.16% downloading ./cstrike/cl_dlls/client.dll 0.16% downloading ./cstrike/classes/ak47.res 0.16% downloading ./cstrike/classes/arctic.res 0.16% downloading ./cstrike/classes/aug.res 0.16% downloading ./cstrike/classes/autoselect_ct.res 0.16% downloading ./cstrike/classes/autoselect_t.res 0.16% downloading ./cstrike/classes/awp.res 0.16% downloading ./cstrike/classes/cancelbutton.res 0.16% downloading ./cstrike/classes/default.res 0.16% downloading ./cstrike/classes/defuser.res 0.16% downloading ./cstrike/classes/deserteagle.res 0.16% downloading ./cstrike/classes/elites.res 0.16% downloading ./cstrike/classes/equipment.res
Ждем пока скачается
99.06% downloading ./valve/valve.rc 99.06% downloading ./valve/valvecomm.lst 100.00% downloading ./valve/xeno.wad Connection Reset, errno 104 "Connection reset by peer" CAsyncIOManager: 0 threads terminating. 0 reads, 0 writes, 0 deferrals. CAsyncIOManager: 76 single object sleeps, 0 multi object sleeps CAsyncIOManager: 0 single object alertable sleeps, 0 multi object alertable sleeps [root@cs hlds]#
Создадим скрипт для запуска-проверки сервера:
chmod +x start.sh vi start.sh
Содержимое файла «start.sh»
#!/bin/bash echo «Starting CS:1.6» sleep 1 ./hlds_run -binary ./hlds_i686 -game cstrike -secure -console -pingboost 1 +exec server.cfg -verify_all +port 27015 +maxplayers 22 +map de_dust2 +ip 0.0.0.0
Запускаем
[root@cs hlds]# ./start.sh Starting CS:1.6 Auto-restarting the server on crash Console initialized. scandir failed:/hdd2/source/hlds/./valve/SAVE scandir failed:/hdd2/source/hlds/./platform/SAVE Protocol version 48 Exe version 1.1.2.6/Stdio (cstrike) Exe build: 16:56:12 Mar 8 2010 (4883) STEAM Auth Server couldn't exec listip.cfg couldn't exec banned.cfg Server IP address 0.0.0.0:27015 scandir failed:/hdd2/source/hlds/./valve/SAVE scandir failed:/hdd2/source/hlds/./platform/SAVE [S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway. scandir failed:/hdd2/source/hlds/./valve/SAVE scandir failed:/hdd2/source/hlds/./platform/SAVE [S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway. couldn't exec listip.cfg couldn't exec banned.cfg scandir failed:/hdd2/source/hlds/./valve/SAVE scandir failed:/hdd2/source/hlds/./platform/SAVE [S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway. Connection to Steam servers successful. VAC secure mode is activated. Птн Сен 2 07:22:45 NOVST 2011: Server Quit [root@cs hlds]#
Исправляем ошибки:
couldn't exec listip.cfg
Создаем файл в listip.cfg папке cstrike:
touch cstrike/listip.cfg
Ошибка
couldn't exec banned.cfg
Создаем файл в banned.cfg папке cstrike:
touch cstrike/banned.cfg
Ошибка
scandir failed:/hdd2/source/hlds/./valve/SAVE
Создаем папки valve/SAVE в корне сервера
mkdir valve/SAVE
Ошибка
scandir failed:/hdd2/source/hlds/./platform/SAVE
Создаем папки platform/SAVE в корне сервера
mkdir platform mkdir platform/SAVE
Пробуем запустить снова:
[root@cs hlds]# ./start.sh Starting CS:1.6 Enabling debug mode ./hlds_run: line 134: gdb: команда не найдена Please install gdb first.
Исправляем ошибку:
yum install gdb
Проверяем:
[root@cs hlds]$ ./start.sh Starting CS:1.6 Enabling debug mode Auto-restarting the server on crash Console initialized. Protocol version 48 Exe version 1.1.2.6/Stdio (cstrike) Exe build: 16:56:12 Mar 8 2010 (4883) STEAM Auth Server Server IP address 0.0.0.0:27015 [S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway. [S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway. [S_API FAIL] SteamAPI_Init() failed; unable to update local steamclient. Continuing with current version anyway. Connection to Steam servers successful. VAC secure mode is activated.
Пользователь для сервера
Создадим пользователя от которого будем управлять и запускать сервер:
useradd gsrv
Установим пароль для пользователя «gsrv»:
passwd gsrv Смена пароля для пользователя gsrv. Новый пароль : Повторите ввод нового пароля : passwd: все токены проверки подлинности успешно обновлены.
Передаем права пользователю gsrv
chown -R gsrv:gsrv source/
Дальше все действия с сервером будем выполнять от пользователя gsrv
su gsrv
Настройка IPTABLES
Создадим файл
vi /etc/rc.d/rc.fw
со следующим содержимым:
#! /bin/sh WAN_IF="eth0" WAN_IP="ИП_АДРЕС_ВАШЕГО_СЕРВЕРА" LO_IF="lo" LO_IP="127.0.0.1" LO_MASK="255.0.0.0" LO_NET="$LO_IP/$LO_MASK" SERV_PORT="27015:27025" SHH_PORT="22" IPT="/sbin/iptables" $IPT -F $IPT -t nat -F $IPT -t mangle -F $IPT -X $IPT -P INPUT DROP $IPT -P OUTPUT ACCEPT $IPT -A INPUT -i $LO_IF -j ACCEPT $IPT -A OUTPUT -o $LO_IF -j ACCEPT $IPT -A INPUT -p ICMP --icmp-type 8 -j ACCEPT $IPT -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT $IPT -A INPUT -p TCP --dport 22 -j ACCEPT $IPT -A INPUT -p tcp --dport 27015 -j ACCEPT $IPT -A INPUT -p udp --dport 27015 -j ACCEPT
Делаем его запускным
chmod +x rc.fw
[download id=»41″ format=»1″]
27 Птн Сен 2 07:22:45 NOVST 2011: Server Quit — это надо писать в start.sh ?
нет
А как его сохоанить ? Применить? Start.sh?
Если речь идет о
# vi start.sh
, то для начала редактирования надо нажать «i»
чтобы записать — клавиша «esc» затем набираем «!q» и жмем «ENTER»
хм..оставлял комментарий с ника Hatiko.
Жду ответов
а ты шустряк 😉
ну так) =)
сделай лучше сетевой адаптер виртуалбокса в режиме моста !
а вот как ты порты пробросил в виртуал боксе…. вопрос хороший
😉
Глянул…и точно, есть такое в виртуалбоксе…может порт пробрасывать…пока не пробовал.
да
настройки оставь то что по умолчанию
Наверно проводок провайдера прямо в комп всунут? угадал?
ребята помогите все по инструкцие делал но проблема в том что выбивает
-bash: ./hldsupdatetool.bin: /lib/ld-linux.so.2: bad ELF
уже все об искал и нечего ненашол
Кто поможет пишыте Skype: yarosla_v_boy
BK; vk.com/id_kiss_fm
Скрин что выбивает мне !!
php-studia.ru/?s=2013010705.png
а что делоть если выбевает
root@root:/home/server1cs# ./steam -command update -game cstrike -dir .
Checking bootstrapper version …
removing stale semaphore last operated on by process 11318 with name 0eBlobRegistryMutex_07692C9F0DCCAB9B49E0AA2095A1952C
removing stale semaphore last operated on by process 11318 with name 0eBlobRegistrySignal_07692C9F0DCCAB9B49E0AA2095A1952C
Updating Installation
Determining which depot(s) to install/update…
** ‘game’ options for Source DS Install:
«ageofchivalry»
«alienswarm»
«diprip»
«dystopia»
«episode1»
«esmod»
«garrysmod»
«garrysmodbeta»
«insurgency»
«l4d_full»
«left4dead»
«left4dead2»
«left4dead2_demo»
«orangebox»
«pvkii»
«smashball»
«synergy»
«zps»
** ‘game’ options for HL1 DS Install:
«dmc»
«gearbox»
«ricochet»
«tfc»
«valve»
** ‘game’ options for Third-Party game servers:
«ageofchivalry»
«aliensvspredator»
«americasarmy3»
«brink»
«darkesthour»
«darkmessiah»
«defencealliance2»
«dinodday»
«diprip»
«dystopia»
«esmod»
«garrysmod»
«garrysmodbeta»
«hauntedhellsreach»
«homefront»
«homefrontjpn»
«insurgency»
«killingfloor»
«killingfloor_beta»
«marenostrum»
«modernwarfare3»
«mondaynightcombat»
«naturalselection2»
«nexuiz»
«pvkii»
«redorchestra»
«redorchestra2»
«redorchestra_beta»
«serioussam3»
«serioussam3-deprecated»
«serioussamhdse»
«ship»
«sin»
«smashball»
«sniperelitev2»
«synergy»
«tshb»
«zps»
HLDS installation up to date
root@root:/home/server1cs#
Как сохранять
rc.fw?
esc : wq