Le dimanche 10 août 2008 18:37, Grégory BULOT a écrit : > bonjour, > > existe-t-il un update-notifier pour la ligne de commande ? > > mon idée est de recevoir un mail de mon serveur lorsqu'il y a > uniquement des maj disponible (un aptitude upgrade est trop bavard) > je m'oriente donc vers cron-apt, mais comme j'ai pas de maj en attente > je sais pas si cela fonctionne .... > - je ne veux pas de lancement de maj, juste la liste des maj dispo par > mail, lorsqu'il y en a (je veux pas de mail me disant 'pas de maj dispos')
Bonjour, Je ne sais ce qui existe au juste mais ce n'est pas bien compliqué à faire soit même. Ci-dessous, voici un script bash que j'utilise à cette fin. Il *faut* l'adapter à ton cas, au moins changer l'adresse dans les variables. C'est loin d'être parfait. Notamment parce que le test que je fais pour déterminer s'il y a des mises à jour compte le nombre de lignes de sorties d'aptitude et que ce nombre change d'une version à l'autre donc le script doit être adapter à chaque nouvelle version de Debian. Pour le moment il fonctionne avec Etch. Bon, ça reste très modeste. S'il y a des propositions pour l'améliorer... [Début du script : attention aux sauts de lignes indésirés] #!/bin/bash # # Ce script utilise aptitude pour vérifier l'existence de mises à jour et envoie # un mail si c'est le cas. # Il est adapté d'un script trouvé sur le net. # Ce script doit être lancé par root pour fonctionner : idéalement via cron/anacron. # Il est nécessaire que la commande mail soit disponible. # # Note : il existe le paquet cron-apt qui doit faire quelque chose de semblable # (voire mieux) ainsi que des applications qui informent dans le dock (comme # adept-notifier). # VARIABLES adresse=eddy # adresse email où envoyer l'avertissement machine=`hostname` # nom de la machine où une mise à jour existe resultat="" # pour tester l'existence d'une mise à jour resultat2="" # pour tester l'existence d'une adresse IP nbretest=10 # nbre de lignes de la réponse de la commande upgrade # au-delà duquel il y a des mises à jour depot=security.debian.org # adresse à pinger pour voir si réseau ok # Avant de regarder s'il y a des mises à jour, on va regarder si # on a accès au net en pingant les dépôts resultat2=`ping -c 1 $depot 2>&1 | grep unknown` # MISE À JOUR DE LA LISTE DES PAQUETS ET RECHERCHE DE MISE À JOUR if [ -z "$resultat2" ] then aptitude update &> /dev/null # on va tester la présence de mise à jour ; il faut faire attention anacron # travaille en anglais quand lancé par le système mais en français quand # lancé par moi via sudo ; il faut imaginer un test NON SENSIBLE À LA LANGUE # (au début je faisais un grep sur le contenu de la commande aptitude, je l'ai # remplacé par le comptage des lignes rendu par aptitude). resultat=`aptitude -sy upgrade | wc -l ` else ( echo "Le programme de notification a été exécuté par cron/anacron et n'a" echo "pu détecter aucune mise à jour pour $machine faute d'avoir accès" echo "au réseau." echo echo "--" echo Tux ) | mail -a "content-type: text/plain; charset=utf-8" -s "=?UTF-8?Q?=C3=89chec_de_recherche_de_mise_=C3=A0_jour_pour_$machine?=" $adresse fi if [ -n "$resultat" ] then if [ "$resultat" -gt "$nbretest" ] then ( echo "Des nouvelles mises à jour sont disponibles pour $machine ." echo echo "Voici une simulation du résultat de la commande de mise à jour :" echo echo "—————————————————————————————————————————————————————————————————" aptitude -sy upgrade echo "—————————————————————————————————————————————————————————————————" echo echo "Il suffit de taper la commande" echo "maj" echo "dans un terminal pour mettre le système à jour." echo echo "--" echo Tux ) | mail -a "content-type: text/plain; charset=utf-8" -s "=?UTF-8?Q?Des_mises_=C3=A0_jour_sont_disponibles_sur_$machine?=" $adresse fi fi [Fin du script] -- Strange Fruit -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]