Menu
EtoileAbonnementRSS
jeuxvideo.com  /  Tous les forums  /  Forum principal Informatique  /  Forum Linux  / 

Topic Comment démarrer mon serveur minecraft avec la crontab sur rp4

Sujet résolu : Comment démarrer mon serveur minecraft avec la crontab sur rp4

1
EcrasezLinfame
EcrasezLinfame
MP
21 janvier 2021 à 18:38:12

Salut les gars l’année dernière j’avais déjà cherché puis abandonné j’ai voulu réessayé mais impossible de lancer mon serveur minecraft avec la crontab et donc à chaque fois que je lance mon raspberry pi je dois ouvrir le terminal aller dans le dossier minecraft et lancer le script qui est dans celui-ci (et qui en est dépendant puisque c’est juste une petite commande)
J’ai essayé de le lancer au démarrage avec xterm -e /chemin d’accès/script.sh mais ça marche pas quand je le mets sur crontab. En revanche manuellement ça marche... lol
Est-ce que quelqu’un a une idée même sur les forums anglais je trouve pas :(

[Soft]Ware
[Soft]Ware
MP
22 janvier 2021 à 17:32:28

cron permet de lancer des commandes automatiquement à intervalle donné.
Tu peux t'amuser à définir des intervalles avec ce générateur, qui permet de mieux comprendre la syntaxe : https://crontab.guru/

A noter que cron est fait pour des machines qui tournent 24/7, sans interruption.
C'est à dire que si une commande devait être exécuté à une date donnée mais que la machine était éteinte, alors elle ne sera jamais exécutée.

Anacron permet de palier à ce problème, lorsque le système démarre, il vérifie s'il y a eu des scripts censé être exécutés pendant la période de downtime, et les exécute.

Ça c'était pour information, parce que je pense que dans un cas comme dans l'autre, c'est pas ce qu'il te faut.

Tu devrais plutôt créer un service avec systemd. Ça va directement se démarrer avec le système.
Tu peux trouver de la doc ici :
https://doc.ubuntu-fr.org/creer_un_service_avec_systemd

Au cas où, est-ce que tu peux montrer ton script.sh ?

Si t'as d'autres questions n'hésite pas

Message édité le 22 janvier 2021 à 17:33:41 par [Soft]Ware
godrik
godrik
MP
22 janvier 2021 à 20:16:57

Tu devrais plutôt créer un service avec systemd. Ça va directement se démarrer avec le système.
Tu peux trouver de la doc ici : https://doc.ubuntu-fr.org/creer_un_service_avec_systemd

+1, ce que tu veux est un service systemd pas un job cron.

godrik
godrik
MP
22 janvier 2021 à 20:17:57

Sinon, la raison pour laquelle ton script ne fonctionne pas est certainement une difference d'environment entre un job cron et un terminal que tu cree toi meme.

En particulier les shell cron en sont pas des login shell, donc les shell ne sont pas initialise de la meme facon.

EcrasezLinfame
EcrasezLinfame
MP
24 janvier 2021 à 21:26:56

Salut merci pour vos retours ca fait plaisir. J'ai remarqué un truc. Je lancais toujours mon serveur en allant dans le fichier (/home/pi/Desktop/ServeurMinecraft2) et hop j'éxécutais le script. Mais je viens de me rendre compte que si je faisais: /home/pi/Desktop/ServeurMinecraft2/start.sh ca me dit: error unable to access to jarfil paper.jar
Donc à mon avis le problème vient de là puisque j'utilise souvent la crontab et que j'ai jamais eu de soucis

EcrasezLinfame
EcrasezLinfame
MP
24 janvier 2021 à 21:27:56

Le 22 janvier 2021 à 20:16:57 godrik a écrit :

Tu devrais plutôt créer un service avec systemd. Ça va directement se démarrer avec le système.
Tu peux trouver de la doc ici : https://doc.ubuntu-fr.org/creer_un_service_avec_systemd

+1, ce que tu veux est un service systemd pas un job cron.

ah ca je ne comprends pas... je veux juste aller dans un dossier et lancer le script de ce dossier c'est tout :'(

EcrasezLinfame
EcrasezLinfame
MP
24 janvier 2021 à 21:28:38

Le 22 janvier 2021 à 17:32:28 [Soft]Ware a écrit :
cron permet de lancer des commandes automatiquement à intervalle donné.
Tu peux t'amuser à définir des intervalles avec ce générateur, qui permet de mieux comprendre la syntaxe : https://crontab.guru/

A noter que cron est fait pour des machines qui tournent 24/7, sans interruption.
C'est à dire que si une commande devait être exécuté à une date donnée mais que la machine était éteinte, alors elle ne sera jamais exécutée.

Anacron permet de palier à ce problème, lorsque le système démarre, il vérifie s'il y a eu des scripts censé être exécutés pendant la période de downtime, et les exécute.

Ça c'était pour information, parce que je pense que dans un cas comme dans l'autre, c'est pas ce qu'il te faut.

Tu devrais plutôt créer un service avec systemd. Ça va directement se démarrer avec le système.
Tu peux trouver de la doc ici :
https://doc.ubuntu-fr.org/creer_un_service_avec_systemd

Au cas où, est-ce que tu peux montrer ton script.sh ?

Si t'as d'autres questions n'hésite pas

ah merci j'avais pas tout lu je vais voir ca

EcrasezLinfame
EcrasezLinfame
MP
24 janvier 2021 à 21:31:06

Mon script.sh c'est juste une ligne de commande que je peux écrire moi même x): java -Xms1024M -Xmx2048M -jar server.jar

Pseudo supprimé
25 janvier 2021 à 00:01:49

Le 24 janvier 2021 à 21:26:56 EcrasezLinfame a écrit :
Salut merci pour vos retours ca fait plaisir. J'ai remarqué un truc. Je lancais toujours mon serveur en allant dans le fichier (/home/pi/Desktop/ServeurMinecraft2) et hop j'éxécutais le script. Mais je viens de me rendre compte que si je faisais: /home/pi/Desktop/ServeurMinecraft2/start.sh ca me dit: error unable to access to jarfil paper.jar
Donc à mon avis le problème vient de là puisque j'utilise souvent la crontab et que j'ai jamais eu de soucis

Ton script cherche paper.jar dans le même dossier que celui dans lequel tu es avec ton shell (chemin relatif)

Une unit systemd te permet de spécifier ce dossier

[Service]
WorkingDirectory=/home/pi/Desktop/ServeurMinecraft2

Sinon tu peux aussi utiliser cd au début de ton .sh

EcrasezLinfame
EcrasezLinfame
MP
25 janvier 2021 à 11:24:07

Le 25 janvier 2021 à 00:01:49 meepox77 a écrit :

Le 24 janvier 2021 à 21:26:56 EcrasezLinfame a écrit :
Salut merci pour vos retours ca fait plaisir. J'ai remarqué un truc. Je lancais toujours mon serveur en allant dans le fichier (/home/pi/Desktop/ServeurMinecraft2) et hop j'éxécutais le script. Mais je viens de me rendre compte que si je faisais: /home/pi/Desktop/ServeurMinecraft2/start.sh ca me dit: error unable to access to jarfil paper.jar
Donc à mon avis le problème vient de là puisque j'utilise souvent la crontab et que j'ai jamais eu de soucis

Ton script cherche paper.jar dans le même dossier que celui dans lequel tu es avec ton shell (chemin relatif)

Une unit systemd te permet de spécifier ce dossier

[Service]
WorkingDirectory=/home/pi/Desktop/ServeurMinecraft2

Sinon tu peux aussi utiliser cd au début de ton .sh

Hm merci pour ton retour je regardais hier justement cette vidéo https://www.youtube.com/watch?v=-aKb-k8B8xo
Je vais tester ca après le taf

EcrasezLinfame
EcrasezLinfame
MP
25 janvier 2021 à 11:42:24

Le 25 janvier 2021 à 11:24:07 EcrasezLinfame a écrit :

Le 25 janvier 2021 à 00:01:49 meepox77 a écrit :

Le 24 janvier 2021 à 21:26:56 EcrasezLinfame a écrit :
Salut merci pour vos retours ca fait plaisir. J'ai remarqué un truc. Je lancais toujours mon serveur en allant dans le fichier (/home/pi/Desktop/ServeurMinecraft2) et hop j'éxécutais le script. Mais je viens de me rendre compte que si je faisais: /home/pi/Desktop/ServeurMinecraft2/start.sh ca me dit: error unable to access to jarfil paper.jar
Donc à mon avis le problème vient de là puisque j'utilise souvent la crontab et que j'ai jamais eu de soucis

Ton script cherche paper.jar dans le même dossier que celui dans lequel tu es avec ton shell (chemin relatif)

Une unit systemd te permet de spécifier ce dossier

[Service]
WorkingDirectory=/home/pi/Desktop/ServeurMinecraft2

Sinon tu peux aussi utiliser cd au début de ton .sh

Hm merci pour ton retour je regardais hier justement cette vidéo https://www.youtube.com/watch?v=-aKb-k8B8xo
Je vais tester ca après le taf

Ca marche j'ai juste rajouté le chemin dans le start.sh lol... merci beaucoup c'était tellement con après je mets ca dans la crontab et cest bon.
Je vais me renseigner sur le systemd tho... MERCI POUR VOS CONSEILS. Meilleur que stackoverflow ici :D

Pseudo supprimé
25 janvier 2021 à 12:37:28

Le 25 janvier 2021 à 11:42:24 EcrasezLinfame a écrit :

Le 25 janvier 2021 à 11:24:07 EcrasezLinfame a écrit :

Le 25 janvier 2021 à 00:01:49 meepox77 a écrit :

Le 24 janvier 2021 à 21:26:56 EcrasezLinfame a écrit :
Salut merci pour vos retours ca fait plaisir. J'ai remarqué un truc. Je lancais toujours mon serveur en allant dans le fichier (/home/pi/Desktop/ServeurMinecraft2) et hop j'éxécutais le script. Mais je viens de me rendre compte que si je faisais: /home/pi/Desktop/ServeurMinecraft2/start.sh ca me dit: error unable to access to jarfil paper.jar
Donc à mon avis le problème vient de là puisque j'utilise souvent la crontab et que j'ai jamais eu de soucis

Ton script cherche paper.jar dans le même dossier que celui dans lequel tu es avec ton shell (chemin relatif)

Une unit systemd te permet de spécifier ce dossier

[Service]
WorkingDirectory=/home/pi/Desktop/ServeurMinecraft2

Sinon tu peux aussi utiliser cd au début de ton .sh

Hm merci pour ton retour je regardais hier justement cette vidéo https://www.youtube.com/watch?v=-aKb-k8B8xo
Je vais tester ca après le taf

Ca marche j'ai juste rajouté le chemin dans le start.sh lol... merci beaucoup c'était tellement con après je mets ca dans la crontab et cest bon.
Je vais me renseigner sur le systemd tho... MERCI POUR VOS CONSEILS. Meilleur que stackoverflow ici :D

Oui systemd se prête mieux à ce genre de tâches qu'un crontab, tu peux configurer le service pour redémarrer tout seul si le serveur crash par exemple, et les logs sont centralisés par journald

EcrasezLinfame
EcrasezLinfame
MP
25 janvier 2021 à 15:30:27

Le 25 janvier 2021 à 12:37:28 meepox77 a écrit :

Le 25 janvier 2021 à 11:42:24 EcrasezLinfame a écrit :

Le 25 janvier 2021 à 11:24:07 EcrasezLinfame a écrit :

Le 25 janvier 2021 à 00:01:49 meepox77 a écrit :

Le 24 janvier 2021 à 21:26:56 EcrasezLinfame a écrit :
Salut merci pour vos retours ca fait plaisir. J'ai remarqué un truc. Je lancais toujours mon serveur en allant dans le fichier (/home/pi/Desktop/ServeurMinecraft2) et hop j'éxécutais le script. Mais je viens de me rendre compte que si je faisais: /home/pi/Desktop/ServeurMinecraft2/start.sh ca me dit: error unable to access to jarfil paper.jar
Donc à mon avis le problème vient de là puisque j'utilise souvent la crontab et que j'ai jamais eu de soucis

Ton script cherche paper.jar dans le même dossier que celui dans lequel tu es avec ton shell (chemin relatif)

Une unit systemd te permet de spécifier ce dossier

[Service]
WorkingDirectory=/home/pi/Desktop/ServeurMinecraft2

Sinon tu peux aussi utiliser cd au début de ton .sh

Hm merci pour ton retour je regardais hier justement cette vidéo https://www.youtube.com/watch?v=-aKb-k8B8xo
Je vais tester ca après le taf

Ca marche j'ai juste rajouté le chemin dans le start.sh lol... merci beaucoup c'était tellement con après je mets ca dans la crontab et cest bon.
Je vais me renseigner sur le systemd tho... MERCI POUR VOS CONSEILS. Meilleur que stackoverflow ici :D

Oui systemd se prête mieux à ce genre de tâches qu'un crontab, tu peux configurer le service pour redémarrer tout seul si le serveur crash par exemple, et les logs sont centralisés par journald

Je vais me pencher sur ca dès que je peux merci à tous.

1
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?