Configurar un servidor Team Fortress 2 en Arch Linux

Este tutorial explica cómo configurar un servidor Team Fortress 2 en Arch Linux. Supongo que ha iniciado sesión con una cuenta de usuario no root que tiene acceso a sudo. Este tutorial utiliza AUR para compilar paquetes, y esa operación no debe realizarse desde la cuenta raíz.

Antes de que empieces

Es muy importante que tenga el multilibrepositorio habilitado si y solo si está en un servidor de 64 bits (amd64). Si no está habilitado, SteamCMD no puede ejecutarse y ni siquiera puede descargar los archivos del servidor. Para hacer esto, debe descomentar las siguientes líneas /etc/pacman.conf.

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

Si está en el arco de 32 bits (i686), puede ignorar esto con seguridad.

Instalar SteamCMD

Hay un paquete AUR para SteamCMD y es una de las formas más fáciles de instalar SteamCMD en Arch. Sin embargo, hay un par de cosas extrañas al respecto:

  • Todos los caminos relativos son relativos a /usr/share/steamcmd.
  • Para actualizar SteamCMD, debe ser root.

Si está en un servidor de 64 bits, debe instalar el paquete lib32-gcc-libs.

sudo pacman -Sy lib32-gcc-libs

Ahora debemos construir el paquete. Usando curl, descargue el tarball para el paquete.

curl -O http://media.steampowered.com/installer/steamcmd_linux.tar.gz

Una vez que finalice la descarga, extraiga y cambie al directorio creado.

tar -xvzf steamcmd.tar.gz
cd steamcmd

Ahora, usando makepkg, compila el paquete.

makepkg -ci

Si no pasó la -ibandera al comando makepkg, use pacman para instalarlo.

sudo pacman -U *.pkg.tar.xz

Ahora tiene SteamCMD instalado y listo para descargar el servidor Team Fortress 2.

Instalar el servidor de Team Fortress 2

Esta guía utiliza un usuario separado para ejecutar el servidor, por lo que crearemos un nuevo usuario y grupo tf2 con su propia carpeta de inicio /var/lib.

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

Ahora para instalar el servidor.

sudo -u tf2 steamcmd +login anonymous +force_install_dir ~tf2/server +app_update 232250 validate +quit

Una vez que finaliza la descarga, tienes el servidor instalado.

Configurando

Aunque puede ejecutar el servidor, se debe realizar alguna configuración para que el servidor no sea demasiado genérico. El archivo principal en el que ponemos la configuración es el server.cfgarchivo. Debajo hay un server.cfgarchivo muy básico .

Para abrir / crear el archivo, use su editor favorito. Aquí se usa vim, pero puede usar cualquier editor de texto como nano.

sudo -u tf2 vim ~tf2/server/tf/cfg/server.cfg

Agrega lo siguiente. Se pueden encontrar más configuraciones en la wiki del Team Fortress 2 y en la página del desarrollador de Valve. Asegúrese de cambiar algunas de las configuraciones para satisfacer sus necesidades.

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

Ejecutando su servidor

Se sabe que necesita un multiplexor como GNU Screen o tmux para ejecutar su servidor sin supervisión. Aquí vamos a usar tmux para ejecutar el servidor, pero si lo prefiere y sabe cómo usar la pantalla, siéntase libre de usarlo.

Instale tmux usando pacman.

sudo pacman -Sy tmux

Puede iniciar el servidor con el siguiente comando. Puede cambiar el mapa y maxplayers si lo desea.

sudo -u tf2 tmux new-session -d -s tf2-console -d '~tf2/server/srcds_run -console -game tf +map cp_dustbowl +maxplayers 24'

Si alguna vez necesita conectarse a la consola, ejecute lo siguiente.

sudo -u tf2 tmux attach -t tf2-console

Puede dejar la consola del servidor escribiendo CTRL + B luego liberar esas llaves y luego presionando D .

Ejecutando con systemd

Ejecutar el servidor con systemd es conveniente por muchas razones. La principal es que puede hacer que se inicie cuando se inicia el VPS. Esto requiere que se escriba un script y una unidad systemd. Aunque es una buena idea, es opcional .

Lo primero que debes escribir es el script de inicio. Para crear el script, use su editor favorito. Aquí se usa vim, pero puede usar cualquier editor de texto como nano.

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

Agrega lo siguiente.

#!/bin/sh

USER=$2

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

case "$1" in
  start)
    sudo -u $ tmux new-session -d -s tf2-console -d '/var/lib/tf2/server/srcds_run -console -game tf +map cp_dustbowl +maxplayers 24'
    ;;

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

  *)
    echo "Usage: $0  user"
esac

exit 0

Ahora necesita hacer la unidad systemd. Para crear la unidad, use su editor favorito. Aquí se usa vim, pero puede usar cualquier editor de texto como nano.

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

Agrega lo siguiente.

[Unit]
Description=Team Fortress 2 Server (SRCDS)
After=local-fs.target network.target

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

[Install]
WantedBy=multi-user.target

Ahora asegúrese de que el tf2.sharchivo sea ejecutable.

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

Después de todo eso, puede usar systemctlpara iniciar y detener el servidor. También puede usarlo para que comience en el arranque.

Para comenzar:

sudo systemctl start tf2.service

Para detener:

sudo systemctl stop tf2.service

Para reiniciar:

sudo systemctl restart tf2.service

Para habilitar en el arranque:

sudo systemctl enable tf2.service

Para deshabilitar en el arranque:

sudo systemctl disable tf2.service

Aunque systemd se encarga de iniciar y detener el servidor, aún puede acceder a la consola con el siguiente comando:

sudo -u tf2 tmux attach -t tf2-console

Notas finales

SteamCMD se instala en un área donde solo la raíz puede cambiar los archivos (ver nota en "Instalar SteamCMD"). Si alguna vez necesita actualizar SteamCMD, simplemente ejecútelo como root.

sudo steamcmd +quit

Si necesita actualizar el servidor. Primero detenga el servidor y luego use SteamCMD para actualizar (usando el mismo comando para instalar).

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

Hay muchos más temas de configuración que no están cubiertos en este tutorial. Si necesita más información, consulte la Wiki de Team Fortress 2 y la Wiki de Valve Developer.



Leave a Comment

Configurar Mumble Server en Arch Linux

Configurar Mumble Server en Arch Linux

Este tutorial explica cómo configurar un servidor Mumble (Murmur) en Arch Linux. Todo lo que se hace en este tutorial se hace como usuario root. Instalación un

How to Install MariaDB 10.3 or MySQL 8.0 on Arch Linux

How to Install MariaDB 10.3 or MySQL 8.0 on Arch Linux

Prerequisites A Vultr server running up to date Arch Linux (see this article.) Sudo access: Commands required to be ran as root are prefixed by #, and one

Creación de paquetes en Arch Linux (incluido el AUR)

Creación de paquetes en Arch Linux (incluido el AUR)

En Arch Linux, los repositorios oficiales son: core, extra y community. Estos paquetes ya están compilados y se instalan a través de pacman. Para th

How To Install Nginx 1.14 On Arch Linux

How To Install Nginx 1.14 On Arch Linux

Prerequisites A Vultr server running up to date Arch Linux (see this article.) Sudo access. Commands required to be ran as root are prefixed by #. Th

Configurar un servidor Counter-Strike: Global Offensive (CSGO) en Arch Linux

Configurar un servidor Counter-Strike: Global Offensive (CSGO) en Arch Linux

Este tutorial explica cómo configurar un servidor Counter-Strike: Global Offensive en Arch Linux. Este tutorial asume que ha iniciado sesión con un uso estándar

How to Install Apache 2.4 on Arch Linux

How to Install Apache 2.4 on Arch Linux

Prerequisites A Vultr server running up to date Arch Linux. See this guide for more information. Sudo access. Commands required to be run as root ar

Instalación de Arch Linux en un servidor Vultr

Instalación de Arch Linux en un servidor Vultr

Vultr le proporciona la increíble funcionalidad de permitirle usar su propia imagen personalizada además de sus excelentes plantillas, lo que le permite ejecutar

Instale Arch Linux con Btrfs Snapshotting

Instale Arch Linux con Btrfs Snapshotting

Prefacio Arch Linux es una distribución de propósito general conocida por su tecnología de punta y configuración flexible. Con las instantáneas de Btrfs, podemos tomar

How to Install MongoDB 4.0 on Arch Linux

How to Install MongoDB 4.0 on Arch Linux

Prerequisites A Vultr server running up to date Arch Linux (see this article) Sudo access: Commands required to be ran as root are prefixed by #, and one

How to Install PHP 7.3 on an Arch Linux Webserver

How to Install PHP 7.3 on an Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access. Commands require

How To Install PostgreSQL 11.1 On Arch Linux

How To Install PostgreSQL 11.1 On Arch Linux

Prerequisites A Vultr server running up to date Arch Linux (see this article.) Sudo access. Commands required to be ran as root are prefixed by #, and one

How to Use HTTPS on Arch Linux Webserver

How to Use HTTPS on Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access Commands required t

Configurar el servidor Spigot en Arch Linux

Configurar el servidor Spigot en Arch Linux

Este tutorial explica cómo configurar un servidor de Minecraft usando Spigot en Arch Linux. Este tutorial asume que usted es un usuario normal (no root) y tiene

How To Install Python 3.7 On An Arch Linux Webserver

How To Install Python 3.7 On An Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access: Commands require

Installing 2019 Arch Linux on a Vultr Server

Installing 2019 Arch Linux on a Vultr Server

Introduction Arch Linux has a smaller, but still strong, following than more popular distributions. Its philosophy is quite different, with advantages an

Usando Devtools en Arch Linux

Usando Devtools en Arch Linux

El paquete Devtools se creó originalmente para usuarios de confianza para crear correctamente paquetes para los repositorios oficiales. Sin embargo, puede ser utilizado por usuarios comunes

Usando Makepkg en Arch Linux

Usando Makepkg en Arch Linux

Si usa makepkg directamente, contamina un poco su sistema. El grupo de paquetes base-devel debe estar instalado. De esta manera, por defecto, las dependencias se necesitan solo

How to Install Perl 5.28 on an Arch Linux Webserver

How to Install Perl 5.28 on an Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access: Commands require

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

Los ataques de ransomware van en aumento, pero ¿puede la IA ayudar a lidiar con el último virus informático? ¿Es la IA la respuesta? Lea aquí, sepa que la IA es una bendición o una perdición

ReactOS: ¿Es este el futuro de Windows?

ReactOS: ¿Es este el futuro de Windows?

ReactOS, un sistema operativo de código abierto y gratuito, está aquí con la última versión. ¿Puede satisfacer las necesidades de los usuarios de Windows de hoy en día y acabar con Microsoft? Averigüemos más sobre este estilo antiguo, pero una experiencia de sistema operativo más nueva.

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Whatsapp finalmente lanzó la aplicación de escritorio para usuarios de Mac y Windows. Ahora puede acceder a Whatsapp desde Windows o Mac fácilmente. Disponible para Windows 8+ y Mac OS 10.9+

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

Lea esto para saber cómo la Inteligencia Artificial se está volviendo popular entre las empresas de pequeña escala y cómo está aumentando las probabilidades de hacerlas crecer y dar ventaja a sus competidores.

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

Recientemente, Apple lanzó macOS Catalina 10.15.4, una actualización complementaria para solucionar problemas, pero parece que la actualización está causando más problemas que conducen al bloqueo de las máquinas Mac. Lee este artículo para obtener más información

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

¿Qué es un sistema de archivos de diario y cómo funciona?

¿Qué es un sistema de archivos de diario y cómo funciona?

Nuestra computadora almacena todos los datos de una manera organizada conocida como sistema de archivos de diario. Es un método eficiente que permite a la computadora buscar y mostrar archivos tan pronto como presiona buscar.

Singularidad tecnológica: ¿un futuro lejano de la civilización humana?

Singularidad tecnológica: ¿un futuro lejano de la civilización humana?

A medida que la ciencia evoluciona a un ritmo rápido, asumiendo muchos de nuestros esfuerzos, también aumentan los riesgos de someternos a una singularidad inexplicable. Lea, lo que la singularidad podría significar para nosotros.

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

Una mirada a 26 técnicas analíticas de Big Data: Parte 1

El impacto de la inteligencia artificial en la atención médica 2021

El impacto de la inteligencia artificial en la atención médica 2021

La IA en la salud ha dado grandes pasos desde las últimas décadas. Por tanto, el futuro de la IA en el sector sanitario sigue creciendo día a día.