leonlove 发表于 2003-10-12 01:56:43

[教学] linux下CS1.5服务器的建立

几次失败之后终于在linux下建起了cs1.5服务器,偶把具体过程写出来大家看看,
希望能给那些想在linux下建服务器的朋友一点帮助:)

系统环境:AMD2500+2X256Mddr33340G7200rmpHDDRedHat9.0
在开始之前我们需要一下几个文件:

hlds_l_3111_full.bin --hlds服务器
hlds_l_3111c_update.tar.gz --hlds服务器升级档
hlds_l_3111c1_update.tar.gz --hlds服务器升级档
hlds_l_3111c1_nocdkey.tar.gz --3111c1的免cdkey补丁
cs_15_full.tar.gz--hlds的cs mod
cd-server-4_4_0-en.tar.gz--CheatingDeath 反作弊
metamod_i386.so--metamod插件总管
wwcl_cs-serverplugin_v252.rar--wwcl脚本检测

这些文件用www.baidu.com搜吧,很容易找到。:)
ok,现在以root身份登陆linux。假设上面的文件都在/cs下,执行命令如下:
#cd /cs
#chmod 777 hlds_l_3111_full.bin
#./hlds_l_3111_full.bin回答yes,会得到一个tar.gz文件
#tar zxvf hlds_l_3111_full.tar.gz   解压缩
#tar zxvf hlds_l_3111c_update.tar.gz
#tar zxvf hlds_l_3111c1_update.tar.gz
#tar zxvf cs_15_full.tar.gz
#cp -Rf cstrike /cs/hlds_l
#tar zxvf hlds_l_3111c1_nocdkey.tar.gz
再把解压缩出来的3个补丁文件拷到/cs/hlds_l下。
#cp -f <文件名> /cs/hlds_l

下面开始安装CheatingDeath:
#tar zxvf cd-server-4_4_0-en.tar.gz会得到一个addons目录
#cp -R addons /cs/hlds_l/cstrike

安装wwcl:
#mkdir wwcl
#cp wwcl_cs-serverplugin_v252.rar wwcl
#unrar e /cs/wwcl/wwcl_cs-serverplugin_v252.rar (unrar命令需要去下一个

rarforlinux3.tar.gz,解压后把rar和unrar拷贝到/bin下即可。)

#cp /cs/wwcl/cstrike/addons/* /cs/hlds_l/cstrike/addons
#cp /cs/wwcl/cstrike/wwclconfig.cfg /cs/hlds_l/cstrike

安装metamod:
用mkdir命令在/cs/hlds_l/cstrike/addons下建一个metamod目录
再#cp /cs/metamod_i386.so /cs/hlds_l/cstrike/addons/metamod
#vi /cs/hlds_l/cstrike/addons/metamod/plugins.ini
加入:
linux addons/cdeath/cdmod_i586.so
linux addons/wwcl/dlls/pcawwclconfig_mm_i386.so

修改liblist.gam:
#vi /cs/hlds_l/cstrike/liblist.gam
将secure "1"改为0
将gamedll_linux"dlls/cs_i386.so"改为

gamedll_linux"addons/metamod/metamod_i386.so"

安装基本完了,希望我没有写错什么。
现在来建立服务器的启动脚本:
#vi /cs/hlds_l/hlds.sh
输入:
#/bin/bash/
export LD_LIBRARY_PATH=/cs/hlds_l:$LD_LIBRARY_PATH
./hlds_run -game cstrike +ip 123.123.123.123 +port 27015 +maxplayers 16

+map de_dust2 -nomaster +sv_lan 1 +servercfgfile server.cfg
+mapcyclefile mapcycle.txt +motdfile motd.txt -noipx &

然后
#chmod +x /cs/hlds_l/hlds.sh
在/cs/hlds_l目录下#./cs.sh即可启动服务器。

建立hltv的启动脚本:
#vi /cs/hlds_l/hltv.sh
输入:
#/bin/bash/
export LD_LIBRARY_PATH=/cs/hlds_l:$LD_LIBRARY_PATH
screen -A -m -d -S hltv /cs/hlds_l/hltv +connect 123.123.123.123:27019 -port 27020

然后
#chmod +x /cs/hlds_l/hltv.sh
在/cs/hlds_l目录下#./hltv.sh即可启动HLTV。


ps:如果要开几个服务器,则只需在启动脚本里指定不同的servercfgfile

mapcyclefile motdfile即可。

GL HF :)

几个问题:amx有没有forlinux的啊?
          怎么在linux下建立cs服务器的守护进程(即当机后服务器自动重启,假设我开2个serve)
:confused:

uingei 发表于 2003-10-12 02:30:07

不错,设为精华贴

rockbaleno 发表于 2003-10-13 01:17:41

这个我会!
首先建立一个cs批处理文件,
cd /data/hlds_l/
./hlds_run -restart -game cstrike -nomaster +sv_lan 1 +port 27015 +maxplayers 27 +map de_dust2 +servercfgfile server1.cfg
保证cs能够在后台运行
接着再建立一个批处理cs_start
sleep 30s
/data/cs1 &

sleep 30s
/data/cs2 &

sleep 30s
/data/cs3 &

sleep 30
/data/cs4 &

保证每运行一个文件就休息30秒,而不至于系统忙

最后在linux下的 /etc/rc.d目录里
然后编辑rc.local 文件,在里面加入
/data/cs_start&             data是cs批处理和cs_start批处理摆放的目录
这样每次开机就能够保证cs每个端口正常运行了

rockbaleno 发表于 2003-10-13 01:19:23

我的linux服务器已经开了快一年了,至今没什么大问题,amx有for linux的

leonlove 发表于 2003-10-13 17:09:51

谢谢各位的回贴。:)我回去试试看。

rockbaleno 发表于 2003-10-14 01:20:33

我的hlds_l是放在data目录里的,你可以根据所在目录的不同改变cs和csstart的路径
页: [1]
查看完整版本: [教学] linux下CS1.5服务器的建立