7 Days to Die V2.0の正式リリースに伴い、LinuxGSMを使用したサーバー管理がより重要になりました。本ガイドでは、LinuxGSMの導入から自動運用設定、Slack通知連携まで、2025年最新の情報を基に詳しく解説します。
1. LinuxGSMとは
LinuxGSM(Linux Game Server Manager)は、Linuxサーバー上でゲームサーバーを簡単に管理できるツールです。7 Days to Dieサーバーの導入、起動、停止、アップデート、監視を自動化できる強力なツールです。
1.1 LinuxGSMの主な特徴
- 自動インストールとアップデート機能
- サーバーの起動・停止・再起動の自動化
- ログ監視と自動バックアップ
- Slack、Discord、Telegram通知対応
- Cronジョブによる自動運用
- 詳細なサーバー統計とモニタリング
2. システム要件と対応ディストリビューション
2.1 推奨システム要件
項目 | 最小要件 | 推奨要件 |
---|---|---|
CPU | 2コア以上 | 4コア以上 |
メモリ | 4GB以上 | 8GB以上 |
ストレージ | 20GB以上 | 50GB以上(SSD推奨) |
ネットワーク | 100Mbps以上 | 1Gbps以上 |
2.2 対応ディストリビューション
以下のLinuxディストリビューションでの動作が確認されています:
- Ubuntu 18.04 LTS以降
- CentOS 7以降
- Debian 9以降
- Rocky Linux 8以降
- AlmaLinux 8以降
注意:V2.0対応には、glibc 2.27以降とtmux 1.6以降が必要です。古いディストリビューションでは事前にアップデートが必要な場合があります。
3. 事前準備とサーバー設定
3.1 サーバーの初期設定
Linuxサーバーにログインし、以下のコマンドでシステムを最新状態にアップデートします:
# Ubuntu/Debian の場合 sudo apt update && sudo apt upgrade -y # CentOS/RHEL の場合 sudo yum update -y # Rocky Linux/AlmaLinux の場合 sudo dnf update -y
3.2 必要なパッケージのインストール
LinuxGSMの動作に必要なパッケージをインストールします:
# Ubuntu/Debian の場合 sudo apt install -y wget curl ca-certificates tar bzip2 gzip unzip python3 binutils bc jq tmux lib32gcc-s1 lib32stdc++6 # CentOS/RHEL の場合 sudo yum install -y wget curl ca-certificates tar bzip2 gzip unzip python3 binutils bc jq tmux glibc.i686 libstdc++.i686 # Rocky Linux/AlmaLinux の場合 sudo dnf install -y wget curl ca-certificates tar bzip2 gzip unzip python3 binutils bc jq tmux glibc.i686 libstdc++.i686
3.3 専用ユーザーの作成
セキュリティ上の理由から、7DTDサーバー専用のユーザーを作成します:
# ユーザー作成 sudo adduser sdtdserver # パスワード設定(強力なパスワードを設定) sudo passwd sdtdserver # ユーザーに切り替え sudo su - sdtdserver
4. LinuxGSMの導入手順
4.1 LinuxGSMインストールスクリプトのダウンロード
sdtdserverユーザーでログインし、LinuxGSMインストールスクリプトをダウンロードします:
# LinuxGSMスクリプトのダウンロード curl -Lo linuxgsm.sh https://linuxgsm.sh # 実行権限を付与 chmod +x linuxgsm.sh # 7DTDサーバー用スクリプトをインストール bash linuxgsm.sh sdtdserver
4.2 7DTDサーバーのインストール
以下のコマンドでサーバーのインストールを開始します:
# インストール開始 ./sdtdserver install
インストール中に以下の項目が自動的に実行されます:
- SteamCMDのダウンロードとインストール
- 7 Days to Dieサーバーファイルのダウンロード
- 必要な依存関係の確認とインストール
- 初期設定ファイルの作成
注意:インストール中にroot権限が必要な場合があります。sudoパスワードの入力を求められた場合は、適切に入力してください。
4.3 インストール完了の確認
インストールが完了したら、以下のコマンドでサーバーの状態を確認します:
# サーバー詳細の確認 ./sdtdserver details # サーバー起動テスト ./sdtdserver start # サーバー状態の確認 ./sdtdserver monitor
5. サーバー設定とカスタマイズ
5.1 基本設定ファイルの編集
サーバーの基本設定を行います:
# 設定ファイルの編集 nano ~/lgsm/config-lgsm/sdtdserver/sdtdserver.cfg
5.2 主要設定項目
設定項目 | 説明 | 推奨値 |
---|---|---|
servername | サーバー名 | 任意のサーバー名 |
serverpassword | サーバーパスワード | 強力なパスワード |
maxplayers | 最大プレイヤー数 | 16-32 |
port | サーバーポート | 26900 |
telnetport | 管理用ポート | 8081 |
5.3 V2.0対応の新設定
V2.0で追加された新機能の設定項目:
# V2.0新機能設定 BiomeProgressionSetting=true StormFrequency=2 WeatherEnabled=true CrossPlayEnabled=true
6. 自動アップデート設定
6.1 Cronジョブの設定
自動アップデートを設定するため、Cronジョブを作成します:
# Crontabエディタを開く crontab -e # 以下の内容を追加 # サーバー監視(5分毎) */5 * * * * /home/sdtdserver/sdtdserver monitor > /dev/null 2>&1 # 自動アップデート(30分毎) */30 * * * * /home/sdtdserver/sdtdserver update > /dev/null 2>&1 # LinuxGSM自体のアップデート(週1回) 0 0 * * 0 /home/sdtdserver/sdtdserver update-lgsm > /dev/null 2>&1 # 自動バックアップ(1日1回) 0 2 * * * /home/sdtdserver/sdtdserver backup > /dev/null 2>&1
6.2 アップデート通知設定
アップデート実行時の通知設定を行います:
# 設定ファイルの編集 nano ~/lgsm/config-lgsm/sdtdserver/common.cfg # 通知設定の追加 updateonstart="on" emailalert="on" emailfrom="server@yourdomain.com" emailto="admin@yourdomain.com"
7. Slack通知連携の設定
7.1 Slack Webhookの準備
Slackワークスペースで以下の手順でWebhookを作成します:
- Slackアプリ管理画面にアクセス
- 「Incoming Webhooks」を選択
- 通知したいチャンネルを選択
- Webhook URLをコピー
7.2 LinuxGSMでのSlack設定
LinuxGSMにSlack通知を設定します:
# 設定ファイルの編集 nano ~/lgsm/config-lgsm/sdtdserver/common.cfg # Slack設定の追加 slackalert="on" slackwebhook="https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK" slackchannel="#7dtd-server" slackusername="LinuxGSM" slackicon=":video_game:"
7.3 通知テスト
設定が正しく動作するかテストします:
# 通知テスト ./sdtdserver test-alert
8. 高度な監視とログ管理
8.1 ログファイルの場所
各種ログファイルの保存場所:
ログ種別 | ファイルパス | 説明 |
---|---|---|
LinuxGSMログ | ~/log/script/ | LinuxGSMスクリプトのログ |
コンソールログ | ~/log/console/ | サーバーコンソール出力 |
ゲームログ | ~/log/server/ | ゲーム内イベントログ |
アラートログ | ~/log/alert/ | アラート通知ログ |
8.2 ログローテーション設定
ログファイルの肥大化を防ぐため、ログローテーションを設定します:
# ログローテーション設定 nano ~/lgsm/config-lgsm/sdtdserver/common.cfg # ログ設定の追加 maxlogsize="100" maxlogdays="7" logcompress="on"
8.3 パフォーマンス監視
サーバーのパフォーマンスを監視するためのスクリプトを作成します:
# パフォーマンス監視スクリプト cat > ~/monitor_performance.sh << 'EOF' #!/bin/bash CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}') MEM_USAGE=$(free | grep Mem | awk '{printf("%.2f"), $3/$2 * 100.0}') DISK_USAGE=$(df -h | grep '^/dev/' | awk '{print $5}' | sed 's/%//' | sort -n | tail -1) echo "CPU Usage: ${CPU_USAGE}%" echo "Memory Usage: ${MEM_USAGE}%" echo "Disk Usage: ${DISK_USAGE}%" # 閾値チェック if (( $(echo "$CPU_USAGE > 80" | bc -l) )); then echo "HIGH CPU USAGE ALERT!" fi EOF chmod +x ~/monitor_performance.sh
9. トラブルシューティング
9.1 よくある問題と解決方法
問題1: サーバーが起動しない
解決方法:
# ログの確認 ./sdtdserver debug # 設定ファイルの検証 ./sdtdserver validate # 依存関係の再インストール ./sdtdserver install
問題2: プレイヤーが接続できない
解決方法:
- ファイアウォール設定の確認
- ポート開放の確認
- サーバー設定の確認
# ファイアウォール設定(Ubuntu/Debian) sudo ufw allow 26900/tcp sudo ufw allow 26900/udp sudo ufw allow 8081/tcp # ファイアウォール設定(CentOS/RHEL) sudo firewall-cmd --permanent --add-port=26900/tcp sudo firewall-cmd --permanent --add-port=26900/udp sudo firewall-cmd --permanent --add-port=8081/tcp sudo firewall-cmd --reload
9.2 V2.0移行時の注意点
V1.4からV2.0への移行で発生する可能性のある問題:
- 既存のワールドファイルの互換性
- MODの対応状況
- 設定ファイルの形式変更
重要:V2.0移行前は必ずバックアップを取得してください。移行後の設定変更も段階的に行うことを推奨します。
10. セキュリティ対策
10.1 基本的なセキュリティ設定
サーバーの基本的なセキュリティ対策を実施します:
# SSH接続の設定強化 sudo nano /etc/ssh/sshd_config # 以下の設定を変更 Port 22022 # デフォルトポートから変更 PermitRootLogin no PasswordAuthentication no PubkeyAuthentication yes
10.2 自動セキュリティアップデート
セキュリティアップデートを自動化します:
# Ubuntu/Debian の場合 sudo apt install unattended-upgrades sudo dpkg-reconfigure -plow unattended-upgrades # CentOS/RHEL の場合 sudo yum install yum-cron sudo systemctl enable yum-cron sudo systemctl start yum-cron
11. 推奨サーバー業者とプラン
7DTDサーバーに最適なVPSプロバイダーをご紹介します:
11.1 高性能VPSプロバイダー
プロバイダー | 特徴 | 推奨プラン |
---|---|---|
XServer VPS | 高性能・高安定性 | 8GB以上プラン |
XServer VPS for Game | ゲーム特化型 | 7DTD専用プラン |
ConoHa VPS | コストパフォーマンス | 4GB以上プラン |
ConoHa for GAME | ゲーム専用最適化 | 7DTD専用プラン |
11.2 プロバイダー別の特徴
XServer VPS
エックスサーバーのVPSサービスは、高性能なSSD環境と24時間365日の監視体制が特徴です。LinuxGSMとの親和性も高く、安定したサーバー運用が可能です。
公式サイト:XServer VPS
XServer VPS for Game
ゲーム専用に最適化されたプランで、7DTDサーバーに必要な設定が事前に調整されています。初心者でも簡単にサーバー構築が可能です。
公式サイト:XServer VPS for Game
ConoHa VPS
GMOインターネットが提供するVPSサービスで、時間課金システムが特徴です。短期間のテスト運用にも適しています。
公式サイト:ConoHa VPS
ConoHa for GAME
ゲーム特化型のプランで、7DTDサーバーに最適化されたテンプレートが提供されています。自動バックアップ機能も充実しています。
公式サイト:ConoHa for GAME
12. 運用開始後のメンテナンス
12.1 定期メンテナンス項目
サーバーの安定運用のため、以下の定期メンテナンスを実施します:
- 週1回:ログファイルの確認と整理
- 週1回:バックアップファイルの整理
- 月1回:サーバー設定の見直し
- 月1回:パフォーマンス分析
- 四半期1回:セキュリティ設定の見直し
12.2 プレイヤーフィードバックの活用
プレイヤーからのフィードバックを活用してサーバーを改善します:
# プレイヤー統計の確認 ./sdtdserver details # サーバーログの分析 grep -i "error\|warning" ~/log/console/sdtdserver-console.log # パフォーマンス統計の確認 ./sdtdserver monitor
13. 最新アップデート情報の追跡
13.1 公式情報源の確認
7DTDの最新情報を定期的に確認する情報源:
- 公式Steam フォーラム
- 公式Discord サーバー
- LinuxGSM公式サイト
- 7DTD Japan Wiki
13.2 自動更新通知の設定
アップデート情報を自動で通知するスクリプトを作成します:
cat > ~/check_updates.sh << 'EOF' #!/bin/bash # 7DTD アップデート確認スクリプト CURRENT_VERSION=$(./sdtdserver details | grep "Server version" | cut -d' ' -f3) LATEST_VERSION=$(curl -s https://api.steampowered.com/ISteamApps/GetAppBuildInfo/v1/?appid=294420 | jq -r '.response.buildid') if [ "$CURRENT_VERSION" != "$LATEST_VERSION" ]; then echo "New version available: $LATEST_VERSION" # Slack通知 ./sdtdserver alert "New 7DTD version available: $LATEST_VERSION" fi EOF chmod +x ~/check_updates.sh
※本記事は2025年7月時点の情報に基づいて執筆されています。内容の正確性には万全を期していますが、最新情報は各公式サイトをご確認ください。
まとめ
LinuxGSMを使用した7DTDサーバーの運用は、初期設定こそ手間がかかりますが、一度設定が完了すれば非常に安定した自動運用が可能です。V2.0の新機能を活用し、プレイヤーに快適なゲーム環境を提供しましょう。
特に重要なのは、定期的なバックアップとログ監視です。これらを自動化することで、トラブル発生時の迅速な対応が可能になります。
また、適切なVPSプロバイダーの選択は、サーバーの安定性に直結します。本ガイドで紹介したプロバイダーを参考に、要件に最適なサービスを選択してください。
※本記事は2025年7月時点の情報に基づいて作成されています。
最新情報については、各公式サイトをご確認ください。