ふぉい。kirinaです。
前々回のお話…
ARKSurvival?とかいう恐竜ゲーが最近出ました。
ついでにLinuxサーバーをSteamCMDを介して作れるそうなのでチャレンジしてみました。
結果から。
失敗した失敗したあたしはしっぱ(ry
と嘆いていましたが、
新しくCentOS7でやり直してみたら割りと簡単に出来ました。
手順的にはあまり変わってないけれど、変わってるとしたらコマンドがちょっと変わった。
導入
yum install glibc.i686 libstdc++.i686 -y
//難なくGCCが入った。
yum install gcc gcc-c++
//今回は/opt/steamという構成
cd /opt
mkdir steam;cd steam
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
//解凍してうじゃうじゃ
tar -xvf steamcmd_linux.tar.gz
rm -rf steamcmd_linux.tar.gz
//これまた時間がかかる
./steamcmd.sh +login anonymous +force_install_dir /opt/steam/arkdedicated +app_update 376030 validate +quit
cd /opt/steam/arkdedicated/ShooterGame/Binaries/Linux
vi start-server.sh
//こんな感じの内容でスクリプトを作る
!/bin/bash
./ShooterGameServer "TheIsland?listen?Port=27015?QueryPort=27016?SessionName=ServerName?ServerAdminPassword=ServerAdminPass?ServerPassword=ServerLoginPass?" -server -log
//:wqで保存する
ポート開放前準備
CentOSは7から標準ファイアウォールがiptablesじゃなくなった。
//起動しているか確認
firewall-cmd --state
//デフォルトゾーンの確認
firewall-cmd –list-all
//デフォルトゾーンを変更する
firewall-cmd --set-default-zone=dmz
//eth0のNICをdmzに変更
cd /etc/sysconfig/network-scripts/
cp -p ifcfg-eth0 20150704_ifcfg-eth0
vi ifcfg-eth0
//こいつを末尾に追加するか編集して保存
ZONE=dmz
ポート開放
//必要そうなポートをあける
firewall-cmd --permanent --add-port=27015/tcp
firewall-cmd --permanent --add-port=27015/udp
firewall-cmd --permanent --add-port=27016/tcp
firewall-cmd --permanent --add-port=27016/udp
//ファイアウォールの再起動
firewall-cmd --reload
後はいつもの
cd /opt/steam/arkdedicated/ShooterGame/Binaries/Linux
./start-server.sh
エラーがどうたら言われるが、5分かそこら待つと出現する。
おまけ バックグランドで起動
yum -y install screen
vi start-server.sh
//2行目の先頭につける
screen -AmdS ARK
//起動後にフォアグラウンドに戻す
screen -r ARK
//バックグラウンドに移行させる
Ctrl+AのあとD