Re: Fwd: J'arrive pas à vider /lib pour une mise à jour du noyau
Le 23/05/2018 14:40, Pascal Hambourg a écrit :
Le 23/05/2018 à 09:13, kaliderus a écrit :
contre-partie est qu'il faut disposer d'un espace libre égal à la
taille
occupée par le paquet. Pour le noyau 3.16 de Jessie, c'est environ
160 Mio.
11 Mio est donc très insuffisant pour mettre à jour le noyau.
Ce que je n'explique pas c'est que l'espace qui sera utilisé n'a pas à
augmenter, le message est clair sur ce point.
Qu'est-ce qui n'est pas clair dans ce que j'ai expliqué ci-dessus ?
Pour faire une mise à jour d'un paquet, il faut disposer d'un espace
libre égal à la taille occupée par le paquet. Il faut donc 160 Mio
libres pour mettre à jour le noyau. Cet espace sera occupé
temporairement pendant la mise à jour pour installer les fichiers de
la nouvelle version du paquet puis libéré à la fin de la mise à jour
lorsque les fichiers de l'ancienne version du paquet seront supprimés.
À noter qu'une "mise à jour" du noyau est différente d'une mise à jour
d'un paquet standard, puisque généralement c'est un nouveau paquet qui
est installé, et donc le nouveau noyau consomme de la place en plus même
après que apt ait terminé la mise à jour.
Peut-être as-tu des noyaux installés dont tu n'as plus besoin ?
Pour un noyau ce qui prend de la place dans /lib ce sont les modules, le
noyau lui-même étant installé dans /boot (qui est soumis au même
problème en cas de petite partition /boot).
Par exemple sur mon système j'ai pas mal de noyau installés on dirait:
% ls -l /lib/modules
total 24K
drwxr-xr-x 3 root root 4,0K oct. 2 2017 3.16.0-4-amd64/
drwxr-xr-x 2 root root 4,0K oct. 2 2017 3.2.0-4-amd64/
drwxr-xr-x 2 root root 4,0K mars 4 17:56 4.9.0-3-amd64/
drwxr-xr-x 2 root root 4,0K mars 4 17:56 4.9.0-4-amd64/
drwxr-xr-x 3 root root 4,0K janv. 7 02:35 4.9.0-5-amd64/
drwxr-xr-x 3 root root 4,0K mai 6 00:01 4.9.0-6-amd64/
Tu peux trouver la taille occupée par chaque répertoire:
% du -h --max-depth=1 /lib/modules
163M /lib/modules/3.16.0-4-amd64
3,9M /lib/modules/4.9.0-4-amd64
2,9M /lib/modules/3.2.0-4-amd64
185M /lib/modules/4.9.0-5-amd64
188M /lib/modules/4.9.0-6-amd64
3,9M /lib/modules/4.9.0-3-amd64
546M /lib/modules
On remarque que certains prennent peu de place, en fait ces noyaux ont
été désinstallés mais il reste les fichiers générés par la commande
depmod (non contenus dans le paquet, générés par un script
post-install):
% ls /lib/modules/3.2.0-4-amd64
modules.alias modules.alias.bin modules.builtin.bin modules.dep
modules.dep.bin modules.devname modules.softdep modules.symbols
modules.symbols.bin
% uname -r
4.9.0-5-amd64
Le noyau courant est le 4.9.0-5-amd64, donc je peux probablement
désinstaller le noyau 3.16.0-4-amd64 pour faire de la place. Pour cela
je dois spécifier la version à supprimer:
% sudo apt remove linux-image-3.16.0-4-amd64
Paul
Reply to: