Linux七日殺服務(wù)器搭建筆記
服務(wù)器環(huán)境準(zhǔn)備篇:
阿里云1核2G 40G 1M帶寬服務(wù)器 (七日殺的瓶頸在內(nèi)存,2G是不夠的需要配置虛擬內(nèi)存)
服務(wù)器系統(tǒng)為 centos7.x
環(huán)境配置篇:
安裝gcc及l(fā)ibc編譯環(huán)境(兼容x86環(huán)境 非必須)
yum install glibc.i686
yum install libstdc++.i686
yum install gcc
//安裝對(duì)應(yīng)的環(huán)境glibc 2.15(有就不用安裝了 查看方式 ldd --version)
cd /usr/local/
//下載glibc 2.15安裝包并解壓
wget http://ftp.gnu.org/gnu/libc/glibc-2.15.tar.xz
tar -xvf glibc-2.15.tar.xz
//開始安裝(以下每行代碼依次執(zhí)行)
mkdir -p ?/var/VMdisks
mv glibc-2.15 /var/VMdisks/
cd /var/VMdisks/glibc-2.15/
mkdir build
cd build/
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
//以下兩行代碼執(zhí)行時(shí)間較長(zhǎng)請(qǐng)耐心等待
make -j4
make install ?
配置虛擬內(nèi)存篇(服務(wù)器內(nèi)存不夠的情況下必須配置)
//查看是否有swap分區(qū)
free -m
//如果顯示出來(lái)的swap 后面是0 0 0 則需要設(shè)置swap分區(qū)(我這里設(shè)置的是8g 即8192 需要等待一段時(shí)間)
dd if=/dev/zero of=/var/swap bs=1M count=8192
//設(shè)置權(quán)限
chmod 600 /var/swap
//創(chuàng)建swap分區(qū)
mkswap /var/swap
//啟用swap
swapon /var/swap
//設(shè)置開機(jī)自動(dòng)設(shè)置swap
echo '/var/swap ? swap ? swap ? default 0 0' >> /etc/fstab
swapon /swap
echo '/swap/swap1 ? swap ? swap ? default 0 0' >> /etc/fstab
//最后再用free -m 查看swap分區(qū)是否有值,如果有值則設(shè)置成功
free -m
安裝steam及七日殺
1.安裝steamcmd
//進(jìn)入到/usr/local目錄下
cd /usr/local/
//創(chuàng)建steamcmd文件夾并進(jìn)入
mkdir steamcmd
cd steamcmd/
//下載steamcmd 安裝包
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -zxvf steamcmd_linux.tar.gz
//啟動(dòng)steamcmd
cd /usr/local/steamcmd
./steamcmd.sh
//啟動(dòng)之后登陸(account 換成你的steam賬號(hào),password換成你對(duì)應(yīng)的密碼 或者用anonymous 亦可)
login account password ?
//示例 login zhanghao mima
//登陸完成之后設(shè)置你的游戲下載路徑(這里設(shè)置的是/usr/local/sevenday目錄下)
force_install_dir /usr/local/sevenday
//設(shè)置完成之后下載七日殺(我這里設(shè)置的是最后一個(gè)版本,如果你不想下載最后一個(gè)版本想下載A18.3則直接將latest_experimental 改成 alpha18.3 即可)
app_update 294420 -beta latest_experimental validate
//下載完成之后退出
quit
//以上工作完成以后則可以啟動(dòng)你的七日殺服務(wù)了(這里需要修改服務(wù)器配置文件serverconfig.xml 見(jiàn)配置文件修改的文檔)
cd /usr/local/sevenday/
nohup sh startserver.sh -configfile=serverconfig.xml &
//查看七日殺進(jìn)程是否存在
top

//查看七日殺日志(output_log在7DaysToDieServer_Data目錄下)
tail -500f output_log__2023-7-10__16-36-15.txt
防火墻篇
確認(rèn)服務(wù)啟動(dòng)后,但是steam看不到對(duì)應(yīng)的服務(wù)器,可能是被云服務(wù)器的防火墻攔截了,需要放開特定的端口(當(dāng)然你可以放開所有端口,但是我不建議你這么做)

執(zhí)行查看監(jiān)聽(tīng)的端口
netstat -tunlp

七日殺監(jiān)聽(tīng)的端口為
tcp 8080 26900
udp 33251 26900 26902
所以我們需要進(jìn)云服務(wù)器控制臺(tái)安全組放開這些端口 并保存

steam連接篇
方法一:添加游戲服務(wù)器
登錄steam客戶端(請(qǐng)不要使用steam管家.jpg)
點(diǎn)擊視圖->游戲服務(wù)器

點(diǎn)下面的加號(hào)->輸入我們自己的服務(wù)器ip:端口->確定

等待幾秒即可看到我們自己的服務(wù)器,雙擊即可進(jìn)入游戲

方法二:進(jìn)游戲輸入IP端口直連

自動(dòng)更新腳本
進(jìn)入游戲目錄
cd /usr/local/sevenday/
新建一個(gè)update.sh文件復(fù)制下列代碼即可(或者本地新建上傳到服務(wù)器)
給腳本添加運(yùn)行權(quán)限
chmod 755 update.sh
運(yùn)行腳本即可(包含 停游戲服務(wù) 更新游戲版本 重新啟動(dòng))
./update.sh