Manage Your Game Server Easy With LinuxGSM

The command line tool for quick, simple deployment and management of Linux Half-Life 2: Deathmatch dedicated game servers.

  • Getting started
Half-Life 2: Deathmatch Screenshot
game-server: ~$ ./hl2dmserver 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.

Half-Life 2: Deathmatch Screenshot
game-server: ~$ ./hl2dmserver 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

Traditionally game servers 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 as 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 hl2dmserver

Below are the basic instructions you need to get your own Half-Life 2: Deathmatch server up and running.

Half-Life 2: Deathmatch Logo

Installation Guide

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

Compatibility

hl2dmserver 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 6
  • Fedora Icon Fedora 17
  • Centos Icon CentOS 6

Other Distros

Although not tested, any distro with tmux => 1.6 and glibc => 2.3.6 should also be compatible with Half-Life 2: Deathmatch servers.

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 232370. Find out more at SteamDB.

Vortigaunt
Half Life 2 Logo

Dependencies

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

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

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

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

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

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

Fedora 32-bit

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

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

CentOS 32-bit

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

Install

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

1. Create a user and login.
adduser hl2dmserver

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

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

Basic Usage

Half Life 2 Zombie

All Commands

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

Running

start

./hl2dmserver start

stop

./hl2dmserver stop

restart

./hl2dmserver 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.
./hl2dmserver 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.
./hl2dmserver update
Bypass the check and go straight to SteamCMD update.
./hl2dmserver force-update

validate

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

Debugging

Details

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

./hl2dmserver 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.

./hl2dmserver 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/hl2dmserver/logs

Backup

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

./hl2dmserver 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.

./hl2dmserver 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.