Page 1 sur 1

[mise à jour] en être averti (résolu)

Publié : jeu. 25 nov. 2010, 14:28
par Oldan
Bonjour,

j'ai un mini serveur (Linux Plugbox 2.6.36 dérivé d'archlinux) sur lequel je me connecte rarement.
Est il possible de lui faire envoyer un mail lorsqu'il y a une mise à jour ?

Merci pour votre aide

Re: [mise à jour] en être averti (...)

Publié : jeu. 25 nov. 2010, 16:07
par tuxce
salut, un cron avec:

Code : Tout sélectionner

pacman -Qu &> /dev/null && pacman -Qu | mail -s MAJ oldan@boitemail
devrait faire l'affaire.

Re: [mise à jour] en être averti (...)

Publié : jeu. 25 nov. 2010, 16:46
par Oldan
merci,

mais dans ce cas, l'envoie se fera aussi lorsque pacman -Qu ne renverra rien

Par ailleurs, je n'ai rien pour envoyer des mails :
/usr/sbin/sendmail: No such file or directory
suis je obligé d'installer postfix ou sendmail ? N'existe t il rien de plus léger qui ne fasse qu'envoyer un mail ?

Re: [mise à jour] en être averti (...)

Publié : jeu. 25 nov. 2010, 16:51
par tuxce
"pacman -Qu" retourne 1 s'il n'y a pas de maj.
Au lieu de sendmail, tu peux installer ssmtp ou équivalent, c'est largement suffisant pour l'envoi

Re: [mise à jour] en être averti (...)

Publié : jeu. 25 nov. 2010, 17:07
par Oldan
super pour ssmtp :)
80Kio ca change des 45Mio de postfix et ses dépendances

du coup je comprends ta commande (cf http://www.linux-pour-lesnuls.com/bash.php#commandes7 )

Merci pour ton aide

Re: [mise à jour] en être averti (résolu)

Publié : jeu. 02 déc. 2010, 15:13
par Oldan
Du coup j'ai créé mon premier script bash

Voici /etc/cron.daily/checkPacmanUpdate

Code : Tout sélectionner

#!/bin/bash

pacman -Qyu &> /dev/null 

if [ $? ]
then
        pacman -Qyu | mail -s "[Plugbox] Mise à jour" ae@mail.com
        pacman -Syuw --noprogressbar --noconfirm &> /dev/null
fi

si vous avez des commentaires ;)

Re: [mise à jour] en être averti (résolu)

Publié : jeu. 02 déc. 2010, 15:55
par FoolEcho
Ton premier appel à pacman ne devrait-il pas plutôt être -Syu pour connaître les nouvelles mises à jour ? (sauf erreur de ma part, j'crois pas qu'il y ait d'option 'y' pour -Q, donc pas de rafraichissement des bases de données de pacman, donc aucune notification).

(Perso, je n'aime pas l'utilisation de '$?', j'aurais conservé le '&&' à la place de ce que te proposait tuxce... je trouve que c'est plus lisible)

Re: [mise à jour] en être averti (résolu)

Publié : jeu. 02 déc. 2010, 16:05
par Oldan
t'as raison il n'y a pas d'option y avec le Q

tu aurais simplement laissé ceci ?

Code : Tout sélectionner

pacman -Qyu &> /dev/null && pacman -Qyu | mail -s "[Plugbox] Mise à jour" ae@mail.com ; pacman -Syuw --noprogressbar --noconfirm &> /dev/null

Re: [mise à jour] en être averti (résolu)

Publié : jeu. 02 déc. 2010, 16:40
par FoolEcho
Dans ce que tu proposes, tu seras notifié un coup trop tard.

Plutôt:

Code : Tout sélectionner

# rafraichir base de données
pacman -Sy
# téléchargement éventuel des paquets
pacman -Suw --noprogressbar --noconfirm &> /dev/null
# notification par mail au besoin
pacman -Qu &> /dev/null && pacman -Qu | mail -s "[Plugbox] Mise à jour" ae@mail.com 

Re: [mise à jour] en être averti (résolu)

Publié : jeu. 02 déc. 2010, 17:21
par Oldan
C'est pour ca que j'avais rajouté un y...
Sans changer de Q en S...

Merci pour cette modif.

Cela donne maintenant :

Code : Tout sélectionner

#!/bin/bash
# rafraichir base de données
pacman -Sy &> /dev/null
# téléchargement éventuel des paquets
pacman -Suw --noprogressbar --noconfirm &> /dev/null
# notification par mail au besoin
pacman -Qu &> /dev/null && pacman -Qu | mail -s "[Plugbox] Mise à jour" ae@mail.com
Et qu'en est il de l'avertissement des mises à jour venant de AUR ?
Il faudrait passer par yaourt.
Mais yaourt n'est il pas à éviter en tant que root (ce script est exécuté via cron sous root) ?

Re: [mise à jour] en être averti (résolu)

Publié : jeu. 02 déc. 2010, 18:37
par FoolEcho
Pour les mises à jour de Aur... :? ... je ne sais pas trop... On peut obtenir le statut des paquets Aur, et donc savoir si il y a des versions plus récentes disponibles, via :

Code : Tout sélectionner

yaourt -Qma
mais ça liste tous les paquets de aur, ce qui oblige à faire un traitement derrière... Je ne sais pas s'il y a moyen de filtrer davantage ( mais je compte sur tuxce pour l'option de yaourt qui tue :chinois: )

Au pire, sur Aur, il y a 'aurcheck' qui ferait exactement le boulot https://aur.archlinux.org/packages.php?ID=28009 (même si ça manque cruellement de documentation... ). Ainsi,

Code : Tout sélectionner

aurcheck -q
renvoie la liste des paquets potentiellement à mettre jour (aurcheck tout court renvoie l'état de tous les paquets de aur), il suffirait alors de regarder si la liste n'est pas vide pour notifier.

Re: [mise à jour] en être averti (résolu)

Publié : ven. 03 déc. 2010, 10:26
par Oldan
Merci beaucoup pour ces infos, je m'y pencherais un de ces quatre.