在Linux上构建游戏服务器所需的一切

自成立以来,几乎可以与多个玩家一起玩游戏。可以追溯到Atari 2600和街机柜的多人游戏蓬勃发展。一旦互联网时代来临,随着游戏服务器的出现,远程多人游戏成为可能。

对于当前的游戏,不仅可以连接服务器,甚至可以运行服务器。无论是 Minecraft 服务器, Counter-Strike 系列游戏,还是各种各样的游戏,通常都有一种启动游戏服务器的方法。虽然在Linux上玩游戏似乎是相反的,但在Linux上原生有很多可用的游戏。

了解在Linux上构建游戏服务器所需的一切。

构建要求游戏服务器

有一个误解,认为构建游戏服务器需要强大的硬件。相反,您不需要高端硬件。但是,低规格计算机可能无法提供最佳性能。因此,您闲逛的那台旧上网本可能不是最佳选择。

虽然在Linux上构建游戏服务器并不十分困难,但确实需要一定的网络和计算机知识。不知道的事,您也许可以查找。

在Linux上构建游戏服务器

设置 Minecraft 服务器需要服务器软件来自Mojang。幸运的是,它是免费下载的。 Linux托管的 Minecraft 服务器应在32位和64位版本的Linux上正常运行。但是, Minecraft Gamepedia确实建议64位迭代可以提供更高的性能。

我们需要安装Java才能运行 Minecraft 服务器。 Linux与已安装的Java更兼容。要检查您的Java版本,请运行命令

java -version

如果运行此命令返回的消息类似于“找不到Java",则需要安装该命令。您可以通过多种方法在Linux上安装Java。在Ubuntu上最简单的方法是使用apt-get。

在安装Java之前,请更新软件包索引:

sudo apt-get update

下一步,使用以下命令安装Java。它会安装默认的Java开发工具包(JDK):

sudo apt-get install default-jdk

您可以尝试使用OpenJDK,但用户报告说通过正式的Oracle Java安装会获得更大的成功。

Ubuntu

如果您正在运行Ubuntu,则可能需要运行以下软件包安装程序才能使用

apt-add-repository 

命令:

apt-get install software-properties-common
apt-get install python-software-properties

下一步,添加更新源列表,添加PPA,最后安装Java:

sudo apt-add-repository ppa:webupd8team/java

添加PPA之后,执行更新:

sudo apt-get update

此更新完成后,通过安装Java命令行:

sudo apt-get install oracle-java8-installer

您现在应该已经安装了Java。

Debian

在基于Debian的发行版中,安装Java是有点不同。您需要扫描非免费存储库。为此,请将non-free添加到/ect/apt/sources.list文件中。

您将其添加到的实际URL会有所不同。例如,它可能显示为

deb http://http.us.debian.org/debian stable main contrib

因此,新的URL为:

deb http://http.us.debian.org/debian stable main contrib non-free

添加了非自由后,请更新源列表:

sudo apt-get update

要安装Java,请运行:

sudo apt-get install sun-java7-jre

Arch Linux

执行命令:

pacman -S jre7-openjdk

Arch Linux ARMv7

在Arch Linux ARMv7上,最好的方法是从此处下载的Oracle中安装Java。将此文件解压缩到/ usr / lib / jvm并将Java默认值切换为:

archlinux-java set jdk1.7.o_60

Gentoo

如果您使用的是Gentoo,只需运行:

emerge virtual/jre

总是有下载方法。 Oracle提供了与大多数发行版兼容的Java下载包。 32位和64位软件包均可用。

Minecraft 服务器创建目录,并将目录更改为该目录。给它起个名字(“ minecraft"是一个不错的选择),然后导航到该目录。

mkdir minecraft
cd minecraft

下一步,获取 Minecraft 服务器软件的最新版本:

wget -O minecraft_server.jar https://s3.amazonaws.com/Minecraft.Download/versions/1.11/minecraft_server.1.11.jar

或者,从此链接下载 Minecraft 服务器软件的最新版本。将JAR移至所需的 Minecraft 文件夹。

最后,运行以下命令:

java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui

但是,安装将失败。我们需要首先同意Eula许可。输入:

nano eula.txt

这将打开eula.txt文件。只需更改:

eula=false

eula=true

再次输入命令:

java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui

您现在可以连接到新安装的 Minecraft 服务器通过运行 Minecraft 。选择多人游戏。。接下来为您的服务器命名。最后,添加机器或本地PC的地址。这将是IP和端口。默认情况下, Minecraft 使用的端口为25565。因此,服务器地址为[IP地址]:25565。之后,只需单击完成

现在,您已经安装了 Minecraft 服务器,了解如何优化 Minecraft

创建Steam游戏服务器

对于Counter-Strike和其他Steam游戏,您需要Steam游戏服务器。但是,创建Steam游戏服务器有点不同。我在Ubuntu 16.04 LTS上使用了一台机器。尽管Steam社区的一篇帖子建议创建一个其他用户帐户用作Steam服务器,但我只是使用了默认的Ubuntu用户帐户。

SteamCMD实用程序允许您运行Steam服务器。该工具为Steam游戏下载并安装专用服务器。要下载SteamCMD安装程序,请将其粘贴到命令行中:

cd ~pwdmkdir steamcmdcd ~/steamcmdwget http://media.steampowered.com/installer/steamcmd_linux.tar.gztar -xvzf steamcmd_linux.tar.gz

确保您位于steamcmd目录中。转到该目录后,运行:

./steamcmd.sh

安装脚本并执行更新。之后,尝试登录。您只需输入:

login anonymous

您应该会看到一条消息,指出您已匿名登录Steam公共。

尽管已安装SteamCMD,但我们仍然需要添加专用服务器。但是,有一些复杂性。也就是说,如果Steam提供了专用服务器并且免费,那么匿名登录就可以了。但是某些服务器要求您使用Steam帐户登录。

例如,可以使用这种方式播放 Team Fortress 2 。还没玩过要塞队还是已经有一段时间了?好吧,也许您需要重新访问 TF2 。但是,如果Steam提供了专用服务器,并且不是免费的,则必须使用Steam帐户登录。就像您正在使用Steam客户端一样。 反恐精英服务器必须以这种方式设置。

Steam为客户端和服务器分配AppID。

反恐精英源

  • 客户端AppID:240
  • 服务器AppID:232330
  • 团队要塞2

  • 客户端AppID :440
  • 服务器AppID:232250
  • 但是,我们实际上对这些信息做什么呢?它需要进入专用文件夹。因此,对于 Fort Fortress 2 服务器,默认路径为

    /home/usr/tf2-1

    要创建安装文件夹,请运行:

    mkdir tf2-1

    有两种方法可用于安装游戏。如果您使用匿名登录,只需输入:

    cd ~/steamcmd;~/steamcmd/steamcmd.sh +login anonymous +force_install_dir {install-folder} +app_update {appid} validate +quit;

    但是,如果您需要使用Steam ID,请改用:

    cd ~/steamcmd;~/steamcmd/steamcmd.sh +login {real-steam-id-here} {steam-id's-password-here} +force_install_dir {install-folder-here} +app_update {appid-here} validate +quit;

    因此,要安装“团队要塞2" 服务器,将其输入命令行:

    cd ~/steamcmd;~/steamcmd/steamcmd.sh +login anonymous +force_install_dir /home/game-server/tf2-1 +app_update 232250 validate +quit;

    根据您的设置,可能需要某些配置。您可以在此处了解更多信息。要启动游戏服务器,请导航至正确的文件夹并执行。我们来看一个 Team Fortress 2 示例:

    cd /home/game-server/tf2-1/;./srcds_run -secure -game tf -nohltv +port 6005 -steamport 6105 +clientport 6205

    虽然前面的示例涵盖了Steam游戏和 Minecraft ,但这并不是唯一的标题您可能要为其运行服务器。这些也不是在Linux上创建游戏服务器的唯一方法。 GameServers.com提供了可靠的解决方案。有付费版本,但我尝试了免费的 Counter-Strike:Source 服务器。在此处查看可用的免费服务器。

    一旦索取服务器,您将收到一封包含有关服务器信息的电子邮件。单击链接,然后按照说明进行操作(请参见下文)。这是一项整洁的服务。值得注意的是,如果您拥有陈旧的硬件或只是想要一台单独的服务器,它就特别有用。

    最后,Linux Game Server Managers提供了一个不错的解决方案。这是一款出色的工具,可与大量发行版兼容。 LGSM拥有50多个专用服务器。另外,它是开源的。命令行工具允许在Linux上快速部署专用游戏服务器。查看下面的演示:

    尽管这些是绝佳的选择,但仍有大量Linux游戏服务器设置选项。您正在使用哪个?在下面的评论部分让我们知道!

    标签: