Compatibility
Half-Life 2: Deathmatch will run on popular distros as long as the minimum requirements are met.
Server
For consistant uptime it is recomended you host a server in a data center. If you dont already have a server, you can rent a dedicated or vitual server from one of our sponsored providers, OVHCloud, Linode, Vultr.
Minimum Recommended Distros
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. For distros not listed above LinuxGSM does not check dependencies and should be manually checked.Game Server Binary
Only 32-Bit game server binary is available.
SteamCMD
SteamCMD by Valve is used to install and update this game server.
SteamDB
Steam uses appid 232370.
Update history is available from SteamDB.
Install Dependencies Using LinuxGSM
LinuxGSM will attempt to install dependencies either by having the hl2dmserver user account with sudo access or running the installer as root.user with sudo access
During the installation if the game server user has sudo permissions LinuxGSM will attempt to install any missing dependencies itself.root user
if hl2dmserver is already installed run./hl2dmserver install
as root and LinuxGSM will automatically install missing dependencies.
Install
From the command-line do the following. Ensuring you have also installed the required dependencies.
1. Create a user and login.adduser hl2dmserver
For security best practice, ensure you set a strong password. Random password:
su - hl2dmserver2. Download linuxgsm.sh.
curl -Lo linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh hl2dmserver3. Run the installer following the on-screen instructions.
./hl2dmserver install
Basic Usage
All Commands
A complete list of commands can be found by typing../hl2dmserverBelow 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 updateBypass 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 tar 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.
Cronjobs
To automate LinuxGSM you can set scheduled tasks using cronjobs, to run any command at any given time. You can edit the crontab using the following.
crontab -e
Below are the recommended cron tasks.
*/5 * * * * /home/hl2dmserver/hl2dmserver monitor > /dev/null 2>&1 */30 * * * * /home/hl2dmserver/hl2dmserver update > /dev/null 2>&1 0 0 * * 0 /home/hl2dmserver/hl2dmserver update-lgsm > /dev/null 2>&1
Configure LinuxGSM
For details on how to alter LinuxGSM settings visit LinuxGSM Config Files page.
Documentation
For detailed documentation visit the LinuxGSM docs.