どうも、Satisfactory_Japan Serverの公式サーバーで場所を公開してる凛空です。
CentOS7や8がサポート打ち切りが決まり行き詰まってるところですが、CentOS8 Streamが登場したので、そもまま構築してみる。
ただ、ここで結論:CentOS8 Stream では、現状構築するとエラーがでます!
今回紹介するのはEPICとSteamから発売されているゲームソフト、Satisfactoryのサーバー構築方法を解説していく。
UPDATE5.0で追加されたサーバーシステム
2021年10月下旬に公式がマルチサーバーシステムを追加できるようになった。
これにより、今まではホストが立ててないと遊べなかったシステムが、サーバーを経由することにより、遊べるようになった。
今回はその構築方法をLinux CentOS8 (Stream)版で紹介する。
システム要求 | |
CPU | Intel / AMD プロセッサ(x86 / 64bit) 32bitまたはARMはサポートされてません。 |
Memory | 最小6GB以上(4人以上) 推奨8GB以上 |
Storage | ゲームサーバーデータはおよそ10GB程度 |
OS | サポートされてるOSはWindows10以上、Linux(Windows7などはサポート対象外) |
Internet | ブロードバンドインターネット接続。ポート開放必要 |
1.OSを最新にしよう
1 |
[root@kaijou ~]# dnf -y update |
あれ?おかしいぞ?
CentOS-8 – AppStream [=== ] — B/s | 0 B –:CentOS-8 – AppStream [ === ] — B/s | 0 B –:– ETCentOS-8 – AppStream 3.6 B/s | 38 B 00:10
エラー: Failed to download metadata for repo ‘AppStream’: Cannot prepare internal mirrorlist: No URLs in mirrorlist
dnf / yumでエラーがでる。
CentOS8が2021年末にサポート切れになったことにより、アップデートもできないようだ。
対象の環境
CentOS8
サポート停止により、今後新しいアップデートパッチを提供しないのと、ミラーサイトが停止するということ。
なので、ここではCentOS Streamに移行する方法と構築方法を解説する。
内部ファイルを変更するのだが、コマンドでいっきに変更しよう
1 |
sed -i -e 's/^mirrorlist/#mirrorlist/g' -e 's/^#baseurl=http:\/\/mirror/baseurl=http:\/\/vault/g' /etc/yum.repos.d/CentOS-*repo |
1-2 気をとりなおしてOSを最新にする
1 |
[root@kaijou ~]# dnf -y update |
950個近くのファイルがあると思います。
ダウンロード後、インストールがあるので気長に待ちましょう。
回線によっては時間がかかるのである程度余裕があるときにやりましょう。
2.SELinuxを無効化する
CentOSにはセキュリティ対策としてSELinuxというものが用意されています。SELinuxを適切に設定することでより強固なサーバを構築することができるのですが、今回はSELinuxを無効にしておきます。
1 |
[root@kaijou ~]# getenforce |
Enforcingになってる場合のみ以下のコマンドを入力する。
すでにPermissiveになってたらコマンド不要。
以下のコマンドで無効化します。
1 |
[root@kaijou ~]# setenforce 0 |
ここまでが、CentOS8の初期設定です。
次にSatisfactoryのサーバーデータをインストールしていきます。
3.一般ユーザーを追加する
ここでは例としてSteamというユーザーを追加します。
各自任意の名前で構いません。
1 2 |
[root@kaijou ~]# useradd steam [root@kaijou ~]# passwd steam |
新しいパスワード: の空白にパスワードを入力してください。
この時、文字列は表示されません。キーボードで正しく入力してください。
一般ユーザーのパスワードになります。
確認で再入力するので、それも入力してください。
4.必要ソフトをインストールする
rootから 先程作った一般ユーザーにアカウントを切り替える。
1 |
[root@kaijou ~]# su - steam |
ユーザーを変更したらLinuxGSMからデータをダウンロードします。
1 |
[steam@kaijou ~]$ wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh sfserver |
5. Satisfactory Dedicated Serverをインストール
コマンドを実行してインストールを行います。
1 |
[steam@kaijou ~]$ ./sfserver install |
インストールには時間がかかります。
Steamのサーバーからファイルをダウンロードするのですが、サーバー側の問題でダウンロードに時間がかかります。1時間~2時間以上はかかると思いますので気長に待ちましょう。
画面がSTARTなどの表記で固まりますが、プログラムは走ってるので、そのまま待ちます。
すべて終了すると、[steam@kaijou ~]$ で止まるのでそれまで待機しましょう。
6.SteamCMDが入ったら、アップデートを行う
先程時間がかなりかかったが、アップデートもかなり長いので気長に待とう
1 |
[steam@kaijou ~]$ ./sfserver update 1690800 |
インストールしたときにアップデートも行うので、この時アップデータがなければすぐに終わります。
(チェックが入るだけですぐ終わる)
7.ファイルを生成する為に、一度サーバーを起動する
ダウンロードが終わったので、サーバーを起動させておこう。
1 |
[steam@kaijou ~]$ ./sfserver start |
ファイルが生成されたので一度止めておきます。
1 |
[steam@kaijou ~]$ ./sfserver stop |
8.ファイアウォールの開放
今回は指定のポートを開放してみます。
実際は各自で設定して下さい。
デフォルトポート (UDPのみ) |
ポートの使用法 | 説明 |
---|---|---|
15777 | クエリポート | これは、専用サーバーに最初に接続するときにゲームに入力する必要があるポートです。このポートは自由にリダイレクトできます。 |
15000 | ビーコンポート | 現在、このポートはリダイレクトできません。サーバーの複数のインスタンスが起動され、デフォルトがすでに使用されている場合は、自動的にインクリメントされます。 |
7777 | ゲームポート | このポートは、サーバーの起動時に-Portパラメーターを使用して自由にリダイレクトできます。たとえば、 ” -Port=10000 “を使用してゲームポートをUDPポート10000に変更します。現在、デフォルトのポートが使用されている場合は、空きポートになるまで次に高いポートがチェックされます。が見つかり、使用されます。 |
ファイアウォールが無効になってた場合は、以下のコマンドを入力しインストールする
デフォルトのポートを開放する場合は以下の通りにします。
各自で任意のポートに置き換えても大丈夫です。
1 2 3 |
[steam@Kaijou ~]$ sudo firewall-cmd --permanent --zone=public --add-port=15777/udp [steam@Kaijou ~]$ sudo firewall-cmd --permanent --zone=public --add-port=15000/udp [steam@Kaijou ~]$ sudo firewall-cmd --permanent --zone=public --add-port=7777/udp |
その後、ファイアウォールをリロードします。
1 |
[steam@Kaijou ~]$ sudo firewall-cmd --reload |
9.実行ファイルを作成する
サーバーを起動したとき自動で実行できるファイルを設置していきます。
1 |
[steam@Kaijou ~]$ vi start_server.sh |
実行ファイルの中身は任意で変更して下さい
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#!/bin/bash export InstallationDir=/home/steam/serverfiles export templdpath=$LD_LIBRARY_PATH export LD_LIBRARY_PATH=$InstallationDir/linux64:$LD_LIBRARY_PATH # Install or update the server before launching it /home/steam/.steam/steamcmd/steamcmd.sh +login anonymous +force_install_dir $InstallationDir +app_update 1690800 validate +quit # Launch the server $InstallationDir/FactoryServer.sh -multihome=192.168.0.240 -ServerQueryPort=15777 -BeaconPort=15000 ?listen -Port=7777 export LD_LIBRARY_PATH=$templdpath |
-multihome=192.168.XXX.XXX | サーバーのIPアドレスを記入します。ここでは開放する値は192.168.0.240にしてます。 |
-ServerQueryPort=15777 | クエリポートを指定します。FWで設定した値を入力して下さい。 |
-BeaconPort=15000 | ビーコンポートを指定します。 |
listen -Port=7777 | ゲームポートを指定します。 |
ファイルに権限を設定しよう
1 |
[steam@Kaijou ~]$ chmod +x ~/start_server.sh |
10.いよいよゲームサーバーを立てます
実行してみよう
1 |
[steam@kaijou ~]$ ./start_server.sh |
っと思いましたが、現在のCentOS8 やCentOS9などは、サティスファクトリーのゲーム自体構築できなさそうです。
同じところでエラーが出て停止します。
対策方法は現在見つかってないのでパッチ待ちでしょう。
この記事は残しておいて、後ほど更新しますが、厳しそうです。
閲覧数 958 件
What do you think?
You must be logged in to post a comment.