PDA

Voir la version complète : Installer HLDS sous Linux


lTommyl
23/06/2006, 01h17
Commandes Linux utiles

pwd : affiche le répertoire courant
ls : affiche tous les fichiers du répertoire courant (ls -la pour les fichiers cachés)
cd : entre dans le répertoire spécifié
cd .. : Remonte en arborescence (quitte le répertoire courant)
ps -aux : affiche les processus lancés avec numéro d'id (ps s'utilise sans le '-' (single dash) devant les options sur certaines distributions plus récentes, cela donnera donc la commande 'ps aux' )
kill -9 : kill un processus selon le numéro d'id mentionné
cp : copie d'un fichier (copier/coller)
cp -r : copie d'un répertoire
mv : déplacement d'un fichier / répertoire (couper/coller)
tar zxvf : décompression d'une archive tar
rm : efface un fichier
rm -rf : efface un répertoire
wget : permet de télécharger un fichier distant en protocole FTP ou HTTP/HTTPS.
mkdir : crée un répertoire
touch : crée un fichier totalement vierge
vi nomdufichier : édite un fichier. Tapez a dans le fichier pour écrire, puis une fois terminé échap et :wq pour enregistrer ou :q ! Pour quitter sans enregistrer.

1- Création du répertoire où l'on va installer notre serveur :

Dans ce tutorial nous allons installer notre serveur dans /usr/steam. On va donc d'abord se placer dans le répertoire /usr en tapant cette commande :

cd /usr

Maintenant que l'on se trouve dans le répertoire /usr, il nous faut créer le répertoire steam car il n'existe pas, on va donc taper cette commande :

mkdir /usr/steam

2- Création d'un autre user que le root :

Vous me direz quelle utilité de mettre un autre user que le root (admin) ? Tout simplement parcequ'on ne lance jamais un serveur avec l'user root pour des raisons de sécurité (hacking).

Il faut d'abord mettre les droits du dossier steam pour qu'un autre user puisse y accéder en tapant cette commande :

chmod -cvR 777 steam

Le dossier est prêt a accueillir un autre user. Maintenant on va taper ces commandes ci avec un exemple comme user: jeux :

/usr/sbin/adduser jeux

On va donner le répertoire /usr/steam à cet user, histoire d'anéantir tous problèmes de permissions ...

chown -cvR jeux /usr/steam

Ensuite on va se connecter en tant que max (déconnection complète et reconnection, donc) et se placer dans le répertoire steam pour la suite, en tapant ces commande:

su jeux
cd /usr/steam


3- Téléchargement de hlds_l_1120_full.bin

On va commencer par télécharger le hlds_l_1120_full.bin, en tapant cette commande :


wget http://www.cs-amx.com/bonus/hlds_l_1120_full.bin


Il va se telecharger tout seul ;)

4- Exécuter le fichier hlds_l_1120_full.bin

Une fois téléchargé, il faut le rendre exécutable en tapant cette commande:

chmod -cvR a+x hlds_l_1120_full.bin

Votre fichier est maintenant exécutable, on va pouvoir l'exécuter en tapant cette commande:

./hlds_l_1120_full.bin

Il va vous demander d'accepter et de taper la commande « yes » .


(Si vous vous mangez une erreur du genre 'Broken pipe : uncompress : command not found' [Relai brisé : commande 'uncompress' introuvable', en français] , vous devrez installer le paquet ncompress (ou uncompress, selon les distributions Linux ...) )

Maintenant que tout s'est bien déroulé, vous pouvez supprimer le fichier hlds_l_1120_full.bin, qui ne vous servira normalement plus à rien, en tapant cette commande:


rm hlds_l_1120_full.bin


A suivre seulement si vous n'avez pas exécuté le fichier dans le dossier /usr/steam, dans ce cas, passez directement à l'étape 5. Vous allez obtenir cette erreur la :


extracting /usr/steam/hlds_l_1120_full.tgz...
hlds_l_1120_full.bin : error extracting payload, No such file or directory

Vous allez devoir l'extraire dans le dossier /usr/steam en suivant ce tutorial du début et rapatrier votre fichier hlds_l_1120_full.tgz dans le répertoire voulu. Par exemple votre répertoire est /home/serveur1 la commande à taper sera :

cp -r /usr/steam/hlds_l_1120_full.tgz /home/serveur1


4- Décompresser le fichier hlds_l_1120_full.tgz :

Cette action va permettre d'extraire tous les fichiers et dossier contenant dans hlds_l_1120_full.tgz, on va taper cette commande :

Tar zxvf hlds_l_1120_full.tgz

On va se placer dans le dossier hlds pour la suite des évenements, en tapant cette commande :

cd /usr/steam/hlds_l

5- Lancement du serveur :

On va lancer notre serveur avec la commande screen. Le screen sert à rester connecté avec une console virtuelle, très utile quand on se connecte à distance avec un logiciel comme putty. Tapez cette commande :


screen -dmS serveur1 ./hlds_run -game cstrike +maxplayers 16 +map de_dust2 +port 27015


Serveur1: Le nom de ligne de commande screen que vous voulez lui attribuer
-game cstrike : lance le mod Counter-Strike
+maxplayers 16: indique le nombre de joueurs maximum sur le serveur
+map de_dust2: indique la map sur laquelle le serveur va démarrer
+port 27015 : indique le port du serveur


6- Vérifier et arrêter votre serveur :

Pour vérifier que votre commande de lancement du serveur est bien lancé parmis les processus de votre machine, tapez cette commande :

ps aux

Pour arrêter le serveur, il suffit d'obtenir le numéro du processus de la ligne du lancement du serveur de la commande screen uniquement, les deux autres lignes s'arrêteront toutes seules. Il faut taper cette commande :

kill -9 n°du processus

Pour obtenir le numéro du processus, c'est la même commande que pour vérifier le lancement du serveur, c'est à dire :

ps aux

/!\ Attention à ne pas killer n'importe quoi pour la survie de votre machine ! /!\

Note : On peut aussi utiliser directement screen pour tuer le serveur, via

screen -dr nomduscreen -X quit

Vous pouvez aussi facilement retrouver vos hlds dans un ps, via grep :

ps aux | grep hlds

7- Regarder la console du serveur avec la commande screen

Cette commande est très pratique si on veut voir si notre serveur n'a aucun problème, il suffit de taper la commande :

screen -r nomduscreen


Dans notre exemple la commande est :

screen -r serveur1

Pour quitter la consoler, appuyez sur ces touches simultanées :

ctrl + a + d (CTRL + A, puis D, si cela ne marche pas)

8- Régler les petites erreurs du début du lancements

Sachez que ces erreurs là ne sont que petites et n'empêcheront pas le serveur de tourner correctement, mais si vous êtes comme moi maniaque de la propreté, je vais vous montrer comment les résoudre.

Toutes ces erreurs sont dûes à des dossiers (en rouge) et des fichiers (en vert) inexistants. Il suffit donc de les créer vierges. On va commencer par les dossiers SAVE et platform manquants, pour cela tapez ces commandes tout en restant dans le dossier steam :


mkdir valve/SAVE
mkdir platform
mkdir platform/SAVE


Pour les dossiers c'est réglé, maintenant occupons nous des fichiers banned.cfg, listip.cfg et language.cfg. Il nous faut aller dans le répertoire cstrike en tapant cette commande:


cd /usr/steam/hlds_l/cstrike

Maintenant tapez ces commandes pour créer les fichiers manquants:

touch banned.cfg
touch listip.cfg
touch language.cfg

Relancez votre serveur et vous obtiendriez aucune erreur.

Speedy
05/10/2006, 17h23
bonjour, j'ai tester et sa marches pas !!!!!!!! a la fin quand on tape : screen -dmS serveur1 ./hlds_run -game cstrike +maxplayers 16 +map de_dust2 +port 27015

bha je fais : ps aux et sa me donne sa

speedy 31648 0.0 0.2 8208 2252 ? S 17:55 0:00 sshd: speedy@pts/0
speedy 30554 0.0 0.1 4340 1636 pts/0 Ss 17:55 0:00 -bash
speedy 30425 0.0 0.1 4180 1080 ? Ss 18:15 0:00 SCREEN -dmS serverCS ./hlds_run -game cstrike +maxplayers 16 +
speedy 15555 0.0 0.0 2480 852 pts/0 R+ 18:15 0:00 ps aux

lTommyl
05/10/2006, 22h34
supposer marcher car on voit l'application


speedy 30425 0.0 0.1 4180 1080 ? Ss 18:15 0:00 SCREEN -dmS serverCS ./hlds_run -game cstrike +maxplayers 16 +

dosem
18/11/2006, 00h46
Salut Tommy, est-il possible de mettre un serveur HLDS que j'ai cré en ligne, si oui quelle est la manipulation à effectuer et quelle est la connexion minimale recquise pour un serveur 12 slots, sys_ticrate 10000 ?
Merci d'avance ;)

dosem
18/11/2006, 12h34
Re Tommy, s'y je ne me trompe pas ton tutoriel n'est pas complet.....
il faut mettre à jour steam et le serveur cs:

dans "hlds_l" tapez : ./steam -command update -game cstrike
dans "hlds_l" tapez : ./hlds_run -game cstrike +maxplayers 12 +map de_dust2 +port 27015 -autoupdate

Voilou sa devrait marcher, chez moi sa marche en tout cas.....
ps: quelqu'un pour m'expliquer comment desactiver VAC (qui me sert à rien en lan !! ), j'ai deja essayer dans le server.cfg de mettre "sv_secure 0" et dans liblist.gam "secure 0" mais sa ne marche pas.
merci d'avance ;)

Max91
19/11/2006, 14h29
Merci lTommyl d'avoir fait un gros copier/coller sur mon tutorial, sans même me demander et même d'afficher la source ou tu la trouver ......

La vrai url du tutorial est http://www.cs-amx.com/article-installer-un-serveur-linux-avec-hlds-v1120-complet-150.htm

Il y en a d'autre des tutorial.

Pour dosem je n'ai pas fait de tuto pour les "lans" pour qu'ils soit affichés sur la liste de steam dans la partie "lan". Mais si tu est derriere un routeur suffit de débloquer les ports.

Pour le vac va dans le liblist.gam tu change secure"1" en secure "0"

dosem
19/11/2006, 14h43
Nan pour désactiver le VAC faut mettre à la fin de ta commande qui lance le serveur "-insecure"

Max91
19/11/2006, 14h55
dosem les deux solution marche, je t'ai donné celle la vu que tu cherché a modifié sur un fichier.

Il faut savoir que les valeurs sur ligne de lancement prenne le dessus sur les valeurs sur fichiers.

dosem
19/11/2006, 23h44
J'ai un sousci max, je n'arrive toujours pas à voir mon serveur dans la liste steam, pourrais-tu m'aider? Quel sont les ports à ouvrir par rapport à steam? merci d'avance ;)

J'ai déja ouvert sur mon routeur :

TCP: 27020 à 27039 et le 27015
UDP: 27000 à 27015 le 1200 et le 27015

Mais sa ne marche toujours pas..

sa y-est je viens d'ouvrir la dmz pour l'ip locale du HLDS sur ma livebox et sa marche !!! ( enfin je peux voir mon serveur sur gametiger.com (http://www.gametiger.com) mais toujours pas sur steam, qui est dû à ma pauvre connexion de 1 méga :( )

unpeupeurdurix
20/11/2006, 21h20
attention, si tu conte creer un serveur ouvert sur le net !!! connection perso = ping pourrit si tu depasse 2 ou 3 joueurs, sinon pour le voir apparaitre sur steam cela prend kke fois un petit peut de temps ( perso mon serveur a mis environ 6-8 heures avant d apparraitre sur steam.

Jaktens
22/11/2006, 10h43
Bonjour à tous !
J'ai bien suivi le tutorial mais voici mon pb :
Lorsque je tape la commande Screen .. le serveur se lance 2 sec avant de s'arreter tout seul, il n'apparait que très peu de temps ds ps aux.
Quand j'essaye de le lancer sans la commande screen le serveur s'execute très bien ..
Où se trouve le problème ?
Merci d'avance :D

Speedy
22/11/2006, 14h27
tente une mise a jour de screen ;)

andz
01/12/2006, 00h22
souci :s j'ais fait tout le tutos sa marché mais le serv était en HLGUARD normale ? impossible de joindre :s

lTommyl
18/03/2007, 21h31
il est lent a apparaitre sur steam car le ping est enorme ( pour la connection au steam master (les servers )) donc il risque d'etre dans ceux qui on le + de ping ;)

Kromen
10/11/2007, 16h52
Bonjour à tous !
J'ai bien suivi le tutorial mais voici mon pb :
Lorsque je tape la commande Screen .. le serveur se lance 2 sec avant de s'arreter tout seul, il n'apparait que très peu de temps ds ps aux.
Quand j'essaye de le lancer sans la commande screen le serveur s'execute très bien ..
Où se trouve le problème ?
Merci d'avance :D

apt-get update screen ou bien apt-get install screen

Si y a toujours un probleme tu delete le dossier bin dans ton repetoire d'install et tu re update le jeu