vendredi 1 avril 2016

Planificateur de tâches: lancer une commande en root

Le planificateur de tâches sous Ubuntu et Debian est Gnome-Schedule. 

C'est une interface graphique pour Cron. Il permet de lancer une commande à intervalles réguliers. Voir ici en détails. Vous le trouverez dans Menu > Sytème ou outils système


S'il n'est pas installé sur votre distro (c'est notamment le cas sur le Raspberry Pi):

 sudo apt-get install gnome-schedule

Une question qui revient souvent chez les newbies, c'est «comment lancer une commande en root dans Gnome-Schedule ?».

En fait, Gnome-Schedule est installé en général en non-root donc accessible à tout utilisateur. On comprendra donc aisément qu'on ne puisse pas lancer une commande en root.


Comment faire alors?

Il suffit de créer dans votre panel (dock) ou sur le Bureau un nouveau lanceur dont la commande sera:

gksudo /usr/bin/gnome-schedule

gksudo est utilisé à la place de sudo quand on veut lancer une interface

En utilisant ce lanceur (en root), pas de problème pour créer un tâche lancée en root. Dans la commande de vôtre tâche, omettez sudo.


TRUC: pour vérifier que votre tâche fonctionne réellement, si il est 14 h, réglez-la pour quelle se lance à 10 mn. Vous n'aurez donc pas attendre bien longtemps. Pour mon Raspberry Pi, je lance un script pour apt-get update, upgrade, clean et autoremove. J'ai ajouté en dernière commande "reboot" car c'est un serveur qui en général tourne plusieurs jours sans redémarrage et après une mise-à-jour, c'est mieux de redémarrer.

Je vous conseille de ne pas modifier le lanceur d'origine donc de garder la possibilité de programmer une action en simple utilisateur


Pour lancer une commande multiple (exemple ici avec l'antivirus BitDefender), on sépare les deux commandes avec un "double-uppersand" (&&) ou double-esperluette en Français:

/opt/BitDefender-scanner/bin/bdscan --update && bdscan /home/linuxlite --action=quarantine=/home/linuxlite/quarantaine

Aucun commentaire:

Enregistrer un commentaire

Ajoutez un commentaire mais en bon Français ou éventuellement en bon Anglais. Les commentaires en langage SMS seront supprimés.