CS2搭建服务器(Linux|Ubuntu)

提醒

本文根据Valve官方文档编纂,经实际操作成功,但不一定适合所有环境。

本文中出现的所有linux操作命令均为ubuntu系统root用户命令,请非root用户在命令前添加sudo等前缀以运行,请勿直接在centos等系统上运行。

V社目前尚未推出独立的CS2服务端,故本文是安装CS2本体,并单独运行CS2内置服务端。

V社原文链接:反恐精英 2 - 专用服务器 - Valve 开发者社区 (valvesoftware.com)

准备阶段

检查系统要求

#提醒#

这里V社没有写出具体要求,但实测下来,应该与CSGO服务器要求差距不大。

本文服务器配置:4核4G 60G 5M Ubuntu-22.04

#重要要求#

请确保磁盘剩余空间大于35G。因为游戏本体占了33G,如果还要下载其他地图,就不止这么点空间。

更新系统软件包

使用以下两个命令(更新软件包列表和更新软件包)

apt update
apt upgrade

【可选指令】使用以下命令自动卸载无用的依赖包

apt autoremove

打开32位支持功能

#提醒#

如果你的系统本身就是32位的,请跳过这个步骤。

#本小节参考文章#

桌面应用|怎样打开64位 Ubuntu 的32位支持功能 (linux.cn)

确认64位

使用以下命令确认内核是64位的

dpkg --print-architecture

如果出现了以下的情况,说明你的内核是64位的

amd64

打开多架构支持功能

输入以下命令,打印多架构功能支持的种类

dpkg --print-foreign-architectures

如果输出为这样的

i386

则确认多架构支持;否则的话,需要输入下面的命令打开多架构支持。

dpkg --add-architecture i386 //添加i386的支持
apt update //更新软件包列表
apt upgrade //更新软件包

遇到是否需要更新(y/n),请根据实际情况选择。

至此,CS2服务器搭建的准备阶段完毕。

安装steamcmd

#提醒#

steam官方是不推荐以root用户身份进行安装的,似乎有安全风险

#本小节参考文章#

Steam 控制台客户端 - Valve Developer Community (valvesoftware.com)

如果你的软件源有steamcmd,那么使用以下命令进行安装

apt install steamcmd

安装完成后,使用以下命令链接steamcmd可执行文件

ln -s /usr/games/steamcmd steamcmd

 安装完成后,请输入以下命令打开steamcmd

steamcmd

若软件源没有steamcmd,则请访问本小节的参考文章的“1.2.3 手动安装”小节,并启动steam。

安装CS2

#重要提醒#

由于CS2没有单独的服务端,请使用steam账户登录steam。试图匿名登录steam并下载CS2服务器只会收到下面的提示

ERROR! Failed to install app '730' (No subscription)

建议单独注册一个账号,专供CS2服务器使用。

登录steam,请输入以下的命令

// 请替换username为账户名称,password为密码,Steam guard code为验证码,后两者可选
login  [] []

登录成功后,请输入以下命令进行CS2的安装

app_update 730 validate

接下来就是一段很漫长的下载时间。根据你的服务器网速,下载时间可能在几分钟到几小时。#可以去玩原神了(笑)#

启动CS2

请进入游戏目录:~/Steam/steamapps/common/"Counter-Strike Global Offensive"/game/bin/linuxsteamrt64/,即以下命令(如果Steam前的路径有所变化,请自行适应)

cd ~/Steam/steamapps/common/"Counter-Strike Global Offensive"/game/bin/linuxsteamrt64/

然后输入以下命令打开CS2

.\cs2.exe -dedicated +map de_dust2

这里的“-dedicated”为必须的,否则将会启动CS2本体而非服务端。后面的参数可以根据实际需要自行调定,如更换起始地图、设置游戏模式等。

恭喜,到目前为止,您已成功搭建了CS2的游戏服务器。开始玩吧~

问题

steamclient.so 加载失败

/如果以root用户的身份,可能会遇到这个问题。/

原因:steamcmd的遗留问题。实际上并没有 /home/xxxx/.steam/sdk64/ 这个文件夹,但steamcmd会寻找这个文件夹,找steamclient.so这个文件。

解决方案:创建一个符号链接(类似快捷方式)

使用以下命令,创建目标文件夹

cd //回到默认目录
mkdir .steam //创建 .steam这个文件夹
mkdir sdk64 //创建sdk64这个文件夹
mkdir sdk32 //创建sdk32这个文件夹

使用以下命令,创建两个符号链接

ln -s ~/.local/share/Steam/steamcmd/linux64/steamclient.so ~/.steam/sdk64/
ln -s ~/.local/share/Steam/steamcmd/linux32/steamclient.so ~/.steam/sdk32/

服务器配置文件 server.cfg 位置

请输入以下命令,进入文件所在文件夹

cd ~/Steam/steamapps/common/"Counter-Strike Global Offensive"/game/csgo/cfg

接着使用

ll

展示所有的文件,就可以找到server.cfg。接着用vim怎么修改都随你。

你可能感兴趣的:(服务器,ubuntu)