Je veux créer une entrée crontab pour qu'elle démarre l'écran, démarre un serveur de jeux et se détache. C'est pour le cas où le serveur est redémarré et je veux qu'il démarre automatiquement pour moi.
0 0 0 0 0 (commande)
devrait s'exécuter au démarrage.
Il exécute un fichier shell situé à ~ / cube / server.sh
linux
cron
gnu-screen
gameserver
Victor
la source
la source
Réponses:
Quelque chose comme ça devrait fonctionner. Cet exemple génère un écran et exécute "top":
Dans votre crontab, comme indiqué, vous voudriez faire quelque chose comme ceci:
Bien sûr, si le serveur de jeu nécessite un ensemble d'environnement "normal", vous pouvez vous rapprocher en:
la source
. ~/.profile
pièce?@reboot (. ~/cube; /usr/bin/screen -dmS gameserver-screen ./server.sh)
Cela devrait être suffisant ... exécuter
Entrez ensuite:
la source
Par souci d'exhaustivité, il est également possible d'utiliser tmux à la place de
screen
(voir ce lien pour une comparaison):la source
J'ai eu une situation similaire, mais en raison d'autres restrictions déraisonnables, je n'ai pas pu utiliser crontab. J'avais en fait un écran d'appel inittab. (remplacé certains noms pour masquer les informations):
Dans 'file.screenrc', j'installe quelques options:
De cette façon, il a commencé au démarrage, et si le programme mourait ou que l'écran se fermait, il réapparaissait. Il n'était peut-être pas considéré comme conventionnel, mais j'ai dû contourner quelques exigences d'environnement étranges. Si nous avions besoin de le supprimer, nous devions commenter cette ligne et tuer la session. Ensuite, lorsque vous êtes prêt à le réactiver, supprimez le commentaire et init q.
la source