Retour aux outils

Générateur de fichier de service Systemd

Indiquez votre exécutable, répertoire de travail, politique de redémarrage et utilisateur — obtenez une unité .service prête à installer (et un .timer compagnon optionnel), avec chaque ligne générée expliquée.

Préréglages

Partir d'une charge de travail courante

Charge des valeurs par défaut sensées pour les champs ci-dessous. Tout reste modifiable ensuite.

[Unit]

Description et ordonnancement

La section [Unit] est composée de métadonnées et d'ordonnancement — elle indique à systemd ce qu'est ce service et après quoi il doit démarrer, mais ne démarre rien elle-même.

Unités après lesquelles celui-ci doit démarrer, séparées par des espaces.

[Service] — processus

Quoi exécuter

Chemin absolu requis.

Par défaut égal à User si laissé vide.

[Service] — environnement

Variables d'environnement

Chaque ligne devient sa propre ligne Environment=. Utilisez plutôt EnvironmentFile pour les secrets que vous ne voulez pas voir figurer dans le fichier d'unité lui-même.

Optionnel, chemin absolu.

[Install]

Quand il démarre automatiquement

La section [Install] n'a d'importance que pour systemctl enable — elle indique la séquence de démarrage de quelle cible doit intégrer ce service.

[Service] — fiabilité

Politique de redémarrage

Ce n'est pas un simple interrupteur marche/arrêt — choisissez la variante qui correspond à la façon dont ce processus est censé échouer.

Redémarre en cas de plantage, de sortie non nulle ou de timeout — mais un « systemctl stop » délibéré ou une sortie propre exit(0) est laissé tranquille. Le choix habituel pour une application ou un serveur de jeu longue durée : il se remet des plantages sans lutter contre un admin qui l'a arrêté volontairement.

Secondes à attendre avant de redémarrer.

Optionnel

Plafonne la quantité de RAM et de CPU que ce service peut utiliser. Laissez ceci désactivé sauf si vous avez réellement besoin d'un plafond strict.

Validation

Erreurs courantes

Ça semble propre — aucun problème détecté.

Unité compagnon optionnelle

Exécute ce service selon un horaire au lieu de (ou en plus de) au démarrage — l'équivalent systemd d'une tâche cron, lié aux charges de travail Type=oneshot. Vous préférez un simple cron pour quelque chose de plus simple ? Un Générateur de tâches Cron séparé couvre cela — OnCalendar= est une syntaxe différente de cron et n'est pas un remplacement direct.

Résultat

Fichier(s) d'unité généré(s)

my-application.service

[Unit]
Description=My application
After=network.target
Wants=network.target

[Service]
Type=simple
ExecStart=/usr/bin/node /opt/wespner-app/server.js
WorkingDirectory=/opt/wespner-app
User=wespner-app
Environment="NODE_ENV=production"
Environment="PORT=3000"
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

Commandes d'installation

sudo cp my-application.service /etc/systemd/system/my-application.service
sudo systemctl daemon-reload
sudo systemctl enable --now my-application.service
journalctl -u my-application.service -f   # follow logs

Vous gérez votre propre serveur de jeu ?

Serveurs de jeu Wespner avec protection DDoS, disques NVMe et activation en quelques minutes.

Découvrir l'hébergement