linux

31
mai 2024

Une tâche cron pour lancer un programme installer par Flathub

Pour sauvegarder mon PC j'utilise FreeFileSync que j'installe sur ma Fedora 40 grâce à FlatHub. Après avoir créé mon profil de sauvegarde est l'équivalent pour fonctionner en batch j'ai voulu automatiser le lancement de la sauvegarde.

Depuis un terminal :

crontab -e

35 07 * * * /usr/bin/flatpak run org.freefilesync.FreeFileSync /home/xxx/Documents/backup-xxx.ffs_batch

En l'état j'obtiens le message suivant dans les logs

mai 23 07:35:01 aaa CROND[6491]: (xxx) CMDOUT (Authorization required, but no authorization protocol specified)

mai 23 07:35:01 aaa CROND[6491]: (xxx) CMDOUT ()

mai 23 07:35:01 aaa CROND[6491]: (xxx) CMDOUT (07:35:01: Error: Unable to initialize GTK+, is DISPLAY set properly?)

mai 23 07:35:01 aaa CROND[6491]: (xxx) CMDEND (/usr/bin/flatpak run org.freefilesync.FreeFileSync /home/xxx/Documents/backup-xxx.ffs_batch)

Pour contourner le problème il va falloir ajouter deux variables :

  • DISPLAY
  • XAUTHORITY

Maintenant la tâche ressemble à

 

57 08 * * * env DISPLAY=:0 XAUTHORITY=`find /run/user/1000/.mutter*` /usr/bin/flatpak run org.freefilesync.FreeFileSync "/home/xxxx/Documents/backup-xxxx.ffs_batch"

 


13
mars 2017

Tuer une liste de processus par leur PID en une commande

Tuer une liste de processus par leur PID en une commande

J'ai un script python qui pour une raison que je ne pas encore trouvé reste en processus actif. Du coups je me retrouve avec plusieurs 10e de fois le script lancé. Pas d'impact mais c'est pas propre. Pour l'arrêter j'ai pas trop le choix que de faire un kill mais pas de chance killall n'en veut pas du coups c'est un kill basique que je dois faire. Comment le faire une ligne ?

# ps faux | grep MonScript | tr -s " " " " | cut -d " " -f 2 | xargs kill -9

Explication :

ps faux : donne tout les process de la  machine

  • tr -s " " " " : remplace tout les espaces par un espace (c'est le -s qui est important)
  • cut -d " " -f 2 : récupère la colonne 2, soit les numéros de processus
  • xargs kill -9 : exécute la commande kill avec en argument le résultat ligne à ligne des précédentes commandes.

Lire la suite de Tuer une liste de processus par leur PID en une commande


13
mars 2017

Enregistrer une session telnet dans un fichier

Enregistrer une session telnet dans un fichier

Sous linux j'ai eu besoin d'enregistrer le résultat d'une commande telnet d'un switch dans un fichier. Avec Putty c'est prévue directement depuis l'interface mais sous linux... bah c'est juste un petit programme qu'il faut intercaler : script

script -c telnet /tmp/resultat.txt

Et voilà tout ce que vous taperez dans votre session telnet sera enregistré dans le fichier /tmp/resultat.txt

Lire la suite de Enregistrer une session telnet dans un fichier


Fil RSS des articles de ce mot clé - page 1 sur 2 suivante
Tag linux - Philippe Maladjian - Péripéties bucoliques d'un administrateur systèmes au royaume de la virtualisation, du stockage et accessoirement photographe à ses heures perdues