Les vieux noyaux

gerard-ll Membre non connecté
-
- Voir le profil du membre gerard-ll
- Inscrit le : 09/12/2011
- Groupes :
Je viens de faire le ménage dans mes vieux noyaux!

J'avais tout ça :
Caché :
Code TEXT :
[gerard@localhost ~]$ rpm -qa | grep kernel-desktop kernel-desktop-5.10.78-1.mga8-1-1.mga8 kernel-desktop-5.10.27-1.mga8-1-1.mga8 kernel-desktop-5.10.60-2.mga8-1-1.mga8 kernel-desktop-5.10.30-1.mga8-1-1.mga8 kernel-desktop-5.10.56-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.60-2.mga8-1-1.mga8 kernel-desktop-devel-5.10.52-1.mga8-1-1.mga8 kernel-desktop-5.10.43-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.45-2.mga8-1-1.mga8 kernel-desktop-devel-5.10.62-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.48-1.mga8-1-1.mga8 kernel-desktop-5.10.70-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.56-1.mga8-1-1.mga8 kernel-desktop-5.10.45-2.mga8-1-1.mga8 kernel-desktop-devel-5.10.16-1.mga8-1-1.mga8 kernel-desktop-5.10.37-2.mga8-1-1.mga8 kernel-desktop-devel-5.10.30-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.41-1.mga8-1-1.mga8 kernel-desktop-latest-5.10.78-1.mga8 kernel-desktop-devel-5.10.46-1.mga8-1-1.mga8 kernel-desktop-5.10.41-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.70-1.mga8-1-1.mga8 kernel-desktop-5.10.46-1.mga8-1-1.mga8 kernel-desktop-5.10.62-1.mga8-1-1.mga8 kernel-desktop-devel-latest-5.10.78-1.mga8 kernel-desktop-devel-5.10.33-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.43-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.75-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.78-1.mga8-1-1.mga8 kernel-desktop-5.10.75-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.37-2.mga8-1-1.mga8 kernel-desktop-5.10.48-1.mga8-1-1.mga8 kernel-desktop-5.10.16-1.mga8-1-1.mga8 kernel-desktop-5.10.52-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.27-1.mga8-1-1.mga8 kernel-desktop-5.10.33-1.mga8-1-1.mga8
Et je n'ai plus que ça :
Caché :
Code TEXT :
[gerard@localhost ~]$ rpm -qa | grep kernel-desktop kernel-desktop-5.10.78-1.mga8-1-1.mga8 kernel-desktop-latest-5.10.78-1.mga8 kernel-desktop-devel-latest-5.10.78-1.mga8 kernel-desktop-devel-5.10.75-1.mga8-1-1.mga8 kernel-desktop-devel-5.10.78-1.mga8-1-1.mga8 kernel-desktop-5.10.75-1.mga8-1-1.mga8
Tout ça pour dire que j'ai gagné 3 Gio!!!
Incroyable la place que ça prend des vieux noyaux tout de même.

Pal mal Mageia!
@+
Gérard
@+
Gérard

DéBé Membre non connecté
-
- Voir le profil du membre DéBé
- Inscrit le : 30/01/2010
- Groupes :

Finistère - Matériel : Desktop :Mga 9 x86-64 sur SSD 120 Go Plasma5 - Intel I5-6500 3,2 Ghz /Ram 8 Go --Lenovo T 410 Mga 9 x86-64 Plasma 5 Le monde ne sera pas détruit par ceux qui font le mal, mais par ceux qui les regardent sans rien faire.” Albert Einstein

gerard-ll Membre non connecté
-
- Voir le profil du membre gerard-ll
- Inscrit le : 09/12/2011
- Groupes :

Pal mal Mageia!
@+
Gérard
@+
Gérard

teutates Membre non connecté
-
- Voir le profil du membre teutates
- Inscrit le : 24/09/2011
- Site internet
- Groupes :
Sous Fedora, il est possible de limiter automatiquement le nombre de noyaux. Je ne sais pas si cela est possible avec Mageia.
Sous Fedora, l'astuce est la suivante :
Caché :
1) Fixer le nombre de noyaux par défaut à 5
$ sudo nano /etc/dnf/dnf.conf
installonly_limit=5
2) Conserver un noyau
$ sudo nano /etc/dnf/dnf.conf
# Ajouter
exclude=kernel*
$ sudo nano /etc/dnf/dnf.conf
installonly_limit=5
2) Conserver un noyau
$ sudo nano /etc/dnf/dnf.conf
# Ajouter
exclude=kernel*
Toco y se gausos !
Asus P8Z68-V/GEN3 + Intel Core i2700k + RAM G-Skill 4x4Go PC 12800 + Gainward Geforce GTX 560 - 2 Go + Western Digital Velociraptor 300 Go (Mageia Cauldron / Fedora / Debian / Manjaro / Windows 10) + Seagate Barracuda 7200t/mn - 2 To - Sata 3 (data) + SSD Samsung 64 Go - Sata 3 (Mageia stable)
Asus P8Z68-V/GEN3 + Intel Core i2700k + RAM G-Skill 4x4Go PC 12800 + Gainward Geforce GTX 560 - 2 Go + Western Digital Velociraptor 300 Go (Mageia Cauldron / Fedora / Debian / Manjaro / Windows 10) + Seagate Barracuda 7200t/mn - 2 To - Sata 3 (data) + SSD Samsung 64 Go - Sata 3 (Mageia stable)
Un script pour supprimer les vieux noyaux :
#!/bin/bash
# Remove old kernels safely and cleanly. As it uses urpme, grub is automatically updated.
#
# LISTK contains the list of kernels to analyse
# The script keep the NBK most recents for each of them
# Pierre Jarillon - 3 avril 2018 - Tested on Mageia 5..8
# Jean-Baptiste Biernacki 2021
# rev 2021-08-07 PJ
# Script permettant de supprimer les anciens kernels
# Si il est lancé en tant que root, il propose de supprimer les kernels écrits en rouge. Si on le lance sans être root, il fait le test de la même façon mais affiche "Must be root" et se termine.
# Nouvelle version ajoutant la protection du noyau en cours et des options.
# Utilisation : remove-old-kernels : [-a] [-d] [-n valeur]
# -a = automatique, pas de question. Interactif si non spécifié
# -d = mode débogage ou test, rien n'est supprimé, urpme est simulé
# -n valeur = nombre de noyaux à garder (-n3 ou -n 3 garde 3 noyaux), Min=2, Défaut=2
# Par exemple remove-old-kernels -d -a ( ou -ad ou -ad) permet de simuler un mode automatique sans rien modifier.
# Ce script peut être lancé avec plusieurs options. Pour les afficher :
# remove-old-kernels -?
# Seul root peut réduire le nombre de kernels. Lancé avec un autre compte, on
# obtient un état des noyaux présents et des packages rpm correspondants.
# Avec le mode -t (ou -d) les modifications sont simulées.
VERSION="Remove-old-kernels 0.9 \n"
DEBUG=0 # 1 for debug/test mode, urpme is simulated and not applied
NBK=2 # Number of kernels to keep
MODE="I" # mode A)utomatic, I)nteractve
VISU=0 # If VISU=1, show commands which can be used
USAGE=\
"Usage: %s: [-a] [-d] [-t] [-n value] [-p]
-a = automatic, no question. Interactive if not specified
-d or -t = Debug or test mode, nothing is removed, urpme is simulated
-n value = number of kernels to keep (-n3 or -n 3 keep 3 kernels), Min=2, Default=2
-p = show (print) the urpme commands which can be used
-v = version
-? or -h = show this help.
Old kernels are removed safely and cleanly. As urpme is used, grub is automatically updated.\n
"
# Colors
Normal="\033[0m"
Green="\033[32m"
Red="\033[31m"
GrBg="\033[102;30m" # Green Background
ClearLine="\r\033[2K" # Clear the line
LISTK=\
"kernel-desktop586
kernel-desktop
kernel-desktop-devel
kernel-server
kernel-server-devel
kernel-source
kernel-tmb-desktop
kernel-tmb-desktop-devel
kernel-tmb-source
kernel-linus
kernel-linus-devel
kernel-linus-source
"
#Parsing arguments
if [[ ${#} -gt 0 ]] ; then
while getopts adtpvn:?h NAME ; do
case ${NAME} in
a) MODE="A";;
d|t) DEBUG=1 ;;
p) VISU=1 ;;
n) NBK=${OPTARG} ;;
v) printf "${VERSION}"
exit 2;;
?|h) printf "${USAGE}" ${0}
exit 2;;
esac
done
if [[ ${NBK} -lt 2 ]]; then
NBK=2 # Unsafe if less
fi
fi
# Get the release of the current kernel
CURK=$(uname -r | cut -d- -f1)
# Storage for the list of kernels to remove
TMPKTR=$(mktemp)
# Check storage usage on root partition
OCCDISK1=$(df -B 1k -l --output=used / | tail -n1 | awk '{ print $1 }')
#================================= Analyse /boot/ =============================
NK=$(ls /boot/vmlinuz*.mga* | wc -l)
echo -e "${GrBg} Number of kernels in /boot/ : ${NK} ${Normal} "
#================================= Analyse rpm =============================
for kernelType in ${LISTK} ; do
echo -ne "${ClearLine}"
echo -ne "\r ==> ${kernelType}"
export n=0;
installedKernelCounter=0;
rpm -qa --last "${kernelType}-[0-9]*" | while read installedKernel ; do
# Not possible, as it is kernelType-[0-9]andAnything and kernelType-lastest is not included.
# [ $(echo ${installedKernel} | grep "latest" | wc -l ) -eq 1 ] && continue # Security
installedKernelCounter=$((${installedKernelCounter} + 1))
#Return to the line if there exists at least one installedKernel of this kernelType
if [[ ${installedKernelCounter} -eq 1 ]] ; then echo "" ; fi
installedKernelPackage=$(echo ${installedKernel} | cut -d ' ' -f 1 )
if [[ $(echo ${installedKernel} | grep ${CURK} | wc -l ) -eq 1 ]] ; then
NOTA="used now " # current kernel
REMVBL=0 # not removable
else
NOTA="" # not currently used
REMVBL=1 # is removable
fi
if [[ ${installedKernelCounter} -gt $NBK ]] ; then
if [[ ${REMVBL} -ne 1 ]] ; then
echo -e "\r ${installedKernelCounter} : keep : ${Green}${installedKernel} ${Normal}${NOTA}"
else
echo -e "\r ${installedKernelCounter} : remove : ${Red}${installedKernel} ${Normal}${NOTA}"
echo ${installedKernelPackage} >>${TMPKTR}
fi
else
echo -e "\r ${installedKernelCounter} : keep : ${Green}${installedKernel} ${Normal}${NOTA}"
fi
done
done
echo -e "${ClearLine}"
#================================= Mode of execution ===================
nbt=$(cat ${TMPKTR} | wc -l)
if [[ ${nbt} -ne 0 ]] ; then
if [[ $(id -u) -ne 0 ]] ; then
echo "Must be root to allow urpme"
if [ ${VISU} -eq 1 ]; then
for f in $(tac ${TMPKTR}) ; do
echo "urpme ${f}"
done
fi
else
if [[ ${MODE} != "A" ]] ; then
if [[ ${DEBUG} -eq 1 ]] ; then
echo -e "\n${Green}>> Debug/test mode is on - kernels won't be removed <<${Normal}"
fi
plural="s" ; [ ${nbt} -eq 1 ] && plural=""
read -p "Remove ${nbt} kernel${plural} ? y/N/i (i=confirm for each) " -n 1 response
if [[ -z ${response} ]] ; then response="n" ; fi
case ${response} in
[Yy])
AUTO="--auto"
ASK=0
MODE="A"
echo -e " \n" ;;
[Ii])
AUTO="--auto"
MODE="I"
echo " interactif" ;;
*)
echo -e "\nAborted"
rm -f ${TMPKTR}
exit 0 ;;
esac
fi
#================================= Execution ===========================
for installedKernelPackage in $(tac ${TMPKTR}) ; do
if [[ ${MODE} = "I" ]] ; then # --- interactive mode ---
read -p "Remove ${installedKernelPackage} ? y/N/q (q=quit/abort) " -n 1 response
if [[ -z ${response} ]] ; then response="N" ; fi
case ${response} in
[Yy])
if [[ ${DEBUG} -eq 1 ]] ; then
echo "\nDEBUG: Could execute: urpme ${AUTO} ${installedKernelPackage}"
nbt=$((${nbt} - 1))
else
urpme ${installedKernelPackage}
nbt=$((${nbt} - 1))
fi
;;
[qQ])
echo -e "\nAborted"
rm -f ${TMPKTR}
exit 0 ;;
*)
#echo "do nothing"
continue
;;
esac
else # --- automatic mode ---
if [[ ${DEBUG} -eq 1 ]] ; then
echo "DEBUG: Could execute: urpme ${AUTO} ${installedKernelPackage}"
nbt=$((${nbt} - 1))
else
#echo "Here is the execution"
urpme ${AUTO} ${installedKernelPackage}
nbt=$((${nbt} - 1))
fi
fi
done
NK=$(ls /boot/vmlinuz*.mga? | wc -l)
OCCDISK2=$(df -B 1k -l --output=used / | tail -n1 | awk '{ print $1 }')
echo -e "${GrBg} Gain : $((OCCDISK1 - OCCDISK2)) k - Kernels in /boot/: ${NK} ${Normal}"
fi
fi
rm -f ${TMPKTR}
# Run again if some removable kernels are left
[ $(id -u) -ne 0 ] && exit 0
[ ${MODE} != "I" ] && exit 0
[ ${nbt} -gt 0 ] && ${0}
joel

gerard-ll Membre non connecté
-
- Voir le profil du membre gerard-ll
- Inscrit le : 09/12/2011
- Groupes :
joel :
Bonjour,
Un script pour supprimer les vieux noyaux :
Un script pour supprimer les vieux noyaux :
Ah merci joel!
Ca fonctionne?
Un bien gros script en fin de compte.
Vu que j'ai fait ça à la main, je n'ai pas pensé à regarder les kernel-linus, kernel-server, kernel-server-devel, kernel-source, kernel-tmb-desktop, ect...
Je ne savais même pas que ça existait.
J'ai juste supprimé les kernel-desktop, kernel-desktop-devel.
Pal mal Mageia!
@+
Gérard
@+
Gérard

gerard-ll Membre non connecté
-
- Voir le profil du membre gerard-ll
- Inscrit le : 09/12/2011
- Groupes :
teutates :
Sous Fedora, il est possible de limiter automatiquement le nombre de noyaux.
Bonjour,
Et est-ce que ça installe les nouveaux noyaux si on limite à cinq le nombre de noyaux?
Pal mal Mageia!
@+
Gérard
@+
Gérard

DéBé Membre non connecté
-
- Voir le profil du membre DéBé
- Inscrit le : 30/01/2010
- Groupes :
gerard-II :
joel :
Bonjour,
Un script pour supprimer les vieux noyaux :
Ah merci joel!
Ca fonctionne?
Bonjour,
Un script pour supprimer les vieux noyaux :
Ah merci joel!
Ca fonctionne?
Installé chez moi, ça fonctionne parfaitement. On peut le lancer comme simple user, juste pour voir sans rien effacer. Et après comme SU si on est OK.
Finistère - Matériel : Desktop :Mga 9 x86-64 sur SSD 120 Go Plasma5 - Intel I5-6500 3,2 Ghz /Ram 8 Go --Lenovo T 410 Mga 9 x86-64 Plasma 5 Le monde ne sera pas détruit par ceux qui font le mal, mais par ceux qui les regardent sans rien faire.” Albert Einstein

gerard-ll Membre non connecté
-
- Voir le profil du membre gerard-ll
- Inscrit le : 09/12/2011
- Groupes :
DéBé :
Installé chez moi, ça fonctionne parfaitement. On peut le lancer comme simple user, juste pour voir sans rien effacer. Et après comme SU si on est OK.
Ah ok, merci de l'info.
Pal mal Mageia!
@+
Gérard
@+
Gérard

teutates Membre non connecté
-
- Voir le profil du membre teutates
- Inscrit le : 24/09/2011
- Site internet
- Groupes :
gerard-ll :
Bonjour,
Et est-ce que ça installe les nouveaux noyaux si on limite à cinq le nombre de noyaux?
teutates :
Sous Fedora, il est possible de limiter automatiquement le nombre de noyaux.
Bonjour,
Et est-ce que ça installe les nouveaux noyaux si on limite à cinq le nombre de noyaux?
Lorsque un nouveau noyau est installé (sudo dnf update), la limitation du nombre de noyau entraine la desinstallation du plus ancien noyau éventuellement afin de respecter la limite. C'est automatisé et pratique.
Toco y se gausos !
Asus P8Z68-V/GEN3 + Intel Core i2700k + RAM G-Skill 4x4Go PC 12800 + Gainward Geforce GTX 560 - 2 Go + Western Digital Velociraptor 300 Go (Mageia Cauldron / Fedora / Debian / Manjaro / Windows 10) + Seagate Barracuda 7200t/mn - 2 To - Sata 3 (data) + SSD Samsung 64 Go - Sata 3 (Mageia stable)
Asus P8Z68-V/GEN3 + Intel Core i2700k + RAM G-Skill 4x4Go PC 12800 + Gainward Geforce GTX 560 - 2 Go + Western Digital Velociraptor 300 Go (Mageia Cauldron / Fedora / Debian / Manjaro / Windows 10) + Seagate Barracuda 7200t/mn - 2 To - Sata 3 (data) + SSD Samsung 64 Go - Sata 3 (Mageia stable)

gerard-ll Membre non connecté
-
- Voir le profil du membre gerard-ll
- Inscrit le : 09/12/2011
- Groupes :
teutates :
Lorsque un nouveau noyau est installé (sudo dnf update), la limitation du nombre de noyau entraine la desinstallation du plus ancien noyau éventuellement afin de respecter la limite. C'est automatisé et pratique.
Ah oui ok.

Pal mal Mageia!
@+
Gérard
@+
Gérard

OPS56 Membre non connecté
-
- Voir le profil du membre OPS56
- Inscrit le : 18/11/2008
- Groupes :
Très bien se script Joel

Je pensais avoir fait le ménage récemment, mais en fait, ça s'accumule très vite tous ces noyaux. 1,8 Go de gagné en quelques minutes

Je vais le faire tourner sur les autres machines de la maison.
@+

Dell G3-15 Intel Corei7 - 16Go Ram - Nvidia GTX1660 Ti (Tri boot Mageia 9- 64 bits / Linux Mint 20 Cinamon/ Windows 10)
Core i5 760 - 8Go Ram - Nvidia Gforce 450 - (Triple boot Mageia 9-64 bits - Plasma 5 / Mint 20 Cinamon / Open Suse Tumbleweed - Plasma 5)

zatox Membre non connecté
-
- Voir le profil du membre zatox
- Inscrit le : 27/09/2011
- Groupes :
joel super ton script pour supprimer les noyaux, juste un truc:
à la fin de la suppression il propose d'éliminer les orphelins: urpme --auto-orphans
de mémoire par le passé il y avait pas mal de problèmes avec cette commande, est-ce que tu sais ce qu'il en est aujourd'hui ?

Carte mère Gigabyte B650 AORUS ELITE AX V1.0 WiFi
Processeur AMD® 8 coeurs RYZEN 7 - 7700X (sans ventirad)
(2) Mémoire de 16 Go DDR5 @ 5600 MHz CL46 Crucial PRO
Carte video RX 7700 XT PULSE, SAPPHIRE®, 12 Go DDR6x
Disque SSD 2 To Gen.4 NVMe Samsung M.2 990 PRO
Carte réseau AMD® M.2 WI-FI 6E RZ616
Processeur AMD® 8 coeurs RYZEN 7 - 7700X (sans ventirad)
(2) Mémoire de 16 Go DDR5 @ 5600 MHz CL46 Crucial PRO
Carte video RX 7700 XT PULSE, SAPPHIRE®, 12 Go DDR6x
Disque SSD 2 To Gen.4 NVMe Samsung M.2 990 PRO
Carte réseau AMD® M.2 WI-FI 6E RZ616

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Je ne vois pas dans le script d' appel explicite au urpme --auto-orphan. Il est donc possible que ce soit le comportement d' urpme par défaut qui s' applique ( ici juste une suggestion qu' il serait possible de supprimer des orphelins). Les précautions d' usage devraient toujours s' appliquer autant qu' auparavant sur cette commande ( par le biais des dépendances il est toujours possible de supprimer malencontreusement un (ou plusieurs) paquet(s) important(s)).
OPS56 :
Très bien se script Joel 

Merci
joel
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie