凌峰创科服务平台

饥荒Ubuntu服务器怎么搭建?

我们将使用 Dedicated Server(官方命令行版本)来搭建,因为它更稳定,资源占用也更低。

饥荒Ubuntu服务器怎么搭建?-图1
(图片来源网络,侵删)

第一步:准备工作

  1. 一台 Ubuntu 服务器

    • 推荐版本:Ubuntu 20.04 LTS 或 22.04 LTS,LTS 版本长期支持,更稳定。
    • 最低配置:1 CPU 核心, 1GB 内存,但为了流畅运行,建议至少 2 核心, 2GB 内存。
    • 网络:必须拥有一个公网 IP 地址,并且能在路由器/防火墙上开放端口。
  2. SSH 访问权限

    你需要通过 SSH 客户端(如 PuTTY、Windows Terminal、MobaXterm 等)连接到你的服务器。

  3. 管理员权限

    饥荒Ubuntu服务器怎么搭建?-图2
    (图片来源网络,侵删)
    • 我们将使用 sudo 来执行需要管理员权限的命令。

第二步:安装必要软件

登录到你的 Ubuntu 服务器,更新系统包列表并安装一些基础工具。

# 更新软件包列表
sudo apt update
# 升级已安装的软件包(可选,但推荐)
sudo apt upgrade -y
# 安装一些常用工具,如 wget, curl, unzip, screen
sudo apt install -y wget curl unzip screen
  • wget / curl: 用于下载文件。
  • unzip: 用于解压饥荒服务端。
  • screen: 一个非常有用的工具,可以让你的服务器在 SSH 断开连接后依然在后台运行。

第三步:下载《饥荒》服务端

  1. 创建一个专用目录: 为了保持文件整洁,我们创建一个专门的文件夹来存放服务端文件。

    # 创建一个名为 dontstarve 的目录
    mkdir ~/dontstarve
    # 进入这个目录
    cd ~/dontstarve
  2. 下载服务端文件: 访问 Klei 官方的 Dedicated Server 下载页面,获取最新的下载链接。

    在页面上找到 "Linux" 版本的下载链接,右键复制链接地址,然后使用 wget 下载。

    饥荒Ubuntu服务器怎么搭建?-图3
    (图片来源网络,侵删)

    注意:请务必替换下面的 URL 为最新的链接!以下链接可能已过时。

    # 使用 wget 下载服务端压缩包
    wget https:// Klei.com/downloads/Don'tStarveTogether/linux/dontstarveTogether_dedicated_server.zip

    (如果链接失效,请去官网查找新的)

  3. 解压文件: 下载完成后,解压这个 zip 文件。

    # 解压文件
    unzip dontstarveTogether_dedicated_server.zip

    解压后,你会看到一个名为 DoNotStarveTogether 的文件夹,里面包含了服务端的核心文件。


第四步:配置服务器

这是最关键的一步,我们需要告诉服务器如何运行,以及如何连接。

  1. 创建配置文件: Klei 的服务端使用一个名为 cluster.ini 的文件来配置服务器的基本信息(如服务器名称、密码、描述等)。

    # 进入 DoNotStarveTogether 文件夹
    cd ~/dontstarve/DoNotStarveTogether
    # 创建 cluster.ini 文件(如果不存在)
    # 使用 > 创建一个空文件,echo >> 用于追加内容
    touch cluster.ini
  2. 编辑 cluster.ini 文件: 使用 nanovim 编辑器来修改配置,这里我们用 nano,它对新手更友好。

    nano cluster.ini

    在打开的文件中,粘贴或修改以下内容:

    # 服务器集群名称,客户端连接时需要选择
    cluster_name = "我的饥荒服务器"
    # 服务器密码,客户端连接时需要输入
    cluster_password = "your_secure_password"
    # 游戏描述,在服务器列表中显示
    cluster_description = "欢迎来到我的服务器!"
    # 最大玩家数量
    max_players = 6
    # 是否启用 PvP (Player vs Player)
    pvp = false
    # 是否启用游戏内语音聊天
    enable_voice_chat = true
    # 服务器是否可见在官方列表中
    visibility = public
    # 是否启用投票踢人功能
    enable_vote_kick = true
    # 设置游戏模式 (建议先从 survival 开始)
    game_mode = survival
    # 设置赛季 (建议先从 together_normal 开始)
    season = together_normal
    # 设置游戏难度 (推荐设置为 0,即正常难度)
    game_mode = 0
    # 保存间隔(单位:秒)
    save_interval = 300
    [SHARD]
    # 下面的 shard 是世界名称,如果你只开一个世界,可以保持默认
    # 如果想开多个世界(如地上世界和洞穴),需要在这里添加更多配置
    shard_enabled = true
    type = master
    name = Caves
    master_server = 127.0.0.1
    cluster_key = "your_cluster_key"

    重要配置解释

    • cluster_name: 服务器名字。
    • cluster_password: 请务必修改成一个强密码! 这是玩家进入你服务器的凭证。
    • cluster_description: 服务器简介。
    • game_mode:
      • survival (生存模式): 默认模式,推荐新手。
      • endless (无尽模式): 无需担心饥饿和生命值。
    • season:
      • together_normal: 正常世界,有四季变化。
      • together_caves: 洞穴世界。
    • cluster_key: 这是一个集群密钥,用于区分不同的服务器集群,如果你只运行一个世界,可以随便设置一个字符串,如果你想同时运行地上世界和洞穴世界,这个密钥必须完全一样

    编辑完成后,按 Ctrl + X,然后按 Y,最后按 Enter 保存并退出。

  3. (可选)配置世界预设: 你可以创建一个名为 worldgenoverride.lua 的文件来自定义世界生成,比如设置平原、生物群系等,对于新手,可以先跳过,使用默认设置。


第五步:配置端口转发

为了让外部的玩家能连接到你的服务器,你必须开放端口。

  1. 《饥荒》需要的端口

    • 主端口10888 (UDP)
    • Steam 认证端口27016 (TCP/UDP)
    • Steam 查询端口27015 (UDP)
    • 备用端口10999 (UDP)
  2. 在服务器上开放端口: 使用 ufw (Uncomplicated Firewall) 来管理防火墙。

    # 开放上述端口
    sudo ufw allow 10888/udp
    sudo ufw allow 27016/tcp
    sudo ufw allow 27016/udp
    sudo ufw allow 27015/udp
    sudo ufw allow 10999/udp
    # 启用防火墙(如果还没启用)
    sudo ufw enable

    在输入 sudo ufw enable 时,输入 y 并回车。

  3. 在路由器上端口转发: 这一步至关重要!如果你的服务器在家庭网络中(比如你的电脑或NAS),你必须在你的路由器设置里进行端口转发。

    • 登录你的路由器管理界面(通常是 168.1.1168.0.1)。
    • 找到“端口转发”、“虚拟服务器”或“NAT”设置。
    • 添加以下规则:
      • 外部端口10888 -> 内部 IP:你的服务器内网IP -> 内部端口10888 (协议: UDP)
      • 外部端口27016 -> 内部 IP:你的服务器内网IP -> 内部端口27016 (协议: TCP/UDP)
      • 外部端口27015 -> 内部 IP:你的服务器内网IP -> 内部端口27015 (协议: UDP)
      • 外部端口10999 -> 内部 IP:你的服务器内网IP -> 内部端口10999 (协议: UDP)
    • 如何找到服务器的内网 IP? 在服务器终端里输入 hostname -I

第六步:启动服务器

万事俱备,可以启动服务器了!我们使用 screen 来让它后台运行。

  1. 进入服务端目录

    cd ~/dontstarve/DoNotStarveTogether
  2. 启动主世界

    screen -S dst_master

    这会创建一个名为 dst_master 的会话并进入它,如果会话已存在,可以使用 screen -r dst_master 重新进入。

  3. screen 会话中启动服务端: 输入以下命令来启动主世界(地上世界):

    ./dontstarve_dedicated_server_nullrenderer -persistent_storage_root ~/dontstarve -conf_dir cluster
    • ./dontstarve_dedicated_server_nullrenderer: 启动命令。
    • -persistent_storage_root ~/dontstarve: 指定游戏存档和配置的根目录。
    • -conf_dir cluster: 指定配置文件夹名称,它会去寻找 ~/dontstarve/cluster/ 下的 cluster.ini
  4. 启动洞穴世界(可选): 如果你想同时开启洞穴世界,需要另开一个 SSH 窗口,然后执行类似的命令,但指定 typecaves

    在新的 SSH 窗口中:

    cd ~/dontstarve/DoNotStarveTogether
    screen -S dst_caves
    ./dontstarve_dedicated_server_nullrenderer -persistent_storage_root ~/dontstarve -conf_dir cluster -shard Caves
    • -shard Caves: 这个参数告诉服务端这是一个名为 Caves 的分片(世界)。
  5. detached Screen 会话: 启动后,服务器会开始加载并显示日志,如果你想退出 SSH 但让服务器继续运行,在 screen 会话中按 Ctrl + A,然后按 D,这会 "detached"(分离)会话,但程序仍在后台运行。

  6. 如何管理服务器

    • 重新连接到服务器:

      # 查看所有 screen 会话
      screen -ls
      # 重新连接到某个会话,dst_master
      screen -r dst_master
    • 正常关闭服务器: 在 screen 会话中,输入 cave 然后回车,会进入一个控制台,输入 shutdown 并回车,服务器会安全保存并关闭。

    • 强制关闭服务器: 如果无法正常关闭,可以在主机的 SSH 终端里,找到 screen 的进程 ID (PID),kill 掉它。

      # 找到 PID
      pgrep -f dontstarve_dedicated_server_nullrenderer
      # 假设 PID 是 12345,强制结束
      kill -9 12345

第七步:连接你的服务器

  1. 启动《饥荒:联机版》客户端。
  2. 在主菜单点击 "开始游戏"。
  3. 选择 "加入游戏"。
  4. 在服务器列表下方,点击 "添加服务器"。
  5. 服务器名称:随便填一个你喜欢的名字,方便识别。
  6. 服务器地址:填入你的公网 IP 地址
  7. 端口:填入 10888
  8. 点击 "添加",然后双击你添加的服务器,输入之前设置的 cluster_password,就可以进入游戏了!

常见问题与排错

  • Q: 玩家连接不上,显示超时或无法连接。

    • A: 99% 的原因是端口没有正确开放,请仔细检查:
      1. 服务器的 ufw 防火墙是否开放了端口?
      2. 路由器的端口转发是否设置正确?外部端口和内部端口是否都填对了?目标服务器的内网 IP 是否正确?
  • Q: 启动服务端时提示缺少库文件,libcurl.so.4

    • A: 这是因为缺少某些系统依赖,根据错误提示,安装相应的库。
      sudo apt install -y libcurl4-gnutls-dev libsdl2-2.0-0

      可以在网上搜索具体的错误信息来找到解决方案。

  • Q: 如何更新服务器?

    • A: 停止服务器(cave -> shutdown),然后回到第三步,重新下载最新版的服务端文件,覆盖旧文件即可。
  • Q: 如何安装 MOD?

    • A: 这是一个稍微复杂的话题,基本步骤是:
      1. DoNotStarveTogether 文件夹下创建 mods 文件夹。
      2. 从 Steam创意工坊 下载 MOD 的 workshop ID。
      3. 使用 steamcmd 命令行工具来下载和管理 MOD。
      4. cluster.ini 中启用你下载的 MOD。

希望这份详细的指南能帮助你成功搭建起自己的《饥荒》服务器!祝你玩得开心!

分享:
扫描分享到社交APP
上一篇
下一篇