linux云服务搭建七日杀服务器的详细流程

目录
  • 准备工作
    • 1.设置swap
    • 2.安装screen
    • 3.安装SteamCmd运行所需环境
    • 4.创建一个用户
  • steamCMD与七日杀服务器端
    • 1.下载并安装SteamCMD
    • 2.登录steam账号
    • 3.下载七日杀服务端
    • 4.配置服务端
    • 5.配置防火墙
    • 6.启动服务器
  • 补充
    • 1.几个重要路径和文件
    • 2.添加mod
    • 3.管理服务器

准备工作

首先你需要拥有一个云服务器,内地的主流云服务平台有阿里云、腾讯云等,如果你在海外可以选择AWS、google云服务等。七日杀服务端的建议最低配置是2core 4G,内存8G及以上最佳。考虑到目前国内云服务的价格比较,在校大学生可以考虑使用学生优惠的1core 2G套餐,配置swap后勉强够用。

云服务器的主机名一般是一串很长的乱码,例如显示在用户终端上很影响使用。比如我在修改前是:

[root@bS2&Lb%n21fAS7D ~]$

为了方便以后使用,建议大家先修改它。

# 这些操作要在root中进行。
hostnamectl set-hostname centos7 #可以改成你喜欢的主机名,别太长
hostname	# 查看下
centos7
vim /etc/hosts	# 编辑下hosts文件, 给127.0.0.1添加hostname
cat /etc/hosts	# 检查

修改之后像这样:

[root@centos7 ~]$

舒服多了!

1.设置swap

这些操作都在root中进行。

linux系统的swap空间类似windows系统的虚拟内存。如果你的云服务器内存小于4G,比如只有2G内存,那你就必须设置一个swap空间,否则启动服务器时会因为内存不足导致进程killed。

使用swapon命令可以检查系统是否已经配置过swap,云服务器一般都没有提前设置swap。

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

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

# 这些操作要在root中进行。
sudo fallocate -l 4G /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 保存退出。(对vim操作不熟悉的,可以搜索“vim指令”进一步学习)

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 保存退出。

2.安装screen

安装screen,后面开服时会用到。使用screen可以让服务器进程在后台运行,而不会因为远程连接的断开而停止进程。

# RedHat/CentOS
yum install -y screen
# Ubuntu/Debian
apt install screen

3.安装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

4.创建一个用户

不建议使用root系统进行后面的操作,这里我们为steam创建一个专门的用户。

useradd -m steam	# 新建一个名为steam的用户
passwd steam	# 为用户steam设置密码
su - steam	# 切换至新建的steam用户。改成root,可以切换回root用户

修改用户终端配色。

CentOS7的终端和指令颜色一样,大端的代码中难以区分。修改一下用户终端的配色,可以大大的提高整个shell页面的可读性,方便你更快的找到每段代码的开头。

修改前后如下图所示:

输入以下指令修改终端配色。

# 临时修改配色
PS1="\[\e[32;1m\][\[\e[32;1m\]\u\[\e[32;1m\]@\h \[\e[34;1m\]\W\[\e[0m\]]\\$ "
# 永久修改vim配色
vim ~/.bashrc	#编辑.bashrc文件

加入这一行

PS1="\[\e[32;1m\][\[\e[32;1m\]\u\[\e[32;1m\]@\h \[\e[34;1m\]\W\[\e[0m\]]\\$ "

保存退出。

source ~/.bashrc	# 重新加载bash配置

steamCMD与七日杀服务器端

1.下载并安装SteamCMD

确定你当前在你新建的steam用户中,如果不是,请使用su - steam切换用户。目前版本steamcmd必须直接解压在 ~ 目录下,否则会报错。

# 这些操作要在刚才创建的steam用户中进行,请不要使用root用户!

#cd至~目录
cd ~
# 下载Linux系统专用的SteamCMD
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz 

# 解压
tar -zxf steamcmd_linux.tar.gz

运行SteamCmd

# 运行steamcmd
./steamcmd.sh

首次运行steamcmd,他会自己下载更新自己。等出现steam>时,就可以对steamcmd进行操作啦。

2.登录steam账号

你可以使用steam账号登录,或匿名登录login anonymous。但是七日杀必须要steam登录才可以下载服务端。

login <用户名> <密码>
# 如果设置了安全令牌,会让你输入一次安全令牌

3.下载七日杀服务端

force_install_dir ~/7DaysToDieServer	# 设置服务端安装目录
app_update 294420 validate	# 下载七日杀服务端,294420是七日杀的编号

# 本文由 @白火shiraka 辛苦编写,未经授权禁止转载
# 白火的博客主页:www.cnblogs.com/shiraka
# 如果你在白火shiraka的博客、知乎、B站以外的地方看到这篇文章,帮忙举报侵权,十分感谢!
# 下载会持续一段时间,请耐心等待

等到出现如图所示的 Success! App '294420' fully installed.之后便可以退出steamcmd了。

quit	#退出SteamCmd

4.配置服务端

# 进入七日杀服务端根目录
cd ~/7DaysToDieServer
# 编辑配置文件
vim serverconfig.xml

下面翻译了部分参数。

<property name="ServerPort"               value="26900"/> <!-- 默认26900 -->
<property name="ServerName"               value="服务器名"/>
<property name="ServerPassword"           value="服务器登入密码"/>
<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"/> <!-- 游戏难度 默认难度是2 -->
<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"/> <!-- 玩家之间能造成的伤害,0.禁止杀戮 1.只能杀死盟友 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 -->
<property name="EACEnabled"                 value="false"/> <!-- #反作弊,默认true,开启可以防止玩家作弊,同时也会使部分mod不可使用。 -->
<property name="TelnetEnabled"              value="true"/> <!-- 是否开启Telnet -->
<property name="TelnetPort"                 value="8081"/> <!-- Telnet端口 -->
<property name="TelnetPassword"             value="mdzz"/> <!-- #Telnet密码 -->
<!-- 以上内容由 @白火shiraka 翻译整理,未经授权禁止转载 -->
<!-- 白火的博客主页:www.cnblogs.com/shiraka -->
<!-- 如果你在白火shiraka的博客、知乎、B站以外的地方看到这篇文章,帮忙举报侵权,十分感谢! -->
<!-- 更多设置请参考配置文件中的注释,英语不好的同学善用翻译软件!-->

5.配置防火墙

还需要在防火墙放行以下端口,才可让服务器正常运转。阿里云请在平台的安全组页面添加规则,其他云平台可能有不同的安全组设置方式,大同小异。

端口 协议 说明
8080 TCP Web控制台
8081 TCP Telnet端口(这个建议不要放行)
8082 TCP 如果安装了Alloc的mods,这个端口可以展示地图
26900/26902 UDP 客户端通讯

Telnet建议不要放行,直接在服务器中使用telnet localhost 8081即可登录telnet。

如果一定要用远程telnet连接,请务必在serverconfig.xml中设置好TelnetPassword后,再放行端口。该行为有很大的风险。

6.启动服务器

创建一个名为7DayServer的screen,可以让服务器在后台运行,断开远程连接也不终止进程。

screen -S 7DaysServer

启动服务器

./startserver.sh -configfile=serverconfig.xml

按住Ctrl + A +D 将screen加入后台运行

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

screen -ls	# 查看screen,记下7DaysServer的编号
screen -r <7DaysServer的编号>

补充

1.几个重要路径和文件

路径

# 路径取决于你的设置的安装位置,如果完全按照本文操作,那么路径如下
~/7DaysToDieServer	# 七日杀服务端主目录
~/7DaysToDieServer/Data/Worlds	# 七日杀服务端地图目录
~/.local/share/7DaysToDie/Saves	# 七日杀服务端存档目录
~/7DaysToDieServer/7DaysToDieServer_Data	# 七日杀服务器日志输出目录
~/7DaysToDieServer/Mods	# Mods目录,需要自己创建

文件

~/.local/share/7DaysToDie/Saves/serveradmin.xml	# 服务器配置文件
~/7DaysToDieServer/serverconfig.xml	# 管理员配置文件

2.添加mod

想添加mod的同学看这里。

cd ~/7DaysToDieServer	# cd至七日杀服务端主目录
mkdir Mods	# 创建mods文件夹

服务器的mod和自己平时玩的mod基本通用,跟在自己游戏中装mod一样,将mod文件放入Mods文件夹中即可。

上传mods到服务器上的方法有很多,比如Xshell中可以使用lrzsz上传。

# 以下操作要在root用户中进行

# Ubuntu/Debian
sudo apt-get install lrzsz

# RedHat/CentOS
yum  install lrzsz

安装zip/unzip 用于解压mod压缩包

# Ubuntu/Debian
apt-get install zip
# RedHat/CentOS
yum install zip unzip

上传mod文件,并解压。

# 使用su - steam,回到steam用户中继续操作
cd ~/7DaysToDieServer
rz #直接将mod的压缩包上传文件至linux
unzip <压缩包名>	# 一般mod压缩包内自带Mods文件夹,直接解压即可
# 如果解压后路径不对,可以使用mv指令移动至Mods文件下

3.管理服务器

在服务器中安装telnet。(也可以用Xshell的远程telnet连接,这里不做赘述)

# RedHat/CentOS
rpm -qa telnet	# 检测telnet的rpm包是否安装
yum install telnet	# 若未安装,则安装telnet
# Ubuntu/Debian
netstat -a | grep telnet	# 检测telnet的rpm包是否安装
sudo apt-get install xinetd telnetd	# 若未安装,则安装telnet

SHELL 复制 全屏

telnet localhost 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的名义广播一条信息

参考:

Steam Developer Community : SteamCMD

Installing Linux dedicated server for 7 days to die

到此这篇关于linux云服务搭建七日杀服务器的文章就介绍到这了,更多相关linux七日杀服务器内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Linux云服务器搭建SFTP服务器图片服务器的操作

    首先大家可以先了解一下SFTP和FTP协议的区别,这里我就不赘述了. Sftp 默认监听端口22 Ftp协议默认监听端口21 本质没什么区别都是基于文件传输协议.前者安全性能高,后者效率高. 下面进入正题: 一,确保你的Linux 账号能连接,sftp默认就是Linux root账号密码 这里就是你的管理员账号用户名和密码.一般这个密码Sftp就直接连就行了不用改的都.下面看看Xftp 连接成功了说明没有问题. 二,通过如果是阿里云服务器一定把防火墙和安全组都打开,以免出现其他问题 还有一个防火

  • 阿里云云服务器Linux系统FTP服务器搭建设置教程

    一.Redhat/CentOS安装vsftp软件 1.更新yum源 首先需要更新系统的yum源,便捷工具下载地址:http://www.jb51.net/article/54840.htm(shell脚本) 2.安装vsftp 使用yum命令安装vsftp 复制代码 代码如下: #yum install vsftpd -y 3.添加ftp帐号和目录 先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下. 使用下面的命令创建帐户,该命令指定了/a

  • 阿里云服务器linux系统搭建Tomcat部署Web项目

    整个过程我给它分成四个步骤: 下载并安装jdk 下载并安装Tomcat 配置阿里云服务器信息 部署web项目 使用的工具:Xshell.WinSCP. 没有安装jdk的小伙伴点击上方超链接跳转到安装jdk博客 下载并安装Tomcat 到这个网页下查看最新的镜像:https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat 使用工具Xshell操作Linux系统 移动到home目录下载tomcat 下载 wget https://mirrors.tuna.t

  • linux云服务搭建七日杀服务器的详细流程

    目录 准备工作 1.设置swap 2.安装screen 3.安装SteamCmd运行所需环境 4.创建一个用户 steamCMD与七日杀服务器端 1.下载并安装SteamCMD 2.登录steam账号 3.下载七日杀服务端 4.配置服务端 5.配置防火墙 6.启动服务器 补充 1.几个重要路径和文件 2.添加mod 3.管理服务器 准备工作 首先你需要拥有一个云服务器,内地的主流云服务平台有阿里云.腾讯云等,如果你在海外可以选择AWS.google云服务等.七日杀服务端的建议最低配置是2core

  • linux 之centos7搭建mysql5.7.29的详细过程

    1.下载mysql 1.1下载地址 https://downloads.mysql.com/archives/community/ 1.2版本选择 2.管理组及目录权限 2.1解压mysql tar -zxf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz上传目录/home/tools 2.2重命名 mv mysql-5.7.29-linux-glibc2.12-x86_64 mysql-5.7.29 2.3移动指定目录 mv mysql-5.7.29 /u

  • pycharm部署django项目到云服务器的详细流程

    目录 前言 1-下载python3.8压缩包 2-解压缩安装包 3-安装依赖工具 4-安装python3.8 6-修改yum配置文件 7-配置python 8-检验配置结果 9-上传并部署Django项目 前言 大家想一想,如果要在一台电脑上运行python程序需要些什么工具呢? 显而易见,我们需要在电脑上安装python应用,配置python环境等等.那么如果我们需要在云服务器上运行python程序的话要怎么做呢?相信大家已经想到了,就是照葫芦画瓢,在云服务器上做相同的工作就好了. 1-下载p

  • linux上搭建私有Git服务器的详细教程

    1.服务器搭建 远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改.GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用. 搭建Git服务器需要准备一台运行Linux的机器,在此我们使用CentOS.以下为安装步骤: 1.下载git-2.22.0.tar.gz https://Github.com/Git/Git/archive/v2.2

  • Linux中一对多配置日志服务器的详细步骤

    目录 配置发送端:从server发送到syslog 配置接收端:配置协议,端口号,接收条件,存储位置 取消注释如下代码: 接收条件配置 创建日志接收模板 结语 配置发送端:从server发送到syslog 打开以下文件 在第90行(附近也行)输入以下代码,authpriv代表所有级别的登录日志,@@代表tcp,172.168.2.100代表目标ip,514代表目标端口号,保存退出 authpriv.* @@10.99.8.6:514 配置接收端:配置协议,端口号,接收条件,存储位置 输入以下代码

  • IOS利用CocoaHttpServer搭建手机本地服务器

    缘起 今天用暴风影音看视频,然后发现它有个功能,wifi传片,感觉挺有意思,然后就上网查了下相关内容. 原理 使用CocoaHTTPServer框架,在iOS端建立一个本地服务器,只要电脑和手机连入同一热点或者说网络,就可以实现通过电脑浏览器访问iOS服务器的页面,利用POST实现文件的上传. 实现 1.下载CocoaHTTPServer 2.导入CocoaHTTPServer-master目录下的Core文件夹 3.导入Samples/SimpleFileUploadServer目录下的MyH

  • 详解在Linux中搭建一个FTP服务器

    在Linux中搭建一个ftp服务器,以供两个工作小组保管文件使用.禁用匿名.第一个小组使用ftp账号:ftp1,工作目录在:/var/ftp/ftp1:第二个小组使用ftp2,工作目录在:/var/ftp/ftp2. 两个小组互相不能访问各自的文件,需要限制用户不能离开自己的工作目录. [实现步骤] 1.检查安装vsftpd服务器 以root进入终端后(其他账户进入终端的可以用su root 输入密码后进入root 模式)之后,在终端命令窗口输入以下命令进行验证:# rpm –qa | grep

  • linux中ftp服务搭建需要注意的地方

    1.配置文件 /etc/vsftpd 目录下的vsftpd.conf文件 # Example config file /etc/vsftpd/vsftpd.conf # # The default compiled in settings are fairly paranoid. This sample file # loosens things up a bit, to make the ftp daemon more usable. # Please see vsftpd.conf.5 fo

  • linux搭建NFS文件共享服务器的步骤详解

    linux搭建NFS服务器 为了实现不同操作系统中的数据共享,我们一般会搭建一些用于文件共享的服务器,nfs服务器就是其中一种,它实现的是linux与linux之间的共享.今天我将把如何在linux系统搭建nfs服务器的步骤分享出来,供大家参考. 搭建步骤 1.安装nfs所需软件包 yum install rpcbind nfs-utils 2.创建测试文件并赋权限 mkdir /home/test chmod -R 777 /home/test/ cd /home/test/ vim aaa/

  • linux下FastDFS搭建图片服务器

    目录 服务器规划 一.安装系统组件 二.安装fastdfs 三.配置图片服务器文件 总结 服务器规划 服务器名称 IP地址和端口 备注 fastdfs-tracker *:22122 跟踪服务器/调度服务器 fastdfs-storage *:23000 存储服务器 一.安装系统组件 yum install gcc -y 二.安装fastdfs 1.创建图片服务器存储目录 mkdir -p /data/image 2.下载FastDFS依赖包libfastcommon并安装 wget https

随机推荐