Linux下快速搭建七日杀官方私人服务器教程

简介: 本文提供了一份详尽的《七日杀》服务器搭建指南,专为Linux系统设计。教程分为九大部分,涵盖从前期准备到服务器维护的全过程。主要内容包括:选择具备公网IP的云服务器、安装Ubuntu 20 X64系统、下载SteamCMD等必备软件;详细指导如何配置服务器、设置防火墙及端口规则、启动与关闭服务器;此外还提供了服务器管理、环境配置(如设置swap分区)等实用技巧。适合有一定Linux基础的玩家参考实践。

图片.png

今天给大家分享一下七日杀的个人开服教程,本教程基于Linux系统开发,推荐有一定基础的小伙伴尝试!如果你没有Linux的基础但实在想开的小伙伴可以根据以下教程一步步进行操作,后续这边也会上架对应视频操作

一、架设前准备:
带公网IP的弹性云服务器或者有公网IP的轻量云服务器等等
服务器系统镜像OS:Ubuntu 20 X64位系统
下载SteamCMD
如果使用弹性云服务器推荐配置至少为2核4G以上!
正版STEAM的七日杀游戏
如果懒得设置用户,可直接SU/SUDO启用超级管理员进行所有操作(不推荐)

二、开始架设服务器
(一)基础配置Linux服务器:
配置管理员密码:sudo passwd

(二)下载steamCMD:
进入超级用户模式输入:su

sudo apt install steamcmd

(若出现错误无法找到包steamcmd请更新如下代码:)

首先,需要添加multiverse到我的/etc/apt/sources.list:
deb http://archive.ubuntu.com/ubuntu xenial main universe multiverse
deb http://archive.ubuntu.com/ubuntu xenial-updates main universe multiverse
deb http://archive.ubuntu.com/ubuntu xenial-security main universe multiverse
之后,添加i386体系结构:
sudo dpkg --add-architecture i386
最后apt-get update就可以安装它了
sudo apt-get install steamcmd
(三)开始配置七日杀服务器:
更新代码:steamcmd

登录匿名用户:Steam>login anonymous(推荐如果不成功尝试steam用户登录)
steam用户登录:login <账号> <密码>

如果设置了安全令牌,会让你输入一次安全令牌Code

(可选)force_install_dir ~/7DaysToDieServer # 设置服务端安装目录
下载七日杀服务器端代码:app_update 294420

退出SteamCmd模式:exit

切换到root根目录:cd~
查看隐藏目录:la
找到打开.steam文件夹输入如下代码:
cd .steam/
cd steamApps/
cd common/
cd 7DaysToDieServer #这里就是七日杀服务端的所有文件内容!

(四)配置七日杀服务器设置内容:
编辑七日杀服务器配置文件:

vim serverconfig.xml # 编辑配置文件
按insert键或I键进入编辑模式wq保存并退出!如果实在不会可以用nano或者其他编辑器!

以下是XML文件的部分翻译,可以根据自己的需要自行修改,推荐做好备份!注意:修改Value=之后的内容!

关于XML文件内容的官方WIKI百科内容:

<property name="ServerName value="JonasLu/EN/CN/FR/Easy服务器名字"/>

#默认26900

服务器网址

#最大玩家数 默认8

#服务器世界名默认Navezgane

#存档名字

#游戏难度

#游戏模式,默认GameModeSurvivalMP

#僵尸行走,默认值0,白天走晚上跑 1为不跑 2为一直跑

#游戏内一天在现实世界(三次元)时长(单位分钟min)

#游戏内白天的时间(单位小时h)

#玩家之间能造成的伤害,默认1.敌人0.无2.非同盟3.所有人

#玩家死亡掉落,默认0.全部 1.工具栏 2.背包 3.删除所有东西

#服务器最大僵尸生成量

#服务器最大生物生成量

#空投循环生成时间(单位分钟min)

#是否空投 默认true

(五)配置防火墙及端口:
如果你发现开了服务器没有显示或者无法连接,你可能还需要配置防火墙和端口规则。云服务器请在相应平台的安全组页面添加出入站规则,如果没有特殊需要可以放通全部!并且关闭防火墙!(有一定风险,服务器内有重要资料不推荐!)
端口 协议 说明
8080 TCP 远程Web控制台(不需要可以不放通)
8081 TCP Telnet端口(这个可以不放行,本地连接)
8082 TCP 服务器管理工具端口!
26900/26902 UDP 客户端端口!

按上表格放通端口
Telnet可以不放行,直接在服务器中使用telnet ip 8081即可登录telnet。
要用远程telnet连接,请在serverconfig.xml中设置好TelnetPassword后,再进行连接

(六)启动服务器:
在上述文件配好之后,在七日杀的服务端根目录下输入:

screen -S 7

创建一个screen(防止在ssh断开连接后服务端自动关闭)如果没有可以下载!

下载安装screen:

RedHat/CentOS

yum install -y screen


Ubuntu/Debianapt

Apt install screen //我们这里选择这个代码

./startserver.sh -configfile=serverconfig.xml

创建Screen之后,输入以上代码正式启动服务器!

服务器启动成功之后,按住Ctrl + A +D 将screen加入后台运行!这样就不会关闭服务器了。之后你就可以开始玩啦!

当你需要回到这个sreen页面时,使用如下指令。

screen -ls # 查看screen,记下7的编号
screen -r 7 #查看记录为7的编号

(七)关闭服务器指令:
screen -r 7
Ctrl +C

返回相应的screen之后Ctrl +C即可!

(八)文件路径说明:

路径取决于你自己的设置位置,大致路径如下

~/.../7DaysToDieServer # 七日杀服务端根目录
~/.../7DaysToDieServer/Data/Worlds # 七日杀服务端地图目录
~/.../.local/share/7DaysToDie/Saves # 七日杀服务端存档目录(重要)
~/.../7DaysToDieServer/7DaysToDieServer_Data # 七日杀服务器日志输出目录
~/.../7DaysToDieServer/Mods # Mods目录,需要自己创建
~/.../.local/share/7DaysToDie/Saves/serveradmin.xml

管理员配置文件

~/.../7DaysToDieServer/serverconfig.xml # 服务器配置文件
(重要)

(九)管理服务器:
在服务器中安装telnet。(也可以用Xshell或FTP的远程连接)

Ubuntu/Debian系统

netstat -a | grep telnet # 检测telnet的rpm包是否安装
sudo apt-get install xinetd telnetd # 若未安装,则安装telnet

telnet 你的 8081 #登录服务器telnet

管理员的基本指令:

admin add <玩家名> <权限级别> # 给予玩家管理权限(最高级别为0)
admin remove <玩家名> # 移除玩家的管理权限
admin update <玩家名> <权限等级> #提高管理权限级别

建议先在telnet用上述指令给自己管理权限

然后就可以直接在游戏中,按F1使用下面的指令了

dm #打开或关闭debug模式
ban <玩家名> <时间> # 禁止玩家登陆服务器一段时间(minutes, hours, days, weeks, months, years)
kill # 杀死指定玩家
listplayers lp # 获取在线玩家信息
give <物品> <数量> # 给玩家刷某样东西
shutdown # 关闭服务器
say <信息> # 以server的名义广播一条信息

三、服务器可能的环境配置:
(一)配置服务器的swap:
linux系统的swap空间类似windows系统的虚拟内存。如果你的云服务器内存小于4G,或者卡顿严重,那你就必须设置一个swap空间,否则启动服务器时会因为内存不足导致进程关闭而终止服务器。
使用swapon命令可以检查系统是否已经配置过swap,一般云服务器都没有提前设置swap。

以下所有的这些操作都在root中进行//su

swapon -s # 如果该命令没有返回出结果,则代表该系统尚未配置过swap。
df -h # 检查可用的存储空间

如果没有,按如下步骤创建Swap文件。一般建议swap大小设置为自己物理内存相同或两倍。我这里设置了8G。

这些操作要在root中进行。

sudo fallocate -l 8G /swapfile # 请根据自己情况修改swap大小
ls -lh /swapfile
sudo chmod 600 /swapfile # 更改swap文件的权限,否则会有很大的安全隐患
ls -lh /swapfile # 然后检查是否设置完成

启用swap文件

sudo mkswap /swapfile
sudo swapon /swapfile

确认一下设置是否已经生效

swapon -s
free -m

前面设置的swap会在重启后失效,通过修改fstab让配置永久生效。

sudo vim /etc/fstab

按 i 进入输入模式,在文件末尾加入下面这行内容。

/swapfile swap swap sw 0 0

按esc退出输入模式,输入 :wq 保存退出。

swappiness参数决定了系统将数据从内存交换到swap空间的频率。该数值越接近于0,系统越倾向于不进行swap,最大限度使用物理内存。数值越接近100,越倾向于使用swap,而过多的使用swap可能导致服务器运行效率缓慢。ubuntu系统的默认推荐值是60,这里我为了保证服务器运行效率,建议设置为10。

cat /proc/sys/vm/swappiness # 查看当前的swappiness
sudo sysctl vm.swappiness=10 #修改swappiness为10

编辑sysctl配置文件,使其永久生效
sudo vim /etc/sysctl.conf

按 i 进入输入模式,将以下内容粘贴到文件末尾:

vm.swappiness = 10

按esc退出输入模式,输入 :wq 保存退出。

(二)检查安装SteamCmd运行所需环境:

这些操作要在root中进行,根据你的系统选择不同指令。

Ubuntu/Debian 64位

sudo apt -y install lib32gcc1

RedHat/CentOS 32位

sudo yum -y install glibc libstdc++

RedHat/CentOS 64位

sudo yum -y install glibc.i686 libstdc++.i686

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
5天前
|
Ubuntu Linux 网络安全
Linux服务器上安装软件
Linux服务器上安装软件
26 2
|
5天前
|
Linux Docker 容器
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
本篇博客重在讲解Centos安装docker,经博主多次在不同服务器上测试,极其的稳定,尤其是阿里的服务器,一路复制命令畅通无阻。
48 4
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
|
4天前
|
Ubuntu Linux Android开发
termux+anlinux+Rvnc viewer来使安卓手机(平板)变成linux服务器
本文介绍了如何在Android设备上安装Termux和AnLinux,并通过这些工具运行Ubuntu系统和桌面环境。
26 2
termux+anlinux+Rvnc viewer来使安卓手机(平板)变成linux服务器
|
5天前
|
存储 数据可视化 Java
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
如何在Linux系统下部署和运行Java项目jar包,包括传输文件到Linux、使用nohup命令运行jar包、查看端口状态、杀死进程和查看项目运行状态,以及如何解决“没有主清单属性”的错误。
65 1
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
|
2天前
|
弹性计算 Linux 数据库
阿里云国际版如何迁移Linux云服务器系统盘中的数据
阿里云国际版如何迁移Linux云服务器系统盘中的数据
|
2天前
|
弹性计算 网络协议 Ubuntu
如何在阿里云国际版Linux云服务器中自定义配置DNS
如何在阿里云国际版Linux云服务器中自定义配置DNS
|
3天前
|
Ubuntu 安全 Linux
云服务器安装宝塔教程
云服务器安装宝塔教程
|
4天前
|
Linux C语言 C++
vsCode远程执行c和c++代码并操控linux服务器完整教程
这篇文章提供了一个完整的教程,介绍如何在Visual Studio Code中配置和使用插件来远程执行C和C++代码,并操控Linux服务器,包括安装VSCode、安装插件、配置插件、配置编译工具、升级glibc和编写代码进行调试的步骤。
18 0
vsCode远程执行c和c++代码并操控linux服务器完整教程
|
4天前
|
Linux 开发工具 Docker
各个类linux服务器安装docker教程
各个类linux服务器安装docker教程
23 0
|
5天前
|
存储 Linux
服务器数据恢复—Linux操作系统网站服务器数据恢复案例
服务器数据恢复环境: 一台linux操作系统网站服务器,该服务器上部署了几十个网站,使用一块SATA硬盘。 服务器故障&原因: 服务器在工作过程中突然宕机。管理员尝试重新启动服务器失败,于是将服务器上的硬盘拆下检测,发现很多坏扇区。联系当地的一家数据恢复公司处理,但是没有成功。