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

Questions et astuces concernant l'installation et la configuration d'archlinux
Répondre
Oldan
archer de cavalerie
Messages : 150
Inscription : lun. 18 oct. 2010, 10:39

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

Message 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
Dernière modification par Oldan le jeu. 25 nov. 2010, 17:07, modifié 1 fois.
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

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

Message 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.
Oldan
archer de cavalerie
Messages : 150
Inscription : lun. 18 oct. 2010, 10:39

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

Message 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 ?
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

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

Message 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
Oldan
archer de cavalerie
Messages : 150
Inscription : lun. 18 oct. 2010, 10:39

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

Message 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
Oldan
archer de cavalerie
Messages : 150
Inscription : lun. 18 oct. 2010, 10:39

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

Message 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 ;)
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

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

Message 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)
«The following statement is not true. The previous statement is true.» :nage:
Oldan
archer de cavalerie
Messages : 150
Inscription : lun. 18 oct. 2010, 10:39

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

Message 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
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

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

Message 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 
«The following statement is not true. The previous statement is true.» :nage:
Oldan
archer de cavalerie
Messages : 150
Inscription : lun. 18 oct. 2010, 10:39

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

Message 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) ?
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

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

Message 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.
«The following statement is not true. The previous statement is true.» :nage:
Oldan
archer de cavalerie
Messages : 150
Inscription : lun. 18 oct. 2010, 10:39

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

Message par Oldan »

Merci beaucoup pour ces infos, je m'y pencherais un de ces quatre.
Répondre