Установка Counter-Strike 1.3 сервера под FreeBSD 4
Безвозвратно утерянным в процессе
установки серверя дням посвящается...
- Устанавливаем эмуляцию linux для freebsd - в каталог /compat/linux ставится нечто, напоминающее RedHat 6.1 .
- Скачиваем файлы hlds_l3108.tar.gz cs_13_full_tar.gz halflife-admin-2.50.09.tgz .
- Распаковываем содержимое hlds_l3108.tar.gz в каталог /usr/local :
cd /usr/local; tar xvfz /path-to-archives/hlds_l3108.tar.gz
- Распаковываем содержимое hlds_l3108.tar.gz в каталог /usr/local/hlds_l :
cd /usr/local/hlds_l; tar xvfz /path-to-archives/cs_13_full_tar.gz
- Создаем символическую ссылку:
ln -s /usr/local/hlds_l /compat/linux/usr/local/hlds_l
- Пробуем запустить сервер с помощью скрипта:
#!/bin/sh
cd /usr/local/hlds_l
LD_LIBRARY_PATH=/usr/local/hlds_l; export LD_LIBRARY_PATH
./hlds_run +port 27015 -game cstrike -nomaster +sv_lan 1 +maxplayers 20 +map de_dust +exec listip.cfg
Если все успешно, идем дальше:
- Распаковываем adminmod:
cd /usr/local/hlds_l; tar xvfz /path-to-archives/halflife-admin-2.50.09.tgz
- Устанавливаем adminmod:
cd /usr/local/hlds_l/Admin/install_admin cstrike
На все вопросы отвечаем простым нажатием ENTER.
- На данном этапе сервер не будет работать, так как adminmod требует библиотеку glibc-2.1.3 ,
а в нашем распоряжении только glibc-2.1.2 . Так что скачиваем этот файл, и переписываем им
hlds_l/cstrike/dlls/metamod_i386.so.
- Сервер теперь будет работать, но команды admin_csay и admin_tsay могут и не работать -
это баг версии 2.50.09. Поэтому качаем бету 2.50.11
и подменяем hlds_l/cstrike/dlls/admin_MM_i386.so.
- Запускаем сервер, радуемся жизни, гребем пиво с пользователей :)
- В кронтаб добавляем
* * * * * /usr/local/hlds_l/RUN_IT.sh
Файл RUN_IT.sh:
#!/bin/sh
res=`ps -ax | grep hlds_ru | grep ds_run | wc -l`;
if [ "$res" -eq "0" ]
then
echo "CS not detected. Let's start it !!!"
cd /usr/local/hlds_l
LD_LIBRARY_PATH=/usr/local/hlds_l; export LD_LIBRARY_PATH
./hlds_run +port 27015 -game cstrike -nomaster +sv_lan 1 +maxplayers 20 +map de_dust +exec listip.cfg > /dev/null &
fi
Данный скрипт будет проверять работоспособность сервера, и если нужно запускать его.