公司动态
在云上搭一台英灵神殿专用服务器,和好友一起开荒
英灵神殿发售之后我和几个朋友断断续续玩了一年多。之前一直靠房主开存档联机谁下线了其他人就得跟着散伙体验实在说不上好。后来干脆在服务器上搭了个专用服24小时开着谁想上线就上去砍两棵树、修修房子完全不用凑时间。这篇文章就把整个流程整理一下从买机器到进游戏大概半小时就能跑起来。需要提前准备的东西不多一台 Linux 云服务器一个 Steam 账号以及能SSH上去操作的能力。下面会一步步走命令尽量给全复制粘贴就能用。一、服务器配置建议英灵神殿的服务端优化比早期版本好了不少但内存依然吃得很紧。官方建议最低 4G 内存实际玩起来如果地图探索得比较大或者同时在线超过五个人4G 会开始吃紧。我的建议是同时在线人数推荐配置备注2-4 人2 核 4G够用但别同时跑其他服务5-8 人4 核 8G比较稳妥后期地图大了也不慌8 人以上4 核 16G需要配合性能优化参数我自己用的是雨云rainyun-com的 4 核 8G 机器五个人在线打了两百多天游戏内时间没出过崩溃。注册填码2026off可领5折月付四十来块分摊到每个人头上和一杯咖啡差不多。系统选 Ubuntu 22.04 LTS下面所有命令都基于这个环境。二、安装依赖和 SteamCMD先更新系统然后安装运行 Valheim 服务端需要的 32 位兼容库和 SteamCMD。sudoaptupdatesudoaptupgrade-ysudoaptinstall-ysoftware-properties-commonsudodpkg --add-architecture i386sudoaptupdatesudoaptinstall-ylib32gcc-s1 steamcmd如果 apt 源里没有 steamcmd也可以手动装mkdir-p~/steamcd~/steamcurl-sqLsteamcdn的Linux安装包地址|tarzxvf -装完之后验证一下 steamcmd 能不能正常启动steamcmd quit看到 Steam Console 的版权信息然后退出就算成功了。三、下载并安装服务端创建一个专门的用户和目录来跑服务端别用 root 直接跑出了问题不好排查。sudouseradd-m-s/bin/bash valheimsudomkdir-p/opt/valheimsudochownvalheim:valheim /opt/valheim切到 valheim 用户用 SteamCMD 下载服务端。Valheim 的服务端 App ID 是 896660。sudo-uvalheim steamcmd login anonymous force_install_dir /opt/valheim app_update896660validate quit下载大概 1G 左右看网络情况几分钟到十几分钟不等。下完之后/opt/valheim 里应该有一堆文件包括 start_server.sh 这个启动脚本。四、配置服务端参数服务端需要几个环境变量来控制世界名称、密码、存档位置等。在 /opt/valheim 里建一个启动用的脚本比直接改官方脚本方便以后维护。sudotee/opt/valheim/start_valheim.shEOF #!/bin/bash export SteamAppId892970 export LD_LIBRARY_PATH/opt/valheim/linux64:$LD_LIBRARY_PATH cd /opt/valheim ./valheim_server.x86_64 \ -name MyValheimServer \ -port 2456 \ -world MyWorld \ -password yourpassword \ -public 1 \ -savedir /opt/valheim/saves EOF几个参数说明一下-name服务器在列表里显示的名字改个自己喜欢的。-world存档世界的名字也就是你进游戏后看到的世界名称。-password连接密码至少5个字符不能和 world 名一样。-public 1公开到服务器列表0 的话只能通过 IP 直连。-savedir存档保存位置单独放一个目录方便以后备份。别忘了给脚本加执行权限sudochmodx /opt/valheim/start_valheim.shsudochown-Rvalheim:valheim /opt/valheim五、开放防火墙端口Valheim 默认用 2456/UDP实际上服务端会同时占用 2456、2457、2458 三个连续端口防火墙里最好一起放行。sudoufw allow2456:2458/udpsudoufw reload如果你用的是云服务商的安全组记得在控制台里也把这三个 UDP 端口放行否则外面连不进来。放行范围写成 2456-2458协议选 UDP 就行。六、用 systemd 管理进程手动跑脚本的话SSH 断开服务端就挂了。配成 systemd 服务开机自启、崩溃重启都自动搞定。sudotee/etc/systemd/system/valheim.serviceEOF [Unit] DescriptionValheim Server Afternetwork.target [Service] Typesimple Uservalheim Groupvalheim WorkingDirectory/opt/valheim ExecStart/opt/valheim/start_valheim.sh Restarton-failure RestartSec10 KillSignalSIGINT [Install] WantedBymulti-user.target EOF然后重载配置、启动服务sudosystemctl daemon-reloadsudosystemctlenable--nowvalheim看日志确认启动成功sudojournalctl-uvalheim-f看到类似 “Game server connected” 或者 “ZNet version” 的输出说明服务端已经在跑了。第一次启动会生成世界地图可能要等一两分钟。七、客户端连接进游戏之后选加入游戏然后如果是公开服务器直接勾社区服务器搜索你-name里填的名字输入密码就能进。如果没公开选IP 直连输入你的服务器IP:2456再输密码。注意 Valheim 的联机体验对延迟比较敏感建议服务器选离玩家地理位置近的机房。如果五个人分别在南北两地选中间一点的节点大家延迟都不会太离谱。八、存档备份玩了几百小时的存档要是丢了心态真的会崩。最简单的备份方案就是定时打包 saves 目录配合 rsync 或者 scp 传到另一台机器上。sudo-uvalheimbash-ctar czf /opt/valheim/backups/world-$(date %Y%m%d-%H%M).tar.gz /opt/valheim/saves可以加到 crontab 里每小时自动跑一次。备份文件不大一个世界通常就几十到一两百兆。常见问题问服务端启动后内存占用越来越高最后被杀掉了怎么办答Valheim 服务端有内存泄漏问题官方一直没彻底修好。可以装一个内存清理 mod比如 Valheim Plus 里的相关功能或者写个定时脚本每晚低峰期自动重启一次服务。重启不会丢存档玩家重新连就行。问想装 mod 要怎么弄答服务端 mod 一般需要 BepInEx 框架。去 GitHub 搜 BepInEx 的 releases下载对应 Linux 版本解压到 /opt/valheim 根目录然后下载想要的 mod 放到 BepInEx/plugins 里重启服务即可。具体看各个 mod 的安装说明大同小异。问学生党预算有限能不能用更低配的服务器答2 核 4G 其实能跑只是别同时在线太多人也别在服务器上跑其他 heavy 的东西。可以先开最低配一个月试试不行随时退。问服务器迁移到新机怎么操作答把 /opt/valheim/saves 目录打包传到新机器然后在新机器上重走安装流程服务端版本无所谓启动时会自动兼容旧存档。迁移过程中让旧服保持运行新服跑起来验证没问题后再关掉旧的玩家不会察觉到中断。总结搭一台英灵神殿专用服务器比想象中简单核心就是 SteamCMD 下服务端、配好参数、systemd 托管、放通端口。完成之后再也不用看谁在线才能玩了半夜三点想上去砍棵树、补个屋顶随时连上就行。存档记得定期备份mod 按需求加剩下的就是在英灵神殿的世界里和朋友们慢慢盖房子、打boss了。