Packages pouvant être supprimés sur LFS

Signaler
Messages postés
17
Date d'inscription
lundi 5 octobre 2020
Statut
Membre
Dernière intervention
23 février 2021
-
Messages postés
29586
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
26 février 2021
-
Bonsoir
Après avoir installé une machine virtuelle LFS 8.3 (Linux from scratch), et avoir supprimé le dossier /sources et /tools il me reste 2.5 Go d'espace utilisé dont :


Mon but est de réduire au maximum (vers les 300 MB) ou moins, ce système linux LFS.
Auriez-vous une idée des packages non nécessaires que je peux supprimer sereinement, sans casser le système ?
Merci !

3 réponses

Messages postés
29586
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
26 février 2021
7 033
Bonjour,

Cela dépend de tes besoins et sans la liste des paquets installés, on ne peut pas vraiment répondre. Mais si actuellement tu n'est déjà plus qu'à 2 Gio, c'est déjà une installation assez réduite.

Au risque de faire une tautologie, ma recommandation serait, pour être sûr d'avoir quelque chose de minimal, de faire... une installation minimale, et d'installer ensuite au fil de l'eau ce qui te manque.

Bonne chance
Messages postés
17
Date d'inscription
lundi 5 octobre 2020
Statut
Membre
Dernière intervention
23 février 2021

@mamiemando
Bonsoir et merci de votre réponse
En fait j'ai utilisé ALFS (Automated Linux from scratch) pour créer d'abord la version classique de LFS, ensuite l'optimiser en supprimant les packages qui doivent être supprimés
Sinon, pour avoir les 2 Go j'ai supprimé le dossier /tools qui faisait à peu près 2.5Go , sans casser le système
Là d'après la commande, les packages ou les répertoires prenant le plus de place actuellement sont gcc (674 Mo), /usr/lib (649 Mo) et /usr/share (384 Mo) et puis /usr/bin (347 Mo)
Donc les optimisations que je devrais faire doivent correspondre à des suppression de l'un ou de ces répertoires
Merci ^^
Messages postés
29586
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
26 février 2021
7 033
Bonjour

Oulala, je t'invite à regarder la FHS, avant de faire ça. Tu verras que tu ne peux pas supprimer "abruptement" l'un de ces répertoire, car sinon tu vas tout casser.

De manière générale, lorsque tu installes un logiciel, il installe des fichiers dans toute l'arborescence. Dit autrement, contrairement à windows où tu as un répertoire par application, ici les fichiers sont plutôt rangé par nature.

Certains répertoires ne sont pas vitaux. Tu parles de /tools, ce n'est pas un dossier standard de la FHS. À cela s'ajoute d'autres dossier qui par définition ne sont pas vitaux comme certains de ceux qu'on trouve dans
/usr/share
, en particulier
/usr/share/doc
qui contient les pages de
man
. Mais plutôt que les supprimer comme un bourrin, on aurait plutôt tendances à désinstaller les paquets
*-doc
via le gestionnaire de paquets...

Ensuite, parmi les paquets installés, il y en a sûrement qui ne sont pas vitaux. Par exemple, installer gcc n'a pas d'utiliser tant qu'on n'a rien à compiler. En pratique à moins de programmer en C ou de vouloir compiler un pilote,
gcc
ne sert pas, et on pourrait alors désinstaller gcc. Par contre, on ne s'amuserait sûrement pas à virer la libc car la plupart des programmes reposent dessus. Bref, pour moi, il faut plus raisonner par paquets plutôt que par répertoire.

Bonne chance
Messages postés
17
Date d'inscription
lundi 5 octobre 2020
Statut
Membre
Dernière intervention
23 février 2021

Bonjour
Effectivement, j'ai supprimé les manpages, ça m'a fait gagné à peu près 200 Mo d'espace
Par contre, je ne peux pas désinstaller gcc car j'en aurai besoin pour faire tourner quelques algos ..
Je verrai le lien de la FHS, il semble être très intéressant ^^
On m'a aussi conseillé de faire du "strip-debugging" de symboles depuis les binaries, mais je n'ai pas vraiment une idée concrète de ce que ça veut dire ni comment je vais procéder.
Merci de votre réponse
Messages postés
29586
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
26 février 2021
7 033 >
Messages postés
17
Date d'inscription
lundi 5 octobre 2020
Statut
Membre
Dernière intervention
23 février 2021

Bonjour,

De ce que j'en vois, cela permet de supprimer des objets (e.g. des fonctions) d'un binaire (e.g. une librairie). C'est vrai que quand on utilise 5% d'une librairie, il est dommage d'en payer le prix fort, mais je ne vois pas trop comment tu peux mettre ça en place efficacement (et en plus il faudrait le refaire à chaque mise à jour).

Une autre approche (que je déconseille également) serait de regarder pour l'ensemble des binaires utiles les librairies utilisées (avec
ldd
), et d'en déduire la liste des librairies réellement utiles et de virer les autres. Mais c'est très risqué et là a encore, ce serait à faire à chaque mise à jour...

Un endroit par contre où il est facile de gagner de la place (mais je doute que ce soit ton cas), c'est en nettoyant des caches (par exemple sous debian :
/var/cache/apt/archives
) et de supprimer des fichiers de log obsolètes (e.g. les fichiers
/var/log/*.gz
) mais il faudra de toute façon le refaire régulièrement...

Autre endroit où tu peux gagner de la place : dans
/lib/
, tous les répertoires associés à des noyaux autre que celui sur lequel tu as démarré (
uname -r
) ne servent pas. Parmi tous les modules associés au noyau en cours de démarrage, seuls certains sont requis sur ta machine (voir
lsmod
). A priori, les autres ne sont pas utiles (au moins pour le moment). Note que quand tu branches un matériel ou que tu démarres, le noyau peut être amené à charger dynamiquement et automatiquement les modules dont il a besoin. Donc là encore c'est un nettoyage qui peut présenter des risques (et qui doit être refait à chaque mise à jour du noyau).

Bref à un moment, il faut savoir se résigner :-)