カウンターストライクのセットアップ:Arch LinuxでのGlobal Offensive(CSGO)サーバー

このチュートリアルでは、Arch LinuxでCounter-Strike:Global Offensiveサーバーをセットアップする方法について説明します。

このチュートリアルは、標準ユーザーアカウントでログインし、sudo権限を持っていることを前提としています。AURでのパッケージのビルドはrootアカウントから行われるべきではないため、通常のユーザーアカウントを使用します。

あなたが始める前に

64ビットバージョンのArch Linuxをmultilib使用している場合は、リポジトリを有効にすることが非常に重要です。有効になっていない場合、SteamCMDはゲームサーバーファイルをダウンロードまたは実行できません。multilibを有効にするには、次の行のコメントを外します/etc/pacman.conf

[multilib]
Include = /etc/pacman.d/mirrorlist

これは32ビットArch Linuxシステムには適用されません。

SteamCMDをインストールする

SteamCMD用のAURパッケージがあります。それはおそらくArchにSteamCMDをインストールする最も簡単な方法です。ただし、注意すべき点がいくつかあります。

  • すべての相対パスはを基準にしてい/usr/share/steamcmdます。
  • SteamCMD自体をアップグレードするには、rootアカウントにいる必要があります。

64ビットサーバーを使用している場合は、パッケージをインストールする必要がありますlib32-gcc-libs

sudo pacman -Sy lib32-gcc-libs

次に、パッケージをビルドする必要があります。curlを使用して、パッケージのtarballをダウンロードします。

curl -O https://aur.archlinux.org/packages/st/steamcmd/steamcmd.tar.gz

ダウンロードが完了したら、抽出して、作成したディレクトリに移動します。

tar -xvzf steamcmd.tar.gz
cd steamcmd

ここで、makepkgを使用してパッケージをビルドします。

makepkg -ci

-iフラグをmakepkgコマンドに渡さなかった場合は、次のコマンドを使用してインストールします。

sudo pacman -U *.pkg.tar.xz

これでSteamCMDがインストールされ、Counter-Strike:Global Offensiveサーバーをダウンロードする準備が整いました。

Counter-Strike:Global Offensive Serverをインストールする

このガイドでは、別のユーザーを使用してサーバーを実行するため、に独自のホームフォルダーを持つ新しいcsgoユーザーとグループを作成します/var/lib

sudo groupadd csgo
sudo mkdir /var/lib/csgo
sudo useradd -d /var/lib/csgo -g csgo -s /bin/bash csgo
sudo chown csgo.csgo -R /var/lib/csgo

サーバーをインストールします。

sudo -u csgo steamcmd +login anonymous +force_install_dir ~csgo/server +app_update 740 validate +quit

ダウンロードが完了すると、サーバーがインストールされます。

構成

サーバーを実行することはできますが、サーバーが一般的すぎないように構成を行う必要があります。設定を入れるメインファイルはserver.cfgファイルです。以下は非常に基本的なserver.cfgファイルです。

ファイルを開く/作成するには、お気に入りのエディターを使用します。この例ではvimを使用しています。

sudo -u csgo vim ~csgo/server/csgo/cfg/server.cfg

以下を追加します。その他の設定は、Valve Developer Wikiにあります。必要に応じて、いくつかの設定を変更してください。

hostname "Server Name"
rcon_password "password"
sv_password ""
sv_contact "[email protected]"
sv_tags ""
sv_region "255"
sv_lan "0"

exec banned_user.cfg
exec banned_ip.cfg
writeid
writeip

サーバーを実行する

サーバーを無人で実行するには、GNU Screentmuxなどのマルチプレクサが必要です。この記事では、tmuxを使用してサーバーを実行しますが、screenの使用方法を好み、その方法を知っている場合は、気軽に使用してください。

pacmanを使用してtmuxをインストールします。

sudo pacman -Sy tmux

次のコマンドでサーバーを起動できます。必要に応じてマップを変更できます。game_typegame_mode値の詳細については、「最終メモ」をお読みください。この例は、クラシックカジュアルサーバー用です。

sudo -u csgo tmux new-session -d -s csgo-console -d 'cd /var/lib/csgo/server/; ./srcds_run -console -game csgo -usercon +game_type 0 +game_mode 0 +mapgroup mg_active +map de_dust2'

コンソールに接続する必要がある場合は、以下を実行します。

sudo -u csgo tmux attach -t csgo-console

CTRL + Bを入力してからこれらのキーを放し、Dを押すことにより、サーバーコンソールを終了できます。

systemdで実行する

systemdでサーバーを実行すると、多くの理由で便利です。主なものは、VPSの起動時に起動させることができるということです。これには、スクリプトとsystemdユニットを記述する必要があります。これは良いアイデアですが、オプションです

最初に書くのは開始スクリプトです。スクリプトを作成するには、お気に入りのエディターを使用します。ここではvimを使用していますが、nanoなどの任意のテキストエディターを使用できます。

sudo -u csgo vim ~csgo/server/csgo.sh

以下を追加し、ゲームモードとタイプがあるため、必ず開始コマンドの行を確認してください。

#!/bin/sh

USER=$2

if [ -z $2 ]; then
  USER="csgo"
fi

case "$1" in
  start)
    sudo -u $ tmux new-session -d -s csgo-console -d 'cd /var/lib/csgo/server/; /var/lib/csgo/server/srcds_run -console -game csgo -usercon +game_type 0 +game_mode 0 +mapgroup mg_active +map de_dust2'
    ;;

  stop)
    sudo -u $ tmux send-keys -t csgo-console 'say Server shutting down in 10 seconds!' C-m
    sleep 10
    sudo -u $ tmux send-keys -t csgo-console 'quit' C-m
    sleep 5
    ;;

  *)
    echo "Usage: $0  user"
esac

exit 0

次に、systemdユニットを作成する必要があります。

sudo vim /usr/lib/systemd/system/csgo.service

以下を追加します。

[Unit]
Description=Counter-Strike: Global Offensive Server (SRCDS)
After=local-fs.target network.target

[Service]
ExecStart=/var/lib/csgo/server/csgo.sh start
ExecStop=/var/lib/csgo/server/csgo.sh stop
Type=forking

[Install]
WantedBy=multi-user.target

次に、csgo.shファイルが実行可能であることを確認します。

sudo chmod +x ~csgo/server/csgo.sh

その後、を使用systemctlしてサーバーを起動および停止できます。また、それを使用して起動時に起動させることもできます。

始めること:

sudo systemctl start csgo.service

止まる:

sudo systemctl stop csgo.service

再起動します:

sudo systemctl restart csgo.service

起動時に有効にするには:

sudo systemctl enable csgo.service

起動時に無効にするには:

sudo systemctl disable csgo.service

systemdはサーバーの起動と停止を処理しますが、次のコマンドでコンソールにアクセスできます。

sudo -u csgo tmux attach -t csgo-console

最終メモ

SteamCMDは、ルートのみがファイルを変更できる領域にインストールされます(「SteamCMDのインストール」セクションの注記を参照)。SteamCMD自体をアップグレードする必要がある場合は、ルートとして実行してください。

sudo steamcmd +quit

サーバーを更新する必要がある場合。最初にサーバーを停止してから、SteamCMDを使用して更新します(同じコマンドを使用してインストールします)。

sudo systemctl stop csgo.service
sudo -u csgo steamcmd +login anonymous +force_install_dir ~csgo/server +app_update 740 validate +quit
sudo systemctl start csgo.service

開始コマンドのゲームモードとゲームタイプは、必要なサーバーの種類に応じて重要です。以下は、可能な値の簡単な表です。

      Game Mode      | game_type | game_mode
Classic Casual       | 0         | 0
Classic Competitive  | 0         | 1
Arms Race            | 1         | 0
Demolition           | 1         | 1
Deathmatch           | 1         | 2

このチュートリアルでは説明されていない構成トピックが他にもたくさんあります。詳細については、Valve Developer Wikiを参照してください。



Arch Linux WebサーバーにPerl 5.28をインストールする方法

Arch Linux WebサーバーにPerl 5.28をインストールする方法

前提条件最新のArch Linuxを実行するVultrサーバー(この記事を参照)。実行中のWebサーバー(ApacheまたはNginx Sudoアクセス):コマンドが必要

Arch LinuxにPostgreSQL 11.1をインストールする方法

Arch LinuxにPostgreSQL 11.1をインストールする方法

前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照してください。)Sudoアクセス。rootとして実行する必要のあるコマンドには、先頭に#が付いています。

Arch LinuxでMumble Serverをセットアップする

Arch LinuxでMumble Serverをセットアップする

このチュートリアルでは、Arch LinuxでMumbleサーバー(Murmur)をセットアップする方法について説明します。このチュートリアルで行われることはすべて、rootユーザーとして行われます。インストールと

Arch LinuxでのDevtoolsの使用

Arch LinuxでのDevtoolsの使用

Devtoolsパッケージは、もともとは信頼されたユーザーが公式リポジトリ用のパッケージを適切に作成するために作成されました。ただし、一般ユーザーでも使用可能

Arch LinuxでTeam Fortress 2サーバーをセットアップする

Arch LinuxでTeam Fortress 2サーバーをセットアップする

このチュートリアルでは、Arch LinuxでTeam Fortress 2サーバーをセットアップする方法について説明します。sudoアクセスを持つ非rootユーザーアカウントでログインしていると思います

Arch LinuxでMakepkgを使用する

Arch LinuxでMakepkgを使用する

makepkgを直接使用すると、システムを多少汚染します。base-develパッケージグループをインストールする必要があります。このように、デフォルトでは、依存関係はonlが必要です

Arch LinuxウェブサーバーにPython 3.7をインストールする方法

Arch LinuxウェブサーバーにPython 3.7をインストールする方法

前提条件最新のArch Linuxを実行するVultrサーバー(この記事を参照)。実行中のWebサーバー(ApacheまたはNginx Sudoアクセス):コマンドが必要

Arch LinuxでのSpigotサーバーのセットアップ

Arch LinuxでのSpigotサーバーのセットアップ

このチュートリアルでは、Arch LinuxでSpigotを使用してMinecraftサーバーをセットアップする方法について説明します。このチュートリアルでは、あなたが通常のユーザー(root以外)であり、

Arch LinuxにMariaDB 10.3またはMySQL 8.0をインストールする方法

Arch LinuxにMariaDB 10.3またはMySQL 8.0をインストールする方法

前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照してください。)Sudoアクセス:rootとして実行する必要のあるコマンドには、先頭に#が付いています。

Arch LinuxにMongoDB 4.0をインストールする方法

Arch LinuxにMongoDB 4.0をインストールする方法

前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照)Sudoアクセス:rootとして実行する必要のあるコマンドには、先頭に#が付いています。

VultrサーバーへのArch Linuxのインストール

VultrサーバーへのArch Linuxのインストール

Vultrは、実行できるようにする優れたテンプレートに加えて、独自のカスタムイメージを使用できるようにする素晴らしい機能を提供します

BtrfsスナップショットでArch Linuxをインストールする

BtrfsスナップショットでArch Linuxをインストールする

序文Arch Linuxは、最先端のテクノロジーと柔軟な構成で有名な汎用ディストリビューションです。Btrfsスナップショットを使用すると、

Arch LinuxウェブサーバーにPHP 7.3をインストールする方法

Arch LinuxウェブサーバーにPHP 7.3をインストールする方法

前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照)。ApacheまたはNginx Sudoアクセスのいずれかを実行しているWebサーバー。コマンドが必要

Arch LinuxにNginx 1.14をインストールする方法

Arch LinuxにNginx 1.14をインストールする方法

前提条件最新のArch Linuxを実行しているVultrサーバー(この記事を参照してください。)Sudoアクセス。rootとして実行する必要のあるコマンドには、先頭に#が付いています。Th

Arch Linuxでのパッケージのビルド(AURを含む)

Arch Linuxでのパッケージのビルド(AURを含む)

Arch Linuxでは、公式リポジトリはコア、エクストラ、コミュニティです。これらのパッケージはすでにコンパイルされており、pacmanによってインストールされます。前方へ

Arch LinuxにApache 2.4をインストールする方法

Arch LinuxにApache 2.4をインストールする方法

前提条件最新のArch Linuxを実行しているVultrサーバー。詳細については、このガイドを参照してください。Sudoアクセス。root arとして実行する必要があるコマンド

Arch LinuxウェブサーバーでHTTPSを使用する方法

Arch LinuxウェブサーバーでHTTPSを使用する方法

前提条件最新のArch Linuxを実行するVultrサーバー(この記事を参照)。実行中のWebサーバー(ApacheまたはNginx Sudoアクセス)必要なコマンドt

Vultrサーバーへの2019 Arch Linuxのインストール

Vultrサーバーへの2019 Arch Linuxのインストール

はじめにArch Linuxは、人気のあるディストリビューションよりも小さいながらも強力です。その哲学はかなり異なり、利点と

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください

原子力が必ずしも悪ではないことを証明する5つの例

原子力が必ずしも悪ではないことを証明する5つの例

原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true

ビッグデータは人工知能をどのように変えていますか?

ビッグデータは人工知能をどのように変えていますか?

ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー

DebianでNFS共有をセットアップする

DebianでNFS共有をセットアップする

NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します

Fedora 28にMatomo Analyticsをインストールする方法

Fedora 28にMatomo Analyticsをインストールする方法

別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、