Manage Your Game Server Easy With LinuxGSM

The command line tool for quick, simple deployment and management of Linux Team Fortress 2 dedicated game servers.

  • Getting started
Team Fortress 2 Screenshot
game-server: ~$ ./tf2server install
Laptop

Linux

Runs on your favorite Linux distros. Ubuntu, CentOS and more.

Easy to use

Designed to be simple to install and use.

Linux

Runs on your favorite Linux distros. Ubuntu, CentOS and more.

Easy to use

Designed to be simple to install and use.

Team Fortress 2 Screenshot
game-server: ~$ ./tf2server install
Laptop

Many Games Supported

85 game servers are supported and counting.

Open Source

Written in BASH and using the MIT License.

Many Games Supported

170 game servers are supported and counting.

Open Source

Written in BASH and using the MIT License.

Hassle Free Dedicated Servers

Hassle Free Dedicated Servers

Game servers traditionally are not easy to manage yourself. Admins often have to spend hours just messing around trying to get their server working. LinuxGSM is designed to be a simple as possible allowing admins to spend less time on management and more time gaming.

Benefits

  • Easy to install
  • Simple CLI
  • Well documented
  • Automated
  • Regularly updated
  • Open source
  • Compatible

Features

  • Installer
  • Updater
  • Monitor
  • Alerts
  • Server Details
  • Backups
  • Console

Getting Started with tf2server

Below are the basic instructions you need to get your own Team Fortress 2 server up and running.

Team Fortress 2 Logo

Installation Guide

Don't have a server? Install tf2server on a cloud server.
Linode [recommended], Vultr, DigitalOcean, UpCloud.
Most offer free credit to get you started.

Compatibility

tf2server will run on popular distros as long as the minimum requirements are met.

Minimum Recommended Distros

  • Ubuntu Icon Ubuntu 12.04 LTS
  • Debian Icon Debian 8
  • Fedora Icon Fedora 17
  • Centos Icon CentOS 7

Other Distros

Although not tested, any distro with tmux => 1.6 and glibc => 2.15 should also be compatible with Team Fortress 2 servers.

glibc Fix

As Team Fortress 2 requires glibc => 2.15. Normally you would not be able to install tf2server with a distro running a version less than this. However LinuxGSM provides a fix that allows this to happen. More info...

Supported Architecture

  • 64-Bit distros ARE supported.
  • 32-Bit distros ARE supported.

Only 32-Bit binary is available.

SteamCMD

SteamCMD by Valve is used to install and update this game server.

SteamDB

Steam uses Appid 232250. Find out more at SteamDB.

Team Fortress 2 Pyro Red
Team Fortress 2 Blue Engineer

Dependencies

Before installing, you must ensure you have all the dependencies required to run tf2server.

Ubuntu 64-bit

Ubuntu Icon
sudo dpkg --add-architecture i386; sudo apt update; sudo apt install mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux lib32gcc1 libstdc++6 libstdc++6:i386 libcurl4-gnutls-dev:i386 libtcmalloc-minimal4:i386

Ubuntu 32-bit

Ubuntu Icon
 sudo apt install mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux libstdc++6 libcurl4-gnutls-dev libtcmalloc-minimal4

Debian 64-bit

Debian Icon
sudo dpkg --add-architecture i386; sudo apt update; sudo apt install mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux lib32gcc1 libstdc++6 libstdc++6:i386 libcurl4-gnutls-dev:i386 libtcmalloc-minimal4:i386

Debian 32-bit

Debian Icon
 sudo apt install mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux libstdc++6 libcurl4-gnutls-dev libtcmalloc-minimal4

Fedora 64-bit

Fedora Icon
dnf install mailx postfix curl wget file bzip2 gzip unzip python binutils bc jq tmux glibc.i686 libstdc++ libstdc++.i686 libcurl.i686 gperftools-libs.i686

Fedora 32-bit

Fedora Icon
dnf install mailx postfix curl wget file bzip2 gzip unzip python binutils bc jq tmux libstdc++ libcurl gperftools-libs

EPEL is required to install some dependencies needed for using LinuxGSM on CentOS.

yum install epel-release

CentOS 64-bit

CentOS Icon
yum install mailx postfix curl wget bzip2 gzip unzip python binutils bc jq tmux glibc.i686 libstdc++ libstdc++.i686 libcurl.i686 gperftools-libs.i686

CentOS 32-bit

CentOS Icon
yum install mailx postfix curl wget bzip2 gzip unzip python binutils bc jq tmux libstdc++ libcurl gperftools-libs

Install

From the command-line do the following. Ensuring you have also installed the dependencies above.

1. Create a user and login.
adduser tf2server

note: do NOT set the password as tf2server. Use a strong password.

random password:
passwd tf2server
su - tf2server
2. Download linuxgsm.sh.
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh tf2server
3. Run the installer and follow the instructions.
./tf2server install
Support this project on Patreon, Paypal and Flattr.
Further documentation and support is available.
Team Fortress 2 Spy backstabbing Heavy

Basic Usage

All Commands

A complete list of commands can be found by typing
./tf2server
Below are the most common commands available.

Running

start

./tf2server start

stop

./tf2server stop

restart

./tf2server restart

console

Console allows you to view the live console of a server as it is running and allow you to enter commands; if supported.
./tf2server console
To exit the console press CTRL+b d. Pressing CTRL+c will terminate the server.

Updating

update

Update checks for any server updates and applies them. The server will update and restart only if required.
./tf2server update
Bypass the check and go straight to SteamCMD update.
./tf2server force-update

validate

You can use the SteamCMD validate option when updating the server.
./tf2server validate

Debugging

Details

You can get all important and useful details about the server such as passwords, ports, config files etc.

./tf2server details

Debug

Use debug mode to help you if you are having issues with the server. Debug allows you to see the output of the server directly to your terminal allowing you to diagnose any problems the server might be having.

./tf2server debug

Logs

Server logs are available to monitor and diagnose your server. Script, console and game server (if available) logs are created for the server.

/home/tf2server/logs

Backup

Backup will allow you to create a complete bzip2 archive of the whole server.

./tf2server backup

Monitor

LinuxGSM can monitor the game server by checking that the proccess is running and querying it. Should the server go offline LinuxGSM can restart the server and send you an alert. You can use cronjobs to setup monitoring.

./tf2server monitor

Configure LinuxGSM

For details on how to alter LinuxGSM settings visit LinuxGSM Config Files page.

Documentation

For detailed documentation visit the LinuxGSM docs.

Support

Google

Its always a good idea to use Google before posting your questions. Many questions people ask have been asked before. So to save time always use google before posting a question. google.com

Documentation

install

Docs

The LinuxGSM docs are a useful resource for all LinuxGSM related topics.

General Support

steamcmd

Steam Group

LinuxGSM has a Steam Group where you can get general support for LinuxGSM related stuff.

Bugs/Features

github

GitHub Issues

LinuxGSM has a GitHub Issues page where you can submit any bugs and feature suggestions.

Community

Discord

Join the LinuxGSM Discord community server. Discuss your LinuxGSM setup, get help and advice.