Налаштуйте сервер Counter-Strike: Global Offensive (CSGO) на Arch Linux

Налаштуйте сервер Counter-Strike: Global Offensive (CSGO) на Arch Linux

У цьому підручнику пояснюється, як налаштувати сервер Counter-Strike: Global Offensive на Arch Linux.

У цьому посібнику передбачається, що ви ввійшли за допомогою стандартного облікового запису користувача та маєте привілеї sudo. Ми будемо використовувати звичайний обліковий запис користувача, оскільки створювати пакети з AUR не слід з кореневого облікового запису.

Перед тим як ти почнеш

Якщо ви використовуєте 64-розрядну версію Arch Linux, дуже важливо, щоб у вас був multilibувімкнений репозиторій. Якщо його не ввімкнено, SteamCMD не може завантажити або запустити файли ігрового сервера. Щоб увімкнути multilib, просто розкоментуйте наступні рядки в /etc/pacman.conf.

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

Це не стосується 32-розрядних систем Arch Linux.

Встановіть SteamCMD

Існує пакет AUR для SteamCMD. Можливо, це найпростіший спосіб встановити SteamCMD на Arch. Хоча про це варто звернути увагу на кілька речей:

  • Усі відносні шляхи відносні до /usr/share/steamcmd.
  • Щоб оновити сам SteamCMD, ви повинні мати обліковий запис root.

Якщо ви працюєте на 64-розрядному сервері, ви повинні встановити пакет lib32-gcc-libs.

sudo pacman -Sy lib32-gcc-libs

Тепер ми повинні створити пакет. За допомогою curl завантажте tar-архів для пакета.

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

У цьому посібнику використовується окремий користувач для запуску сервера, тому ми створимо нового користувача 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 Screen або tmux . У цій статті я збираюся використовувати tmux для запуску сервера, але якщо ви віддаєте перевагу та знаєте, як користуватися екраном, не соромтеся використовувати його.

Встановіть tmux за допомогою pacman.

sudo pacman -Sy tmux

Ви можете запустити сервер за допомогою наступної команди. Ви можете змінити карту за бажанням. Будь ласка, прочитайте «Останні примітки» для отримання додаткової інформації про значення game_typeта game_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 встановлюється в області, де лише root може змінювати файли (див. примітку в розділі «Встановити SteamCMD»). Якщо вам коли-небудь знадобиться оновити сам SteamCMD, просто запустіть його від імені root.

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.


Установка 2019 Arch Linux на сервер Vultr

Установка 2019 Arch Linux на сервер Vultr

Вступ Arch Linux має менші, але все ще сильні, ніж більш популярні дистрибутиви. Його філософія зовсім інша, з перевагами

Встановлення Arch Linux на сервері Vultr

Встановлення Arch Linux на сервері Vultr

Vultr надає вам чудову функціональність, дозволяючи використовувати власне власне зображення на додаток до їхніх чудових шаблонів, що дозволяє вам запускати

Використання Devtools в Arch Linux

Використання Devtools в Arch Linux

Пакет Devtools спочатку був створений для довірених користувачів, щоб належним чином створювати пакети для офіційних сховищ. Однак його може використовувати і звичайний користувач

Використання Makepkg на Arch Linux

Використання Makepkg на Arch Linux

Якщо ви використовуєте makepkg безпосередньо, це дещо забруднює вашу систему. Необхідно встановити групу пакетів базового розробки. Таким чином, за замовчуванням потрібні лише залежності

Як встановити PostgreSQL 11.1 на Arch Linux

Як встановити PostgreSQL 11.1 на Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux (див. цю статтю). Доступ до Sudo. Команди, які потрібно виконувати як root, мають префікс # і один

Як використовувати HTTPS на веб-сервері Arch Linux

Як використовувати HTTPS на веб-сервері Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux (див. цю статтю). Запущений веб-сервер, Apache або Nginx Sudo Необхідні команди доступу t

Встановіть Arch Linux з Btrfs Snapshotting

Встановіть Arch Linux з Btrfs Snapshotting

Передмова Arch Linux — це дистрибутив загального призначення, добре відомий своєю передовою технологією та гнучкою конфігурацією. За допомогою знімків Btrfs ми можемо взяти

Створення пакетів на Arch Linux (включаючи AUR)

Створення пакетів на Arch Linux (включаючи AUR)

В Arch Linux офіційні репозиторії: core, extra та community. Ці пакунки вже скомпільовані, і вони встановлені через pacman. Для го

Налаштуйте Spigot Server на Arch Linux

Налаштуйте Spigot Server на Arch Linux

У цьому посібнику пояснюється, як налаштувати сервер Minecraft за допомогою Spigot на Arch Linux. У цьому підручнику передбачається, що ви звичайний користувач (без root) і маєте права

Як встановити Nginx 1.14 на Arch Linux

Як встановити Nginx 1.14 на Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux (див. цю статтю). Доступ до Sudo. Команди, які потрібно виконувати як root, мають префікс #. Th

Як встановити Apache 2.4 на Arch Linux

Як встановити Apache 2.4 на Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux. Додаткову інформацію див. у цьому посібнику. Доступ до Sudo. Команди, які потрібно виконувати як root ar

Як встановити Python 3.7 на веб-сервер Arch Linux

Як встановити Python 3.7 на веб-сервер Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux (див. цю статтю). Запущений веб-сервер, доступ до Apache або Nginx Sudo: потрібні команди

Як встановити Perl 5.28 на веб-сервер Arch Linux

Як встановити Perl 5.28 на веб-сервер Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux (див. цю статтю). Запущений веб-сервер, доступ до Apache або Nginx Sudo: потрібні команди

Як встановити PHP 7.3 на веб-сервер Arch Linux

Як встановити PHP 7.3 на веб-сервер Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux (див. цю статтю). Запущений веб-сервер, доступ до Apache або Nginx Sudo. Вимагають команди

Налаштуйте сервер Mumble на Arch Linux

Налаштуйте сервер Mumble на Arch Linux

У цьому посібнику пояснюється, як налаштувати сервер Mumble (Murmur) на Arch Linux. Все, що зроблено в цьому підручнику, виконується як користувач root. Установка ан

Налаштуйте сервер Counter-Strike: Global Offensive (CSGO) на Arch Linux

Налаштуйте сервер Counter-Strike: Global Offensive (CSGO) на Arch Linux

У цьому підручнику пояснюється, як налаштувати сервер Counter-Strike: Global Offensive на Arch Linux. У цьому посібнику припускається, що ви ввійшли в систему зі стандартним використанням

Налаштуйте сервер Team Fortress 2 на Arch Linux

Налаштуйте сервер Team Fortress 2 на Arch Linux

У цьому посібнику пояснюється, як налаштувати сервер Team Fortress 2 на Arch Linux. Я припускаю, що ви увійшли з обліковим записом користувача без права root і має доступ до sudo

Як встановити MariaDB 10.3 або MySQL 8.0 на Arch Linux

Як встановити MariaDB 10.3 або MySQL 8.0 на Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux (див. цю статтю). Доступ до Sudo: команди, які потрібно запускати як root, мають префікс # і один

Як встановити MongoDB 4.0 на Arch Linux

Як встановити MongoDB 4.0 на Arch Linux

Передумови Сервер Vultr з сучасною версією Arch Linux (див. цю статтю) Доступ до Sudo: команди, які потрібно запускати як root, мають префікс # і один

Повстання машин: застосування ШІ в реальному світі

Повстання машин: застосування ШІ в реальному світі

Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.

DDOS-атаки: короткий огляд

DDOS-атаки: короткий огляд

Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.

Ви коли-небудь замислювалися, як хакери заробляють гроші?

Ви коли-небудь замислювалися, як хакери заробляють гроші?

Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.

Революційні винаходи від Google, які полегшать ваше життя.

Революційні винаходи від Google, які полегшать ваше життя.

Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.

Friday Essential: Що сталося з автомобілями, керованими штучним інтелектом?

Friday Essential: Що сталося з автомобілями, керованими штучним інтелектом?

Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…

Технологічна сингулярність: віддалене майбутнє людської цивілізації?

Технологічна сингулярність: віддалене майбутнє людської цивілізації?

Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.

Еволюція зберігання даних – інфографіка

Еволюція зберігання даних – інфографіка

Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.

Функціональні можливості шарів еталонної архітектури великих даних

Функціональні можливості шарів еталонної архітектури великих даних

Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.

6 дивовижних переваг використання пристроїв розумного дому в нашому житті

6 дивовижних переваг використання пристроїв розумного дому в нашому житті

У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.

Оновлення доповнення macOS Catalina 10.15.4 спричиняє більше проблем, ніж вирішує

Оновлення доповнення macOS Catalina 10.15.4 спричиняє більше проблем, ніж вирішує

Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше