Half-Life : Installation sous Linux

Ce guide d'installation d'un serveur dédié sous Linux a été écrit dans le but d'être accessible à tous. Il vous faut néanmoins avoir accès (pas nécessairement en root) à une machine correctement installée et configurée.

A titre indicatif, les machines que nous utilisons peuvent héberger jusqu'à quatre serveurs de 12 à 16 joueurs tout en offrant une excellente qualité de jeu. Ces machines sont équipées de Pentium IV 2.4 Ghz avec 1Go de RAM-DDR et 40 Mbps de débit disponibles ; notre préférence est allée à Debian (unstable) dans le choix de la distribution et nous utilisons les derniers noyaux de la branche 2.6.

Téléchargement des fichiers

Créez un répertoire hlds dans votre répertoire racine :

mkdir ~/hlds
cd ~/hlds

Télécharger le binaire de départ :

$ wget 'http://www.steampowered.com/download/hldsupdatetool.bin'

Le binaire n'a pas les droits en exécution après que vous l'avez téléchargé, il faut les lui donner :

$ chmod +x ./hldsupdatetool.bin

Si vous obtenez un message d'erreur vous expliquant que uncompress n'a pas été trouvée, tapez ceci en étant root :

# ln -s `which gunzip` /usr/bin/uncompress

Un exécutable « steam » a du être crée dans le répertoire courant.

Installation de HLDS

Vous pouvez maintenant installer HLDS :

$ ./steam -command update -game valve -dir .
 Checking bootstrapper version ...
Updating Installation
No installation record found at .
Checking/Installing 'Linux Server Engine' version xx
Downloading: .core_i386.so
Downloading: .engine_amd.so
...
Downloading: .valvevalvecomm.lst
Downloading: .valveviolence.cfg
Downloading: .valvexeno.wad

HLDS installation up to date

Voici la signification des options que vous pouvez passer à ./steam lorsque vous faites une mise à jour :

  • -game indique à steam quel mod vous voulez mettre à jour. En l'occurence valve correspond au coeur du serveur.
  • -dir vous permet de spécifier l'emplacement de votre installation.

Vous avez maintenant un serveur Half-Life prêt à fonctionner. Aucun mod n'est installé, il va donc falloir y remédier.

Installation d'un mod

Les mods officiels s'installent directement par steam, pour les autres, il faut tout faire a la main.

Mod officiel

Imaginons que vous vouliez installer Day of Defeat (par exemple), voici comment procéder :

$ cd ~/hlds
$ ./steam -command update -game dod -dir .
Checking bootstrapper version ...
Updating Installation
No installation record found at .
Checking/Installing 'Day of Defeat Base Content' version xx
Downloading: .dodcl_dllsclient.dll
Downloading: .doddllsdod.dll
...
Downloading: .dodtitles.txt
Downloading: .dodvalve.inf

Checking/Installing 'Linux Server Engine' version 15

Checking/Installing 'Half-Life Base Content' version 7

HLDS installation up to date

Voici la liste des mods que vous pouvez utiliser avec l'option -game :

  • valve
  • cstrike
  • tfc
  • dod
  • dmc
  • czero
  • ricochet
  • counter-strike source
Remarque

Pour CS:Source, vous devez choisir un répertoire différent du répertoire courant.

 

Mod non-officiel

Procurez vous l'archive compressée fournie sur le site officiel du mod. En général ces fichiers ont pour extension .tar.gz ou .tar.bz2. Nous allons utilisez The Specialists comme exemple.

On récupère l'archive compressée (on appelle ça une tarball) :

$ cd ~/hlds
$ wget 'ftp://ftp.4u-servers.co.uk/pub/games/half-life/specialists/server/
linux/ts-2.1-linux-full.tgz'

On décompresse l'archive :

$ tar xvzf ts-2.1-linux-full.tgz

Sous linux et plus généralement les systèmes UNIX, les extensions des fichiers ne déterminent par leur type, elles ne sont là que pour faciliter la vie des utilisateurs, donc .tgz équivaut à .tar.gz. Si on avait téléchargé un .tar.bz2, il aurait fallu taper :

$ tar xvjf ts-2.1-linux-full.tar.bz2

The Specialists est maintenant installé.

Lancement d'un serveur

Dans cette section, nous lancerons un serveur Counter-Strike. La procédure est la même quels que soient les mods :

$ cd ~/hlds
$ ./hlds_run -game cstrike +maxplayers 16 +map de_dust2 +port 27016

Pour administrer confortablement votre serveur, je vous conseille d'utiliser screen qui est un véritable gestionnaire de fenêtres en mode texte :

$ screen -A -m -d -S hlds_cs ./hlds_run -game cstrike +maxplayers 16
+map de_inferno +port 27016

Vous venez de créer une session dont le nom est hlds_cs, elle est pour l'instant détachée de votre terminal ce qui explique que rien ne se passe après avoir lancé la commande. Pour surveiller votre serveur, il vous faut rattacher la session :

$ screen -r hlds_ts

Vous pouvez maintenant envoyer des commandes à votre serveur. Pour détacher la session et revenir dans votre terminal, tapez C-a d (Ctrl + a puis d). Notez bien que si vous déconnectez, la session reste active et donc votre serveur continue de tourner.

Configuration des serveurs

Nous espérons que ce dossier vous aura été utile. N'hésitez pas à nous faire part de vos remarques et/ou corrections.

Commentaires les messages de la communauté

Soyez le premier à laisser un commentaire

Laissez un commentairedonnez vous aussi votre avis

Connectez vous pour pouvoir donner vos avis : identification ou inscription