Image

JSI to DEDI est un panel de gestion de serveurs de jeux & web sur votre dédié.

[Debian 10/11] Script reboot serveur de jeux

Tout ce qui concerne les serveurs dédiés c'est ici.
Répondre
Avatar du membre
Papy___
Admin
Admin
Messages : 185
Enregistré le : 30 nov. 2021, 16:12
Localisation : Paris
Contact :

Script reboot serveur de jeux

Message par Papy___ »

script_restart_serveur.jpg



Au travers de ce tutoriel nous allons voir comment faire pour démarrer, arrêter, redémarrer votre serveur de jeux, mais aussi faire en sorte que lorsque votre serveur dédié est redémarré suite à une mise à jour ou autre, que votre serveur de jeux redémarre automatiquement. Nous allons voir également comment reboot votre serveur de jeux tous les matins à une heure précise.


Configuration du script

Pour ce tutoriel je vais prendre des exemples.
Je pars du principe que le serveur de jeux est installé ici
/home/papyinfo/css/onlyd2
et que la ligne de lancement du serveur est
su papyinfo -c "cd /home/papyinfo/css/onlyd2 screen -dmS onlyd2 ./srcds_run -game cstrike +maxplayers 24 +map de_dust2 -port 27015 -tickrate 66"
donc n'oubliez pas de modifier en rapport avec votre installation.

Nous commençons par créer le script.
Pour cela vous tapez ceci
nano /etc/init.d/onlyd2.sh
Je nomme mon fichier onlyd2 pour rester en corrélation avec le type de serveur que j'ai créé. aissez bien l'extension .sh à la fin

et dans le fichier vous mettez ceci
#!/bin/sh

### BEGIN INIT INFO
# Provides: onlyd2.sh
# Required-Start: $network $local_fs $remote_fs dbus
# Required-Stop: $network $local_fs $remote_fs dbus
# Should-Start: $mysql
# Should-Stop: $mysql
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: serveur only D2
# Description: script start - stop et restart serveur only D2.
### END INIT INFO

#############################################
## Début des variables ##
#############################################

# Nom de l'utilisateur
SRCDS_USER="papyinfo"

# Nom du screen
SRCDS_NAME="onlyd2"

# Binaire du serveur
SRCDS_BIN="./srcds_run"

# Repertoire du serveur
SRCDS_PATH="/home/papyinfo/css/onlyd2/"

# Options de lancement
SRCDS_OPTS="-game cstrike \
-tickrate 66 \
+maxplayers 24 \
+map de_dust2 \
-port 27015"

#############################################
## Fin des variables ##
#############################################
usage() {
echo "Usage: ${SRCDS_NAME} (stop|start|restart)"
exit 2
}

if [ -z $1 ]; then
usage
fi

srcds_start() {
OWD=`pwd`
cd $SRCDS_PATH
su ${SRCDS_USER} -c "screen -AmdS ${SRCDS_NAME} ${SRCDS_BIN} ${SRCDS_OPTS}"
cd $OWD
echo "Démarrage du serveur only D2"
}

srcds_stop() {
su ${SRCDS_USER} -c "screen -dr ${SRCDS_NAME} -X quit"
echo "Arrêt du serveur only D2"
}

srcds_restart() {
srcds_stop
srcds_start
echo "Serveur only D2 reboot"
}


case $1 in
stop)
srcds_stop
;;
start)
srcds_start
;;
restart)
srcds_restart
;;
*)
usage
esac

exit 0
Tout ce qui est orange peut être modifié en fonction de votre installation et de ce que vous voulez mettre.

On referme le fichier en faisant le manipulation de touche suivante ctrl + x ensuite la touche "o" et pour finir la touche Entrée.
Maintenant nous appliquons les droits d'exécution sur le fichier
chmod 755 /etc/init.d/onlyd2.sh
ensuite vous allez dans /usr/sbin
cd /usr/sbin
et vous tapez la commande suivante
ln -s /etc/init.d/onlyd2.sh onlyd2
Désormais avec le nom que vous aurez donné, pour l'exemple onlyd2 en gras la ligne au dessus, une fois connecté sur votre serveur dédié vous pourrez taper les commandes suivantes
  • onlyd2 start = démarre votre serveur de jeux. Pour cela il faut qu'il soit arrêté.
  • onlyd2 stop = stoppera votre serveur de jeux. Pour cela il faut que votre serveur de jeux soit démarré.
  • onlyd2 restart = redémarrer votre serveur de jeux. (reboot)
Vous pourrez taper ces commandes sans être dans un dossier particulier. Mais vous devrez être en root.

Votre serveur de jeux peut être démarré, arrêté et redémarré désormais. Maintenant nous allons voir pour que votre serveur de jeux redémarre automatiquement au cas ou votre serveur dédié vient à être redémarré suite à une mise à jour ou autre.


Lancer le serveur automatiquement

Comme dit la ligne du dessus, lorsque votre serveur dédié est redémarré, votre serveur de jeux n'est pas lancé automatiquement. Vous devez le démarrer manuellement avec un onlyd2 start.
Pour remédier à cela vous allez dans /etc/init.d
cd /etc/init.d/
puis vous tapez
update-rc.d onlyd2.sh defaults
A chaque fois que votre serveur dédié sera redémarré, le système lancera votre script.

Si vous voulez supprimer cela il vous suffit de taper
update-rc.d -f onlyd2.sh remove
Voyons maintenant comment faire pour faire un reboot journalier de votre serveur.



Reboot journalier

Une fois tout ceci mis en place nous allons voir comment faire redémarrer votre serveur tous les jours à une heure précise.
Pour cela vous tapez
crontab -e
il se peut qu'il vous demande avec quoi vous voulez l'éditer. Vous mettez le chiffre qui correspond à la ligne nano puis vous validez.
Le fichier est ouvert et avec vos flèches vous allez tout en bas et vous mettez ceci
35 7 * * * /etc/init.d/onlyd2.sh restart
La ligne indique qu'à 7h35 tous les jours de la semaine le système fera un restart avec le fichier onlyd2.sh

On referme le fichier en faisant le manipulation de touche suivante ctrl + x ensuite la touche "o" et pour finir la touche Entrée.



Ce tutoriel est la propriété de papyinfo.fr
Répondre