饥荒联机服务器搭建
搭建过的服务器1
Operating System: Ubuntu 24.04 LTSKernel: Linux 6.8.0-40-genericArchitecture: x86-64安装OSSFS 1.0
Section titled “安装OSSFS 1.0”参考链接 安装ossfs 1.0
sudo wget https://gosspublic.alicdn.com/ossfs/ossfs_1.91.6_ubuntu22.04_amd64.debsudo apt-get updatesudo apt-get install gdebi-coresudo gdebi ossfs_1.91.6_ubuntu22.04_amd64.deb执行ossfs —version命令查看ossfs版本信息,出现如图所示提示信息,证明安装成功。
默认配置文件
Section titled “默认配置文件”默认配置文件在配置完成后挂载Bucket时无需指定配置文件,您可以同时配置多条Bucket相关信息在挂载Bucket时使用。
配置文件路径:默认配置文件为/etc/passwd-ossfs。
配置文件格式:$bucket_name:$access_key_id:$access_key_secret。
请执行以下命令,将Bucket和对应的AccessKey信息写入/etc/passwd-ossfs中,并将文件权限设置为640,完成默认配置文件创建。
echo bucket-test-1:AAAI************:AAA8x************************* > /etc/passwd-ossfsecho bucket-test-2:BBBI************:BBB8x************************* >> /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs挂载方式有很多,阿里云OSS目前处于V1签名升级到V4签名阶段,所以原有磁盘挂载方式使用V1签名,迁移到V4比较麻烦,所以使用命令方式进行挂载。 参考链接 V1签名升级为V4签名
命令手动挂载
Section titled “命令手动挂载”mkdir -p /jihuang/.klei/DoNotStarveTogetherossfs jihuangbk /jihuang -o url=http://oss-cn-hongkong.aliyuncs.com -o sigv4 -o region=cn-hongkong安装饥荒服务器
Section titled “安装饥荒服务器”参考文档 搭建饥荒服务器(2024.3更新) 饥荒联机版(Don’t Starve Together)
先安装steam和饥荒服务器需要用到的依赖,
sudo add-apt-repository multiversesudo dpkg --add-architecture i386sudo apt updatesudo apt install libstdc++6 libgcc1 libcurl4-gnutls-dev:i386 lib32z1安装 SteamCMD
Section titled “安装 SteamCMD”创建steamcmd文件夹
mkdir ~/steamcmdcd ~/steamcmd下载 steamcmd程序
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz解压steamcmd_linux.tar.gz文件
tar -xvzf steamcmd_linux.tar.gz启动steamcmd
./steamcmd.sh安装饥荒联机版
Section titled “安装饥荒联机版”如果上面没出啥问题的话,将会进入steam服务,接下来控制steam下载饥荒联机版
前面的steam> 不需要输入,只是说明你在steam服务中
force_install_dir ../dontstarvetogether_dedicated_serverlogin anonymousapp_update 343050 validate创建服务器存档
Section titled “创建服务器存档”在服务器上直接创建新地图的话后续配置会比较麻烦,一般都是在Windows上先创建地图,然后找到地图文件上传到服务器中。
mkdir -p ~/.klei/DoNotStarveTogether/Cluster_1为服务器订阅MOD
Section titled “为服务器订阅MOD”这里只是告诉服务器要订阅或者说要下载哪些MOD,是否在地图中启用MOD在其它文件中(后面会讲)
cd /dontstarvetogether_dedicated_server/modsvim dedicated_server_mods_setup.lua.klei/DoNotStarveTogether/Cluster_1/Master/modoverride.lua就是这个地图的MOD配置,如果订阅了新MOD,一定要到这里添加配置,不然MOD不会生效。
Caves中也有一个modoverride.lua文件,记得一起修改。
编写启动脚本
Section titled “编写启动脚本”cd ~vim boot.sh把下面的命令粘贴到boot.sh中
#!/bin/bash
steamcmd_dir="$HOME/steamcmd"install_dir="$HOME/dontstarvetogether_dedicated_server"cluster_name="Cluster_1"dontstarve_dir="$HOME/.klei/DoNotStarveTogether"
function fail() { echo Error: "$@" >&2 exit 1}
function check_for_file() { if [ ! -e "$1" ]; then fail "Missing file: $1" fi}
cd "$steamcmd_dir" || fail "Missing $steamcmd_dir directory!"check_for_file "steamcmd.sh"check_for_file "$dontstarve_dir/$cluster_name/cluster.ini"check_for_file "$dontstarve_dir/$cluster_name/cluster_token.txt"check_for_file "$dontstarve_dir/$cluster_name/Master/server.ini"check_for_file "$dontstarve_dir/$cluster_name/Caves/server.ini"check_for_file "$install_dir/bin"cd "$install_dir/bin64" || failrun_shared=(./dontstarve_dedicated_server_nullrenderer_x64)run_shared+=(-console)run_shared+=(-cluster "$cluster_name")run_shared+=(-monitor_parent_process $$)run_shared+=(-shard)"${run_shared[@]}" Caves | sed 's/^/Caves: /' &"${run_shared[@]}" Master | sed 's/^/Master: /'赋予boot.sh执行权限
sudo chmod u+x boot.sh创建自动更新脚本
Section titled “创建自动更新脚本”vim up.sh#!/bin/bash# 切换到 steamcmd 目录cd ~/steamcmd# 执行更新脚本./update.sh# 查找与 "don" 相关的进程并终止其父进程parent_pid=$(ps -ef | grep 'dontstarve_dedicated_server_nullrenderer_x64' | grep -v grep | awk '{print $3}' | head -n 1)if [ -n "$parent_pid" ]; then kill $parent_pidfi# 返回到根目录cd ~# 启动 boot.sh 脚本并重定向输出nohup ./boot.sh > /root/root.log 2>&1 &
timestamp=$(date +%Y%m%d_%H%M)tar -czf /jihuang/.klei/DoNotStarveTogether/Cluster_1-${timestamp}.tar.gz /root/.klei/DoNotStarveTogether/Cluster_1sudo chmod u+x up.sh创建更新脚本
cd /root/steamcmdvim update.sh#!/bin/bash
./steamcmd.sh +force_install_dir ../dontstarvetogether_dedicated_server +login anonymous +app_update 343050 validate +quitsudo chmod u+x update.sh启动饥荒服务器
Section titled “启动饥荒服务器”到根目录,也就是boot.sh所在的目录,运行下面的代码
nohup ./boot.sh>root.log 2>&1 &执行后饥荒服务器会在后台运行,可以通过下面这个命令查看输出的日志
tail -f root.log能看到下面这样的输出就是启动成功了

因为是后台运行,关闭服务器需要先找到服务器的PID,然后用kill命令杀死
ps -ef | grep donkill