Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#676 Le 03/04/2016, à 21:23

Hoper

Re : Nettoyage dans les noyaux (kernel)

Merci pour le partage smile

Il faudra bien que je pense à repartir de cette version la lors d'une prochaine mise à jour...
Tiens, je lance un concours... Il y a quelques semaines, je suis tombé dans une install party avec une personne qui avait un / vraiment bien plein.
L'ordinateur tournait sous la 12.04 sauf erreur. J'ai lancé kclean et on à récupéré plus de 11GB ! Qui dit mieux ? smile


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/atdc/
Mastodon: @hoper@framapiaf.org

Hors ligne

#677 Le 23/05/2016, à 13:05

manup31

Re : Nettoyage dans les noyaux (kernel)

Bonjour,

J'avoue ne pas avoir la patience de lire tout le thread et la recherche ne donne rien, mais je voudrais suggérer d'utiliser `whoami` dans les tests pour savoir si on est root plutôt que $USER, car cette variable n'est pas connue par cron...
Or on peut souhaiter exécuter kclean en cron.


manu'

Hors ligne

#678 Le 03/06/2016, à 09:29

Hoper

Re : Nettoyage dans les noyaux (kernel)

Suggestion retenue smile

CA en plus des corrections orthographiques... Il va falloir que je pense à packager une nouvelle version...
Mais ça devra attendre encore un peu parce que je suis, comme d'habitude en fait, déjà bien occupé hmm


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/atdc/
Mastodon: @hoper@framapiaf.org

Hors ligne

#679 Le 05/06/2016, à 12:09

ar barzh paour

Re : Nettoyage dans les noyaux (kernel)

juste pour info j'ai lancé en kclean (4.0) sur une 16.04 Résultat =>OK

uname -a
Linux jpb-desktop 4.4.0-22-generic #40-Ubuntu SMP Thu May 12 22:03:15 UTC 2016 i686 i686 i686 GNU/Linux

kclean version 4.0


sudo ./kclean -ks

Noyau actuellement en cours d'utilisation : 4.4.0-22
Par defaut, seul ce noyau est conserve.
 
Ce script va tenter de trouver la version precedente du noyau pour la conserver.
Verifiez les informations fournies avant de valider la suppression.
 
La version precedemment installee (a conserver) est la version : 4.4.0-21
Aucun noyau a supprimer.
Abandon.

sudo ./kclean -s
 
Noyau actuellement en cours d'utilisation : 4.4.0-22
Par defaut, seul ce noyau est conserve.
 
Les paquets suivants vont etre supprimes :
 
    linux-image-4.4.0-21-generic
    linux-image-extra-4.4.0-21-generic
    linux-headers-4.4.0-21
    linux-headers-4.4.0-21-generic
 
Cela devrait liberer environ 225 MiB d'espace disque
 
 Voulez vous indiquer manuellement des paquets à conserver ? [o/N] :n
 Voulez vous supprimer l'ensemble des paquets indiques ? [o/N] :o
 
 Suppression en cours :
 
Suppression du paquet linux-image-4.4.0-21-generic (simple simulation...)  
Suppression du paquet linux-image-extra-4.4.0-21-generic (simple simulation...)  
Suppression du paquet linux-headers-4.4.0-21 (simple simulation...)  
Suppression du paquet linux-headers-4.4.0-21-generic (simple simulation...)  
 
 -------------- Suppression effectuee ---------------

Dernière modification par ar barzh paour (Le 05/06/2016, à 12:13)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 22.04, 22.04, 23.04
Portable1 : Intel(R) Core(TM)2 Duo CPU     T6570  @ 2.10GHz RAM 4GiB DDR2 667 MHz Ubuntu 23.04 ( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#680 Le 05/06/2016, à 12:50

f.x0

Re : Nettoyage dans les noyaux (kernel)

Bonjour Hoper,

j'ai corriger les fautes d'ortographe que j'ai vues
(le reste du script n'est pas modifié :

#!/bin/bash

# Historique :
# 1.0 : mode texte uniquement
# 2.0 : Ajout du mode graphique
# 2.1 : légères modifications cosmétiques
# 2.2 : Support des kernel 3.X, ajout de --keep-prev
# 3.0 : Utilisation de getopts, refonte du mode terminal, ajout d'un lanceur
# 3.1 : Gestion des nouvelles options en mode graphique, mode term par défaut
# 3.2 : Prise en compte des paquets linux-image-extra* et ajout de --version
# 3.3 : Arrêt du script si un noyau > au courant est trouvé, ajout des 4.X
# 3.4 : Correction de : if [ "FORCE_YES" = "VRAI" ] (Ne provoquait qu'un bug d'affichage)
# 3.5 : Calcul de l'espace disque théoriquement libéré
# 3.6 : Correctifs (suppression non fonctionnelle en mode graphique)
# 3.7 : Ajout d'un icône et de la dépendance à gnome-sudo
# 3.8 : dpkg -p devient dpkg -s
# 3.9 : Prise en compte des noyaux "signed" et "lowlatency"
# 4.0 : Voir: https://forum.ubuntu-fr.org/viewtopic.php?id=242358&p=26

CURRENT_VER=4.0

## Bugs connus
# Une fois les suppressions lancées en mode graphique,
# il n'est pas possible de les interrompre 
# L'option force-yes ne fonctionne qu'en mode texte

###################
# Fonctions
###################

function clean_exit
{
    rm -f /tmp/clean_kernel.tmp
    exit $1
}

function display_syntaxe 
{
echo " "
echo " Syntaxe : $0 [options]"
echo " Options disponibles : "
echo "  -t      --term          Lance le script en mode console (mode par défaut)"
echo "  -g      --gui           Lance le script en mode graphique"
echo "  -k      --keep-prev     Conserve automatiquement le noyau précédent" 
echo "  -s      --simulate      Aucune suppression réelle, simple simulation"
echo "  -h      --help          Affichage de la syntaxe"
echo "  -f      --force-yes     Suppression sans aucune demande de confirmation !"
echo "  -v      --version       Informations sur les versions"
echo " "
echo " Exemple d'utilisation en ligne de commande : sudo kclean -k "
echo " "
}

function remove_kernel
{
echo " "
echo " Suppression en cours :"
echo " "
for i in `grep -v "$KERNEL" /tmp/clean_kernel.tmp`
do
    if [ "$SIMULATE" = "VRAI" ]
    then
        echo "Suppression du paquet $i (simple simulation...)  "
    else
        apt-get remove --yes --purge $i
    fi
done
echo " "
echo " -------------- Suppression effectuée ---------------"
echo " "
clean_exit 0
}

# interprétation des paramètres

TERMINAL="VRAI"
KEEP_PREV="FAUX"
SIMULATE="FAUX"
HELP="FAUX"
FORCE_YES="FAUX"
VERSION="FAUX"

while getopts ":tgksvf-:" OPT 
do
    # gestion des options longues avec ou sans argument
    [ $OPT = "-" ] && case "${OPTARG%%=*}" in
        term) OPT="t" ;;
        gui) OPT="g" ;;
        keep-prev) OPT="k" ;;
        simulate) OPT="s" ;;
        help) OPT="h" ;;
        force-yes) OPT="f" ;;
        version) OPT="v" ;;
        *) display_syntaxe ; clean_exit 1 ;;
    esac
    # puis gestion des options courtes
    case $OPT in
        t) ;;
        g) TERMINAL="FAUX"  ;;
        k) KEEP_PREV="VRAI" ;;
        s) SIMULATE="VRAI" ;;
        h) HELP="VRAI" ;;
        f) FORCE_YES="VRAI" ;;
        v) VERSION="VRAI" ;;
        *) display_syntaxe ; clean_exit 1 ;;
    esac
done 

## Aide

if [ "$HELP" = "VRAI" ]
then
    display_syntaxe
    clean_exit 0
fi

## Version

if [ "$VERSION" = "VRAI" ]
then
    echo " "
    echo "kclean version $CURRENT_VER"
    head -19 $0 | grep -v bash
    clean_exit 0
fi


## Le script a-t-il bien été lancé en tant que root ?

if [ "$USER" != "root" -a "$SIMULATE" = "FAUX" ]
then
    echo " "
    echo " Erreur : Vous devez avoir les droits de root pour supprimer des paquets"
    echo " Avez-vous oublié sudo devant le nom du script ?"
    echo " "
    clean_exit 2
fi

## Traitements communs

KERNEL=`uname -r | cut -d '-' -f 1,2`
dpkg -l | grep linux | grep ubuntu | grep ii | awk '{print $2}' | grep -E '2\.6|3\.|4\.' >/tmp/clean_kernel.tmp
dpkg -l | grep linux | grep restricted | grep ii | awk '{print $2}' | grep -E '2\.6|3\.|4\.' >>/tmp/clean_kernel.tmp
dpkg -l | grep linux | grep image| grep ii | awk '{print $2}' | grep -E '2\.6|3\.|4\.' >>/tmp/clean_kernel.tmp
dpkg -l | grep linux | grep headers | grep ii | awk '{print $2}' | grep -E '2\.6|3\.|4\.' >>/tmp/clean_kernel.tmp
dpkg -l | grep linux | grep tools | grep ii | awk '{print $2}' | grep -E '2\.6|3\.|4\.' >>/tmp/clean_kernel.tmp

#On supprime immédiatement de la liste le noyau courant :
sed -i -e /$KERNEL/D /tmp/clean_kernel.tmp

#On cherche le noyau précédent
NB_KERNEL=`dpkg -l | grep linux | grep image | grep ^ii | egrep -v "extra|signed|lowlatency" | awk '{print $2}' | grep -E '2\.6|3\.|4\.' | wc -l`
if [ $NB_KERNEL -eq 1 ]
then
    PREVIOUS_V=""
else
    PREVIOUS_V=`dpkg -l | grep linux | grep image | grep ^ii | egrep -v "extra|signed|lowlatency" | awk '{print $2}' | grep -E '2\.6|3\.|4\.' | sort -V | tail -2 | head -1 | cut -d '-' -f3,4`
fi

# On cherche le noyau le plus récent pour le comparer au noyau courant
LAST_KERNEL=`dpkg -l | grep linux | grep image | grep ^ii | egrep -v "extra|signed|lowlatency" | awk '{print $2}' | grep -E '2\.6|3\.|4\.' | sort -V | tail -1 | cut -d '-' -f 3,4`

########  Mode texte ############

if [ "$TERMINAL" = "VRAI" ]
then
    echo " "
    echo "Noyau actuellement en cours d'utilisation : $KERNEL"
    echo "Par défaut, seul ce noyau est conservé."
    echo " "

    if [ "$LAST_KERNEL" != "$KERNEL" ]
    then
    if [ "$FORCE_YES" = "VRAI" ]
        then 
        echo "ATTENTION : Présence de noyau(x) plus récent(s) sur le système."
        echo "Ce script va néanmoins poursuivre (utilisation du -f)"
        else
            echo "ATTENTION : Au moins un noyau plus récent ( $LAST_KERNEL ) a été détecté."
            echo "Ce phénomène peut avoir plusieurs causes mais, par sécurité,"
            echo "ce script va s'arrêter."
            echo " "
            echo "Si vous comprenez exactement ce qui se passe,"
            echo "et si vous souhaitez réellement supprimer tous les noyaux"
            echo "y compris les plus récents, utilisez l'option -f seule."
            clean_exit 4
        fi
    fi

    if [ "$KEEP_PREV" = "VRAI" ]
    then
        echo "Ce script va tenter de trouver la version précédente du noyau pour la conserver."
        if [ "$FORCE_YES" = "FAUX" ]
        then
            echo "Verifiez les informations fournies avant de valider la suppression."
        fi
        echo " "
        if [ -z "$PREVIOUS_V" ]
        then
            echo "Aucune version précédente trouvée, il n'y a donc rien à supprimer."
            echo "Abandon."
            echo " "
            clean_exit 0
        fi
        echo "La version précédemment installée (à conserver) est la version : $PREVIOUS_V"
        sed -i -e /$PREVIOUS_V/D /tmp/clean_kernel.tmp
    fi
 
    if [ `cat /tmp/clean_kernel.tmp |wc -l` -eq 0 ]
    then
        echo "Aucun noyau à supprimer."
        echo "Abandon."
        echo " "
        clean_exit 0
    fi

    #Calcul de l'espace libére
    ESPACEKB=0
    for i in `grep -v "$KERNEL" /tmp/clean_kernel.tmp`
    do
        ESPACEKB=$(($ESPACEKB+`dpkg -s $i | grep Installed-Size | awk '{print $2}'`))
    done
    ESPACEMB=$(($ESPACEKB / 1024))

    echo "Les paquets suivants vont être supprimés :"
    echo " "
    cat /tmp/clean_kernel.tmp | sed -e "s@^@    @g"
    echo " "
    echo "Cela devrait libérer environ $ESPACEMB MiB d'espace disque"
    echo " "
    
    ## Mode non interactif

    if [ "$FORCE_YES" = "VRAI" ]
    then 
        remove_kernel
    fi

    ## Mode interactif

    echo -n " Voulez vous indiquer manuellement des paquets à conserver ? [o/N] :"
    read REP
    if [ "$REP" = "o" -o "$REP" = "O" ]
    then
        echo " indiquez la liste des paquets à conserver en les séparant par un espace : "
        read REP
        for i in `echo "$REP"`
        do
            sed -i -e /$i/D /tmp/clean_kernel.tmp
        done
        echo " "
        echo " Voila la liste des paquets qui seront donc supprimés :"
        echo " "
        grep -v "$KERNEL" /tmp/clean_kernel.tmp | sed -e "s@^@    @g"
        echo " "
    fi
    echo -n " Voulez-vous supprimer l'ensemble des paquets indiqués ? [o/N] :"
    read REP
    if [ "$REP" = "o" -o "$REP" = "O" ]
    then
        remove_kernel
    else
        echo " "
        echo " Abandon de l'opération..."
        echo " "
        clean_exit 0
    fi
else
        
    ############### Mode graphique ##################

    ## On vérifie que zenity est installé
    which zenity > /dev/null
    if [ $? -ne 0 ]
    then
        echo " "
        echo " le mode graphique nécessite zenity pour fonctionner."
        echo " Installez zenity ou utilisez uniquement le mode texte."
        echo " "
        clean_exit 3
    fi

    ## On vérifie qu'un display graphique est disponible
    if [ -z "$DISPLAY" ]
    then
        echo " "
        echo " Aucun serveur graphique disponible (variable DISPLAY vide)"
        echo " Si vous utilisez un serveur en mode texte uniquement,"
        echo " vous pouvez utiliser ce logiciel en mode console en tapant:"
        echo " "
        echo " $0 --term"
        echo " "
        clean_exit 3
    fi

    ## A-t-on bien les droits admin ?
    if [ $USER != "root" ]
    then
        zenity --error --text="Ce programme nécessite les droits root pour fonctioner.\nRelancez-le en tapant : gksudo $0"
        clean_exit 2
    fi

    if [ "$LAST_KERNEL" != "$KERNEL" ]
    then
        zenity --error --text="Vous utilisez actuellement le noyau $KERNEL\nOr, au moins un noyau plus récent ( $LAST_KERNEL ) a été détecté.\nCe phénomène peut avoir plusieurs causes mais,\npar sécurité, ce script va s'arrêter.\n\nSi vous souhaitez réellement supprimer ce (ou ces) noyaux,\nlancez kclean en ligne de commande."
        clean_exit 4
    fi
    
    ## Faut il conserver le noyau précédent ?
    if [ "$KEEP_PREV" = "FAUX" ]
    then
        zenity --question --text "Voulez vous conservez le noyau précédent ?"
        if [ $? -eq 0 ]
        then
            KEEP_PREV="VRAI"
        fi
    fi
    
    ## Y-a-t-il vraiment des paquets à supprimer ?
    ## S'il faut conserver le noyau précédent, on le supprime de la liste

    if [ "$KEEP_PREV" = "VRAI" -a ! -z "$PREVIOUS_V" ]
    then
        sed -i -e /$PREVIOUS_V/D /tmp/clean_kernel.tmp
    fi

    TEXT="Le noyau actuellement utilisé a pour version : <b>$KERNEL</b>.\n"
    if [ "$KEEP_PREV" = "VRAI" -a ! -z "$PREVIOUS_V" ]
    then
        TEXT="$TEXT Le noyau précédent a pour version : $PREVIOUS_V.\n"
    fi
    TEXT="$TEXT Aucun paquet faisant référence à un noyau plus ancien n'a été trouvé sur le système...\n\nAppuyez sur OK pour quitter le programme."

    if [ -z "`grep -v "$KERNEL" /tmp/clean_kernel.tmp`" ]
    then
        zenity --info --title "Netoyage dans les noyaux..." \
        --text="$TEXT"
        clean_exit 0
    fi

    ## Oui, il y a des paquets à supprimer...

    if [ "$FORCE_YES" = "VRAI" ]
    then
        TEXT="ATTENTION : L'option -f (force-yes) n'est pas prise en compte en mode graphique."
        zenity --warning --width=500 --height=200 --title "Nettoyage dans les noyaux..." --text="$TEXT"
    fi

    LISTE_PAQUET=""
    ## Construction de la liste des paquets à supprimer pour zenity
    ESPACE_TOTAL=0
    for i in `grep -v "$KERNEL" /tmp/clean_kernel.tmp` 
    do
        ESPACEKB=`dpkg -s $i | grep Installed-Size | awk '{print $2}'`
        ESPACE_TOTAL=$(($ESPACE_TOTAL+$ESPACEKB))
        ESPACEMB=$(($ESPACEKB / 1024))
        LISTE_PAQUET="$LISTE_PAQUET TRUE $i $ESPACEMB"
    done
    ESPACE_TOTAL=$(($ESPACE_TOTAL / 1024))
    TEXT="Vous utilisez actuellement la version <b>$KERNEL</b> de Linux.\n"
    if [ "$KEEP_PREV" = "VRAI" ]
    then
        TEXT="$TEXT Le noyau précédent a pour version : $PREVIOUS_V, il sera conservé.\n"
    fi
    TEXT="$TENT En cliquant sur <b>Valider</b> les paquets suivants seront supprimés:"

    CHOIX=$(zenity \
    --title "Nettoyage dans les noyaux" \
    --text="$TEXT" \
    --width=500 --height=400 \
    --list --print-column="3" --checklist --separator=' ' \
    --column="Supprimer" \
    --column="Nom des paquets" \
    --column="MiB" \
    --print-column=2 \
    $LISTE_PAQUET )

    ## Si on clique sur Annuler...
    if [ $? -ne 0 ]
    then
        clean_exit 2
    fi
    ## Sinon
    
    NBSUP=`echo $CHOIX | wc -w`
    PROGRES=0
    INCREMENT=`expr 100 / $NBSUP`
    (
    for i in `echo $CHOIX`
    do
        if [ "$SIMULATE" = "FAUX" ]
        then
            apt-get remove --purge --yes "$i" >/dev/null 2>&1
        fi
        PROGRES=$(($PROGRES+$INCREMENT))
        echo "$PROGRES"
        echo "# Suppression de $i"
    done
    ) | 
    zenity --progress --width=420 --auto-close --percentage=0 \
    --text="Suppression des paquets sélectionnés..."

    if [ "$SIMULATE" = "FAUX" ]
    then
        TEXTE_FINAL="Les paquets sélectionnés ont bien étés supprimés.\nSi tout était coché, vous avez libéré $ESPACE_TOTAL MiB sur le disque."
    else
        TEXTE_FINAL="Mode simulation terminé, aucun paquet supprimé."
    fi
    
    zenity --info --title "Nettoyage dans les noyaux..." \
    --text="$TEXTE_FINAL"
    clean_exit 0
fi

Dernière modification par f.x0 (Le 05/06/2016, à 13:02)


SOPI

Hors ligne

#681 Le 05/06/2016, à 14:20

erresse

Re : Nettoyage dans les noyaux (kernel)

Bonjour,

Après avoir nettoyé mes vieux noyaux (cette fois-ci il n'y en avait qu'un...) avec kclean, en conservant le noyau précédent, j'ai lancé :

sudo apt update && sudo apt full-upgrade

juste pour vérifier si quelque chose traînait encore à supprimer, et là, on me conseille de passer "apt-get autoremove" pour dégager le noyau que j'ai demandé à kclean de conserver !
Est-ce bien cohérent ? Et si on utilise autoremove pour nettoyer son système, est-ce que ça veut dire que conserver 2 versions de noyau n'est plus recommandé pour Ubuntu ?


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#682 Le 05/06/2016, à 23:14

lynn

Re : Nettoyage dans les noyaux (kernel)

f.x0 a écrit :

j'ai corriger les fautes d'ortographe que j'ai vues
(le reste du script n'est pas modifié :

Déjà proposé en #675. Mais on n'est jamais trop nombreux pour faire ce travail... smile


«C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!»

Coluche

Hors ligne

#683 Le 06/06/2016, à 09:41

Hoper

Re : Nettoyage dans les noyaux (kernel)

@lynn / @f.x0

Encore merci à tous les deux. Il faudrait savoir sur quelle version f.x0 s'est basé pour faire ses corrections... Est ce que l'un de vous deux peut faire un diff entre les deux versions et voir ce qu'il en ressort ?

@ar barzh paour
Merci pour l'info smile

est-ce que ça veut dire que conserver 2 versions de noyau n'est plus recommandé pour Ubuntu ?

Je crois que cette recommandation n'est jamais venue d'ubuntu...
Juste d'utilisateurs expérimentés à qui cela à toujours semblait logique de pouvoir faire marche arrière suite à l'installation d'un nouveau noyau.
Coté ubuntu, historiquement tous les noyaux étaient conservés. Mais peut être que cette politique à changée et qu'ils propose désormais de n'en garder qu'un...


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/atdc/
Mastodon: @hoper@framapiaf.org

Hors ligne

#684 Le 06/06/2016, à 09:56

f.x0

Re : Nettoyage dans les noyaux (kernel)

Je suis parti de ce script http://hoper.dnsalias.net/tdc/public/kclean .

Dès que je le pourrais je ferais un diff des 2 fichiers.


SOPI

Hors ligne

#685 Le 06/06/2016, à 12:34

Bougron

Re : Nettoyage dans les noyaux (kernel)

Hoper a écrit :

...
Coté ubuntu, historiquement tous les noyaux étaient conservés. Mais peut être que cette politique a changé et qu'il propose désormais de n'en garder qu'un...

Bonjour
Je suis actuellement sous la version 16.04.
Elle a été livrée avec le noyau 4.4.0.21    Le noyau actuel est 4.4.0.22,  Il est possible que j'ai fait la mise à jour de façon manuelle.
Tôt ou tard, il arrivera un nouveau noyau.  Je laisserais au logiciel le soin d'installer ce nouveau  noyau.
Comme c'est du mode graphique, on ne verra pas trop ce qui s'exécute,   A l'issue de cela je regarderais s'il a épuré des anciens noyaux.
Mais je ne me fais pas d'illusion.   UBUNTU ne va pas prévoir une épuration de noyau  en automatique....      Je ne suis même pas sur qu'il va suggérer que cette épuration est à faire.

Dernière modification par Bougron (Le 06/06/2016, à 12:36)

Hors ligne

#686 Le 06/06/2016, à 14:40

marcodel

Re : Nettoyage dans les noyaux (kernel)

salut

Bougron a écrit :

Comme c'est du mode graphique, on ne verra pas trop ce qui s'exécute,

meme en cliquant sur details ?
a+

Hors ligne

#687 Le 06/06/2016, à 14:53

erresse

Re : Nettoyage dans les noyaux (kernel)

Bougron a écrit :

Mais je ne me fais pas d'illusion.   UBUNTU ne va pas prévoir une épuration de noyau  en automatique....      Je ne suis même pas sur qu'il va suggérer que cette épuration est à faire.

Ben, c'est pourtant déjà ce que fait "apt-get autoremove" d'épurer automatiquement (quand ça marche) les vieux noyaux.
Sauf que, jusqu'ici, il me semble que les deux derniers noyaux étaient conservés...
La question que je me posais, au vu de la proposition de nettoyer l'avant-dernier, c'est donc : Est-ce que la politique actuelle est finalement de ne conserver que le dernier ?


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#688 Le 06/06/2016, à 15:14

Babdu89

Re : Nettoyage dans les noyaux (kernel)

Bonjour.
Kclean lancé en commande, et en graphique chez moi, depuis le même Os Hybryde/ubuntu 14.04 .

1465218299.png   dans Toile libre, un clic gauche pour agrandir les images.

1465218334.png


L'outil ne réagit pas de la même façon.

Avec l'option -k  on a l’équivalent de ce qui se passe en graphique.

Sans option, on doit choisir de garder ou pas les anciens noyaux.

Hier sur une xenial, (4.4.0-21  et 4.4.0-22)  j'ai testé Kclean en commande et en graphique mis en gardant le 4.4.0-21.

J'ai tenté de passer les commandes de erresse, il n'y a pas eu de proposition de virer le 4.4.0-21 .

Je vais repasser en xenial, pour voir le retour terminal.

@+.  Babdu89  .

Dernière modification par Babdu89 (Le 06/06/2016, à 15:27)


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#689 Le 06/06/2016, à 15:17

moko138

Re : Nettoyage dans les noyaux (kernel)

1) Actuellement, dans Trusty,
si on lance un autoremove (démarche volontaire)
et qu'aucun noyau n'est marqué comme "installé manuellement",
alors Trusty ne garde qu'un seul noyau :

:~$ lsb_release -d
Description:	Ubuntu 14.04.4 LTS
:~$
[[ $(apt-mark showmanual | egrep 'linux-.*[0-9]') ]] && sudo apt-mark auto $(apt-mark showmanual | egrep linux-.*[0-9])
:~$ ls /boot |grep initrd
initrd.img-3.13.0-86-generic
initrd.img-3.13.0-87-generic
:~$
:~$ sudo apt-get -s autoremove
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Les paquets suivants seront ENLEVÉS :
  linux-headers-3.13.0-86 linux-headers-3.13.0-86-generic
  linux-image-3.13.0-86-generic linux-image-extra-3.13.0-86-generic
0 mis à jour, 0 nouvellement installés, 4 à enlever et 2 non mis à jour.
Remv linux-headers-3.13.0-86-generic [3.13.0-86.131]
Remv linux-headers-3.13.0-86 [3.13.0-86.131]
Remv linux-image-extra-3.13.0-86-generic [3.13.0-86.131]
Remv linux-image-3.13.0-86-generic [3.13.0-86.131]
:~$

  - -

2) autoremove ne désinstalle pas les paquets marqués comme "installés manuellement".

-----
EDIT : ajout de la commande de marquage des noyaux en "auto".

Dernière modification par moko138 (Le 10/06/2016, à 16:37)


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#690 Le 06/06/2016, à 15:19

marcodel

Re : Nettoyage dans les noyaux (kernel)

re

erresse a écrit :

Ben, c'est pourtant déjà ce que fait "apt-get autoremove" d'épurer automatiquement (quand ça marche) les vieux noyaux.

autoremove , n'est pas lancer par le gestionnaire de mises a jour
c'est une action manuelle

erresse a écrit :

Sauf que, jusqu'ici, il me semble que les deux derniers noyaux étaient conservés..

apparemment , c'est toujours le cas

marcodel@marcodel-EasyNote-LS44HR:~$ sudo apt autoremove
[sudo] Mot de passe de marcodel : 
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
marcodel@marcodel-EasyNote-LS44HR:~$ ls /boot
abi-4.4.0-22-generic         memtest86+.bin
abi-4.4.0-23-generic         memtest86+.elf
config-4.4.0-22-generic      memtest86+_multiboot.bin
config-4.4.0-23-generic      System.map-4.4.0-22-generic
grub                         System.map-4.4.0-23-generic
initrd.img-4.4.0-22-generic  vmlinuz-4.4.0-22-generic
initrd.img-4.4.0-23-generic  vmlinuz-4.4.0-23-generic
marcodel@marcodel-EasyNote-LS44HR:~$ 

  

a+

Hors ligne

#691 Le 06/06/2016, à 15:28

moko138

Re : Nettoyage dans les noyaux (kernel)

En forum.ubuntu-fr.org/viewtopic.php?id=1970941&p=1, nany a écrit :
[[ $(apt-mark showmanual | egrep 'linux-.*[0-9]') ]] && sudo apt-mark auto $(apt-mark showmanual | egrep linux-.*[0-9])

Cette commande, traduite en langage humain dit ceci:

Si il existe des paquets de noyaux marqués comme installés manuellement, alors on les marque comme installés automatiquement.

marcodel, peux-tu passer cette commande puis lancer la simulation

sudo apt-get -s autoremove

?
Merci !


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#692 Le 06/06/2016, à 15:29

Babdu89

Re : Nettoyage dans les noyaux (kernel)

Babdu89 a écrit;
Je vais repasser en xenial, pour voir le retour terminal.

bernard@bernard-System-Product-Name:~$ sudo apt update && sudo apt full-upgrade
[sudo] Mot de passe de bernard : 
Ign:1 http://liveusb.info/multisystem/depot all InRelease
Atteint:2 http://ppa.launchpad.net/nemh/systemback/ubuntu xenial InRelease            
Atteint:3 http://liveusb.info/multisystem/depot all Release                                             
Atteint:4 http://archive.ubuntu.com/ubuntu xenial InRelease                                             
Atteint:5 http://ppa.launchpad.net/yannubuntu/boot-repair/ubuntu xenial InRelease                
Atteint:6 http://archive.ubuntu.com/ubuntu xenial-updates InRelease
Atteint:7 http://archive.ubuntu.com/ubuntu xenial-backports InRelease
Réception de:8 http://archive.ubuntu.com/ubuntu xenial-security InRelease [94,5 kB]
94,5 ko réceptionnés en 0s (109 ko/s)                          
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
12 packages can be upgraded. Run 'apt list --upgradable' to see them.
W: http://liveusb.info/multisystem/depot/dists/all/Release.gpg: Signature by key 32027DE3D67157C45E69C0AE4E940D7FDD7FB8CC uses weak digest algorithm (SHA1)
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Calcul de la mise à jour... Fait
Les paquets suivants seront mis à jour :
  compiz compiz-core compiz-gnome compiz-plugins-default libcompizconfig0 libdecoration0 libnm-glib-vpn1 libnm-glib4 libnm-util2 libnm0 network-manager openssh-client
12 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 4 540 ko dans les archives.
Après cette opération, 17,4 ko d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n] 
Réception de:1 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-client amd64 1:7.2p2-4ubuntu1 [586 kB]
Réception de:2 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libcompizconfig0 amd64 1:0.9.12.2+16.04.20160526-0ubuntu1 [118 kB]
Réception de:3 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 compiz-gnome amd64 1:0.9.12.2+16.04.20160526-0ubuntu1 [126 kB]
Réception de:4 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 compiz-plugins-default amd64 1:0.9.12.2+16.04.20160526-0ubuntu1 [815 kB]
Réception de:5 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdecoration0 amd64 1:0.9.12.2+16.04.20160526-0ubuntu1 [51,6 kB]
Réception de:6 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 compiz-core amd64 1:0.9.12.2+16.04.20160526-0ubuntu1 [312 kB]
Réception de:7 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 compiz all 1:0.9.12.2+16.04.20160526-0ubuntu1 [3 862 B]
Réception de:8 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libnm-util2 amd64 1.2.0-0ubuntu0.16.04.2 [127 kB]
Réception de:9 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libnm-glib-vpn1 amd64 1.2.0-0ubuntu0.16.04.2 [14,2 kB]                                                                                   
Réception de:10 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libnm-glib4 amd64 1.2.0-0ubuntu0.16.04.2 [84,0 kB]                                                                                      
Réception de:11 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libnm0 amd64 1.2.0-0ubuntu0.16.04.2 [353 kB]                                                                                            
Réception de:12 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 network-manager amd64 1.2.0-0ubuntu0.16.04.2 [1 950 kB]                                                                                 
4 540 ko réceptionnés en 12s (360 ko/s)                                                                                                                                                                            
(Lecture de la base de données... 219051 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../openssh-client_1%3a7.2p2-4ubuntu1_amd64.deb ...
Dépaquetage de openssh-client (1:7.2p2-4ubuntu1) sur (1:7.2p2-4) ...
Préparation du dépaquetage de .../libcompizconfig0_1%3a0.9.12.2+16.04.20160526-0ubuntu1_amd64.deb ...
Dépaquetage de libcompizconfig0:amd64 (1:0.9.12.2+16.04.20160526-0ubuntu1) sur (1:0.9.12.2+16.04.20160415-0ubuntu1) ...
Préparation du dépaquetage de .../compiz-gnome_1%3a0.9.12.2+16.04.20160526-0ubuntu1_amd64.deb ...
Dépaquetage de compiz-gnome (1:0.9.12.2+16.04.20160526-0ubuntu1) sur (1:0.9.12.2+16.04.20160415-0ubuntu1) ...
Préparation du dépaquetage de .../compiz-plugins-default_1%3a0.9.12.2+16.04.20160526-0ubuntu1_amd64.deb ...
Dépaquetage de compiz-plugins-default:amd64 (1:0.9.12.2+16.04.20160526-0ubuntu1) sur (1:0.9.12.2+16.04.20160415-0ubuntu1) ...
Préparation du dépaquetage de .../libdecoration0_1%3a0.9.12.2+16.04.20160526-0ubuntu1_amd64.deb ...
Dépaquetage de libdecoration0:amd64 (1:0.9.12.2+16.04.20160526-0ubuntu1) sur (1:0.9.12.2+16.04.20160415-0ubuntu1) ...
Préparation du dépaquetage de .../compiz-core_1%3a0.9.12.2+16.04.20160526-0ubuntu1_amd64.deb ...
Dépaquetage de compiz-core (1:0.9.12.2+16.04.20160526-0ubuntu1) sur (1:0.9.12.2+16.04.20160415-0ubuntu1) ...
Préparation du dépaquetage de .../compiz_1%3a0.9.12.2+16.04.20160526-0ubuntu1_all.deb ...
Dépaquetage de compiz (1:0.9.12.2+16.04.20160526-0ubuntu1) sur (1:0.9.12.2+16.04.20160415-0ubuntu1) ...
Préparation du dépaquetage de .../libnm-util2_1.2.0-0ubuntu0.16.04.2_amd64.deb ...
Dépaquetage de libnm-util2:amd64 (1.2.0-0ubuntu0.16.04.2) sur (1.1.93-0ubuntu4) ...
Préparation du dépaquetage de .../libnm-glib-vpn1_1.2.0-0ubuntu0.16.04.2_amd64.deb ...
Dépaquetage de libnm-glib-vpn1:amd64 (1.2.0-0ubuntu0.16.04.2) sur (1.1.93-0ubuntu4) ...
Préparation du dépaquetage de .../libnm-glib4_1.2.0-0ubuntu0.16.04.2_amd64.deb ...
Dépaquetage de libnm-glib4:amd64 (1.2.0-0ubuntu0.16.04.2) sur (1.1.93-0ubuntu4) ...
Préparation du dépaquetage de .../libnm0_1.2.0-0ubuntu0.16.04.2_amd64.deb ...
Dépaquetage de libnm0:amd64 (1.2.0-0ubuntu0.16.04.2) sur (1.1.93-0ubuntu4) ...
Préparation du dépaquetage de .../network-manager_1.2.0-0ubuntu0.16.04.2_amd64.deb ...
Dépaquetage de network-manager (1.2.0-0ubuntu0.16.04.2) sur (1.1.93-0ubuntu4) ...
Traitement des actions différées (« triggers ») pour man-db (2.7.5-1) ...
Traitement des actions différées (« triggers ») pour libc-bin (2.23-0ubuntu3) ...
Traitement des actions différées (« triggers ») pour gconf2 (3.2.6-3ubuntu6) ...
Traitement des actions différées (« triggers ») pour libglib2.0-0:amd64 (2.48.0-1ubuntu4) ...
Traitement des actions différées (« triggers ») pour bamfdaemon (0.5.3~bzr0+16.04.20160523-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Traitement des actions différées (« triggers ») pour gnome-menus (3.13.3-6ubuntu3) ...
Traitement des actions différées (« triggers ») pour desktop-file-utils (0.22-1ubuntu5) ...
Traitement des actions différées (« triggers ») pour mime-support (3.59ubuntu1) ...
Traitement des actions différées (« triggers ») pour systemd (229-4ubuntu6) ...
Traitement des actions différées (« triggers ») pour ureadahead (0.100.0-19) ...
ureadahead will be reprofiled on next reboot
Traitement des actions différées (« triggers ») pour dbus (1.10.6-1ubuntu3) ...
Paramétrage de openssh-client (1:7.2p2-4ubuntu1) ...
Paramétrage de compiz-core (1:0.9.12.2+16.04.20160526-0ubuntu1) ...
Paramétrage de libcompizconfig0:amd64 (1:0.9.12.2+16.04.20160526-0ubuntu1) ...
Paramétrage de libdecoration0:amd64 (1:0.9.12.2+16.04.20160526-0ubuntu1) ...
Paramétrage de compiz-plugins-default:amd64 (1:0.9.12.2+16.04.20160526-0ubuntu1) ...
Paramétrage de compiz-gnome (1:0.9.12.2+16.04.20160526-0ubuntu1) ...
Paramétrage de compiz (1:0.9.12.2+16.04.20160526-0ubuntu1) ...
Paramétrage de libnm-util2:amd64 (1.2.0-0ubuntu0.16.04.2) ...
Paramétrage de libnm-glib-vpn1:amd64 (1.2.0-0ubuntu0.16.04.2) ...
Paramétrage de libnm-glib4:amd64 (1.2.0-0ubuntu0.16.04.2) ...
Paramétrage de libnm0:amd64 (1.2.0-0ubuntu0.16.04.2) ...
Paramétrage de network-manager (1.2.0-0ubuntu0.16.04.2) ...
Traitement des actions différées (« triggers ») pour libc-bin (2.23-0ubuntu3) ...
bernard@bernard-System-Product-Name:~$ sudo apt-get autoremove
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
bernard@bernard-System-Product-Name:~$ 

Non , çà ne propose toujours pas de virer le 4.4.0-21 avec autoremove.

@marcodel.

Pour avoir le 4.4.0-23 , tu as le Proposed coché dans le source liste?.

1465220085.png

@+.  Babdu89  .

Dernière modification par Babdu89 (Le 06/06/2016, à 15:35)


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#693 Le 06/06/2016, à 15:34

marcodel

Re : Nettoyage dans les noyaux (kernel)

re

moko138 a écrit :

  marcodel, peux-tu passer cette commande puis lancer la simulation

 marcodel@marcodel-EasyNote-LS44HR:~$ [[ $(apt-mark showmanual | egrep 'linux-.*[0-9]') ]] && sudo apt-mark auto $(apt-mark showmanual | egrep linux-.*[0-9])
marcodel@marcodel-EasyNote-LS44HR:~$ sudo apt-get -s autoremove
[sudo] Mot de passe de marcodel : 
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
marcodel@marcodel-EasyNote-LS44HR:~$ 
 

a+

Hors ligne

#694 Le 06/06/2016, à 15:35

moko138

Re : Nettoyage dans les noyaux (kernel)

Babdu89, puis-je te proposer le même test que celui proposé à marcodel en #691 ?


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#695 Le 06/06/2016, à 15:36

moko138

Re : Nettoyage dans les noyaux (kernel)

Merci marcodel !


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#696 Le 06/06/2016, à 15:38

Babdu89

Re : Nettoyage dans les noyaux (kernel)

Salut moko,

Voila.

bernard@bernard-System-Product-Name:~$ [[ $(apt-mark showmanual | egrep 'linux-.*[0-9]') ]] && sudo apt-mark auto $(apt-mark showmanual | egrep linux-.*[0-9])
bernard@bernard-System-Product-Name:~$ sudo apt-get -s autoremove
[sudo] Mot de passe de bernard : 
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
bernard@bernard-System-Product-Name:~$ 

@+.   Babdu89  .


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#697 Le 06/06/2016, à 15:38

marcodel

Re : Nettoyage dans les noyaux (kernel)

re
@Babdu89
oui
a+

Hors ligne

#698 Le 06/06/2016, à 15:40

Babdu89

Re : Nettoyage dans les noyaux (kernel)

Merci.

Ne pas oublier;

bernard@bernard-System-Product-Name:~$ kclean -h
 
 Syntaxe : /usr/bin/kclean [options]
 Options disponibles : 
	-t	--term		Lance le script en mode console (mode par defaut)
	-g	--gui		Lance le script en mode graphique
	-k	--keep-prev	Conserve automatiquement le noyau precedent
	-s	--simulate	Aucune suppression reelle, simple simulation
	-h	--help		Affichage de la syntaxe
	-f	--force-yes	Suppression sans aucune demande de confirmation !
	-v	--version	Informations sur les versions
 
 Exemple d'utilisation en ligne de commande : sudo kclean -k 
 
bernard@bernard-System-Product-Name:~$ 

@+.   Babdu89  .


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne

#699 Le 06/06/2016, à 15:42

moko138

Re : Nettoyage dans les noyaux (kernel)

Merci Babdu89 !
Alors il semble qu'avec 16.04 *buntu soit revenu à "autoremove garde les 2 derniers noyaux".
(Ou alors c'est ma xub 14.04 32b qui est spéciale... smile )
  - -
[HS] Tu n'as pas les pieds dans l'eau ?
[/HS]


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#700 Le 06/06/2016, à 15:46

Babdu89

Re : Nettoyage dans les noyaux (kernel)

@moko138

[HS] Tu n'as pas les pieds dans l'eau ?
[/HS]

Non, nous sommes sur un coteau, bien au dessus de l'Yonne. Quel malheur pour tous les sinistrés...

@+.   Babdu89  .


J'ai découvert Ubuntu avec la 07.10.... Et alors?!...  Depuis je regarde de temps en temps si Windows marche toujours....

Hors ligne