Récupérer automatiquement les clés de dépots

Publié le par Levi59

Je me suis fait un petit script bash pour mes installations que je pourrais lancer à la première mise à jour des dépôts afin de récupérer les éventuelles clés manquantes.

 

Il se peut que le script n'arrive pas à récuperer les clé, dans ce cas il faut vérifier l'adresse "hkp://keyserver.ubuntu.com" et voir si celle ci est bien valide...

Code:

#!/bin/bash
# script pour mettre à jour la liste des dépots et automatiquement rajouter les cles manquantes.
#
# Copyright (C) 20 Fev. 2011, Rombeaut Rodolphe
# http://scriptam.over-blog.com/
# Released into the public domain.

echo "Ce script nécessite les droits root pour mettre à jour la liste des paquets et si nécessaire, ajouter les clés de dépot. "

{
    key="$(sudo apt-get update 2>&1 >&4 | tee >(grep '[[:alnum:]]\{16\}') >&4)"
} 4>&1

[ -n "$key" ] && {
    echo "Il semble que vous n'avez pas toutes les cles d'authentification. "
    echo "Les clefs GPG sont necessaires pour les depots afin de garantir l'authenticite de la connexion"
    echo ""
    until [ "$question" != "" ]; do
    echo -n "Voulez vous recuperer les cles? (Oui/Non)
"
    read question
        shopt -s nocaseglob
        case "$question" in
          oui | o )
              OLDIFS=$IFS
            IFS="
"
            for i in $key; do
                gpg --keyserver hkp://keyserver.ubuntu.com:11371 --recv-key ${i:(-8)}
                gpg -a --export ${i:(-8)} | sudo apt-key add -
            done
            IFS=$OLDIFS
            sudo apt-get update &&
            [ "$?" != "0" ] &&  {
                echo ""
                echo "Une erreur s'est produite"
                exit 1
            }
            echo ok ;;
       
          non | n )
            echo "Pas de recuperation de(s) la(les) cle(s).";;       
          * )
            echo "reponse erronee"
            question=""
        esac
        shopt -u nocaseglob
    done
} || {
    echo "Mise a jour des depots effectuee!"
}
exit 0

 

Publié dans Outils

Commenter cet article