GNU/Linux >> Tutoriels Linux >  >> Linux

Linux - Exécuter le script toutes les 30 minutes avec Systemd ?

Je voudrais exécuter un script toutes les 30 minutes après le démarrage du système. Je sais que vous pouvez utiliser cron, mais je ne prévois pas d'utiliser souvent cette fonctionnalité, donc j'aimerais l'essayer avec systemd.

Jusqu'à présent, je n'ai trouvé que les minuteries monotones qui permettent d'exécuter quelque chose une fois (du moins je le pense). Comment le foo.timer et [email protected] ressemble au cas où je voudrais exécuter quelque chose toutes les 30 minutes depuis le démarrage/démarrage du système ?

[e-mail protégé]

[Unit]
Description=run foo
Wants=foo.timer

[Service]
User=%I
Type=simple
ExecStart=/bin/bash /home/user/script.sh

foo.timer

[Unit]
Description=run foo

[Timer]
where I am stuck... ???

Réponse acceptée :

Vous devez créer deux fichiers :un pour le service, l'autre pour la minuterie avec le même nom.

exemple :

/etc/systemd/system/test.service

[Unit]
Description=test job

[Service]
Type=oneshot
ExecStart=/bin/bash /tmp/1.sh

/etc/systemd/system/test.timer

[Unit]
Description=test

[Timer]
OnUnitActiveSec=10s
OnBootSec=10s

[Install]
WantedBy=timers.target

après cela, rechargez le systemd en utilisant la commande systemctl daemon-reload et démarrez votre minuterie par systemctl start test.timer , ou activez-le par défaut (systemctl enable test.timer ).

tester le contenu de 1.sh

#!/bin/bash
echo `date` >> /tmp/2

Et commande pour vérifier tous les timers disponibles :systemctl list-timers --all

Des informations plus détaillées sur la page du projet et des exemples sur la page ArchLinux


Linux
  1. Linux - Comment exécuter un script avec Systemd juste avant l'arrêt ?

  2. Linux - Emplacement du script Fsck ?

  3. Exécutez facilement le logiciel Windows sur Linux avec des bouteilles

  4. Compiler un script PHP sous Linux

  5. Comment exécuter un script avant tout le reste à l'arrêt avec systemd ?

Exécutez des applications Windows sur Linux avec Crossover 15

Comment exécuter un logiciel Windows sur Linux avec des bouteilles

Comment exécuter un script Shell en tant que service Systemd sous Linux

Comment exécuter un script Shell en tant que service SystemD sous Linux

Exécutez le conteneur Almalinux ou Rocky Linux 8 Docker avec Systemd (systemctl)

Comment exécuter un alias avec Sudo sous Linux