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

ops/2024/9/25 14:01:34/

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

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

配置管理员密码: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服务器名字"/>

<property name="ServerPort"               value="26900"/> #默认26900

<property name="ServerPassword"           value="服务器登入密码"/>

<property name="ServerWebsiteURL" value="www.jonaslu.com"/>服务器网址

<property name="ServerMaxPlayerCount"      value="8"/> #最大玩家数 默认8

<property name="ServerDescription"        value="关于服务器描述"/>

<property name="GameWorld"                value="Navezgane"/> #服务器世界名默认Navezgane

<property name="GameName"                 value="My Game"/> #存档名字

<property name="GameDifficulty"           value="2"/> #游戏难度

<property name="GameMode"                  value="GameModeSurvivalMP"/> #游戏模式,默认GameModeSurvivalMP

<property name="ZombiesRun"                value="0"/> #僵尸行走,默认值0,白天走晚上跑 1为不跑 2为一直跑

<property name="DayNightLength"            value="60"/> #游戏内一天在现实世界(三次元)时长(单位分钟min)

<property name="DayLightLength"            value="18"/> #游戏内白天的时间(单位小时h)

<property name="PlayerKillingMode"        value="1"/> #玩家之间能造成的伤害,默认1.敌人0.无2.非同盟3.所有人

<property name="DropOnDeath"                value="2"/> #玩家死亡掉落,默认0.全部 1.工具栏 2.背包 3.删除所有东西

<property name="MaxSpawnedZombies"          value="60"/> #服务器最大僵尸生成量

<property name="MaxSpawnedAnimals"          value="50"/> #服务器最大生物生成量

<property name="AirDropFrequency"           value="72"/> #空投循环生成时间(单位分钟min)

<property name="AirDropMarker"              value="true"/> #是否空投 默认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 <id/name> # 杀死指定玩家

listplayers lp # 获取在线玩家信息

give <id/name> <物品> <数量> # 给玩家刷某样东西

shutdown # 关闭服务器

say <信息> # 以server的名义广播一条信息

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


http://www.ppmy.cn/ops/102360.html

相关文章

使用 Puppeteer 在 PHP 中解决 reCAPTCHA 以进行网页抓取

您是否在抓取数据时遇到 reCAPTCHA 障碍&#xff1f;我也遇到过。这些 CAPTCHA 挑战会将简单的抓取任务变成一大障碍。但别担心&#xff0c;我有一个解决方案可以帮助您轻松绕过这些障碍。 在本博文中&#xff0c;我将引导您使用 Puppeteer&#xff08;一个功能强大的 Node.js…

zookeeper客户端命令行操作、节点类型及监听器

zookeeper客户端命令行操作、节点类型及监听器 文档 linux安装java -centos安装java -linux配置java环境变量zookeeper单机安装zookeeper集群安装zookeeper客户端命令行操作、节点类型及监听器zookeeper集群写数据原理java操作zookeeper 启动zookeeper客户端 启动客户端&…

无线通信频率分配

首先看看无线电信号的频谱如何划分&#xff1a; 一、5G NR 3GPP已指定5G NR 支持的频段列表&#xff0c;5G NR频谱范围可达100GHz&#xff0c;指定了两大频率范围&#xff1a; ① Frequency range 1 &#xff08;FR1&#xff09;&#xff1a;就是我们通常讲的6GHz以下频段 频率…

【neo4j】neo4j-Desktop安装

Neo4j是一个高性能的图数据库&#xff0c;它使用图形结构来存储和处理数据。它是一个开源的、完全事务的数据库&#xff0c;专门设计用于大规模的图形数据。Neo4j使用一种名为Cypher的查询语言来处理图形数据&#xff0c;使用户能够方便地进行复杂的图形查询和分析。 Neo4j的主…

hadoop生态圈(四)- MapReduce

目录 MapReduce的基本原理 MapReduce流程图 Map阶段执行流程 Reduce阶段执行流程 Shuffle机制 MapReduce解决的是海量数据计算 MapReduce的思想核心是“分而治之”。就是把一个复杂的问题按一定的“分解”方法分为规模较小的若干部分&#xff0c;然后逐个解决&#xff0c;…

【视频讲解】SMOTEBoost、RBBoost和RUSBoost不平衡数据集的集成分类酵母数据集、治癌候选药物|数据分享...

全文链接&#xff1a;https://tecdat.cn/?p37502 分析师&#xff1a;Zilin Wu 在当今的大数据时代&#xff0c;科研和实际应用中常常面临着海量数据的处理挑战。在本项目中&#xff0c;我们拥有上万条数据&#xff0c;这既是宝贵的资源&#xff0c;也带来了诸多难题。一方面&a…

window下kafka3启动多个

准备工作 我们先安装好kafka&#xff0c;并保证启动成功&#xff0c;可参考文章Windows下安装Kafka3-CSDN博客 复制kafka安装文件 kafka3已经内置了zookeeper&#xff0c;所以直接复制就行了 修改zookeeper配置文件 这里我们修改zookeeper配置文件&#xff0c;主要是快照地址…

.NET_web前端框架_layui_栅格布局

基础概念 layui:用于简化前端编写的框架。响应式布局&#xff08;Responsive Layout&#xff09;:一种网页设计方法&#xff0c;使网页能够根据不同设备的屏幕尺寸和分辨率自动调整其内容和布局。栅格布局&#xff08;Grid Layout&#xff09;:一种网页设计布局方法&#xff0c…