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.

#1 Le 07/12/2015, à 04:17

cqfd93

"Apt-get remove --purge" en masse

Bonjour,


Dans cette discussion récente espace disk insuffisant pour mise à jour [RESOLU], il a été nécessaire de supprimer à la sauvage de nombreux (plus d'une cinquantaine) linux-headers contenus dans /usr/src/ à l'aide des 3 commandes :

sudo rm -fr /usr/src/linux-headers-3.13.0-3*
sudo rm -fr /usr/src/linux-headers-3.13.0-4*
sudo rm -fr /usr/src/linux-headers-3.13.0-5*

ce qui n'a posé aucun problème, mais si on suit la démarche de tiramiseb dans son tuto, il faut aussi les désinstaller proprement avec apt avec des commandes du style :

sudo apt-get remove --purge linux-headers-3.13.0-30

1 commande par noyau, ce qui en fait plusieurs dizaines, fastidieux surtout pour celui qui va devoir les exécuter.


On peut être tenté d'appliquer la même syntaxe et de faire :

sudo apt-get remove --purge linux-headers-3.13.0-3*

Et si on fait ça, c'est la catastrophe, ça supprime tous les noyaux 3.13, y compris celui sur lequel on tourne si c'est un 3.13.


De ce que j'ai retenu de plusieurs discussions dans lesquelles sont intervenus tiramiseb, moko138 et jplemoine (je n'ai pas les liens), apt utilise des perlexpr, il faut donc "échapper" les caractères réservés avec \. Les seuls caractères réservés dans la dernière commande sont "." et "*", j'ai donc essayé en simulation :

sudo apt-get -s remove --purge linux-headers-3\.13\.0-3\*

et aussi :

sudo apt-get -s remove --purge 'linux-headers-3\.13\.0-3\*'

mais dans les deux cas, ça aboutit aussi à la suppression de tous les 3.13... Pas top !


Pourtant il doit bien y avoir une solution pour ne supprimer que les 3.13.0-3*, 3.13.0-4*, 3.13.0-5*...


Et quitte à faire des simulations, j'ai aussi essayé sans * ni \* :

sudo apt-get -s remove --purge linux-headers-3\.13\.0-3
sudo apt-get -s remove --purge linux-headers-3\.13\.0-4
sudo apt-get -s remove --purge linux-headers-3\.13\.0-5

BINGO ! La première par exemple me donne bien :

moi@aurore:~$ sudo apt-get -s remove --purge linux-headers-3\.13\.0-3
[sudo] password for moi: 
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Note : sélection de linux-headers-3.13.0-30-generic pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-33-generic pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-36-generic pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-33-generic-lpae pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-39-generic pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-35-generic-lpae pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-37-generic-lpae pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-30 pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-32 pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-33 pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-34 pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-35 pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-36 pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-37 pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-39 pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-39-generic-lpae pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-34-generic pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-37-generic pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-30-generic-lpae pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-32-generic-lpae pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-32-generic pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-34-generic-lpae pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-35-generic pour l'expression rationnelle « linux-headers-3.13.0-3 »
Note : sélection de linux-headers-3.13.0-36-generic-lpae pour l'expression rationnelle « linux-headers-3.13.0-3 »
Le paquet linux-headers-3.13.0-30 n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-30-generic n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-32 n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-32-generic n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-33 n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-33-generic n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-34 n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-34-generic n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-35 n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-35-generic n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-36 n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-36-generic n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-37 n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-37-generic n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-39 n'est pas installé, et ne peut donc être supprimé
Le paquet linux-headers-3.13.0-39-generic n'est pas installé, et ne peut donc être supprimé
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  linux-tools-3.2.0-91 xfonts-mathml
Veuillez utiliser « apt-get autoremove » pour les supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
moi@aurore:~$ 

Là, il est clair que seuls les 3.13.0-3* seraient supprimés.


Que pensent les spécialistes de tout ça ?

ps : si vous regardez la discussion citée plus haut, vous verrez que j'ai court-circuité cette étape en faisant intervenir kclean qui a très bien marché.


cqfd93

Hors ligne

#2 Le 07/12/2015, à 06:32

MicP

Re : "Apt-get remove --purge" en masse

EDIT : Désolé, je pensais qu'il s'agissait de désinstaller des noyaux avec apt-get remove=> je suis donc Hors sujet.


Pour ce genre de situation, je propose une autre approche.

Le but était de libérer assez d'espace disque afin que apt-get puisse faire son travail.

"supprimer à la sauvage" les fichiers permettait effectivement de libérer de l'espace disque,
mais on a constaté que ce n'est pas une bonne solution puisque leur présence est nécessaire pour que apt-get remove puisse faire son travail.

Or, il est quand même possible de faire de la place sans les supprimer : Il suffit d'écraser le contenu de ces fichiers avec un fichier vide.

=======
Donc, en me basant sur le retour donné dans ce post (retour 7ème)

Je passe sous le compte root et je vais dans le répertoire /boot:

sudo -i
cd /boot

Comme je ne veux pas modifier les trois derniers (70, 71 et 72), je les renomme temporairement (en rajoutant .sauv à la fin de leur nom) :

for fich in *-{70..72}-generic; do mv $fich{,.sauv}; done

J'écrase le contenu des fichiers *-generic avec un fichier vide :

touch fichVide; for fich in *-generic; do cp fichVide $fich; done; rm fichVide

Je redonne leur nom d'origine aux fichiers *.sauv

for fich in *.sauv; do mv $fich ${fich%.sauv}; done

Je reviens sous mon compte utilisateur :

exit

Voilà. J'ai fait de la place et apt-get autoremove peut maintenant supprimer les fichiers qu'il veut : Ils sont bien là.

Dernière modification par MicP (Le 07/12/2015, à 14:31)

Hors ligne

#3 Le 07/12/2015, à 06:41

cqfd93

Re : "Apt-get remove --purge" en masse

MicP a écrit :

Pour ce genre de situation, je propose une autre approche.

Le but était de libérer assez d'espace disque afin que apt-get puisse faire son travail.

"supprimer à la sauvage" les fichiers permettait effectivement de libérer de l'espace disque,
mais on a constaté que ce n'est pas une bonne solution puisque leur présence est nécessaire pour que "apt-get remove" puisse faire son travail.

Or, il est quand même possible de faire de la place sans les supprimer : Il suffit d'écraser le contenu de ces fichiers avec un fichier vide.

Astucieux !!!


cqfd93

Hors ligne

#4 Le 07/12/2015, à 06:44

moko138

Re : "Apt-get remove --purge" en masse

Merci de cette étude !


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

Hors ligne

#5 Le 07/12/2015, à 06:50

MicP

Re : "Apt-get remove --purge" en masse

100 ou 200 MB libérés auraient peut-être suffit => Écraser avec un fichier vide seulement les deux ou trois plus anciennes versions.

Dernière modification par MicP (Le 07/12/2015, à 14:32)

Hors ligne

#6 Le 07/12/2015, à 08:32

cqfd93

Re : "Apt-get remove --purge" en masse

MicP a écrit :

100 ou 200 MB libérés auraient peut-être suffit => Écraser avec un fichier vide seulement les deux ou trois plus anciennes versions.

Ça dépend des cas, certaines fois la suppression de quelques noyaux ne suffit pas parce que de nouveaux noyaux sont installés et on est obligé de recommencer plusieurs fois.


cqfd93

Hors ligne

#7 Le 07/12/2015, à 08:33

nam1962

Re : "Apt-get remove --purge" en masse

...et un

sudo apt-get purge linux-image-3.13.0-{30,32,33,34,35,36,37}-generic

ou un

 sudo dpkg --remove linux-image-3.13.0-{30,32,33,34}

?
(je n'ai pas testé le second)


[ Modéré ]

Hors ligne

#8 Le 07/12/2015, à 08:56

jplemoine

Re : "Apt-get remove --purge" en masse

MicP a écrit :

Or, il est quand même possible de faire de la place sans les supprimer : Il suffit d'écraser le contenu de ces fichiers avec un fichier vide.

oui mais non : ça fonctionne si on manque de place. La plupart du temps, il faut libérer des i-nodes. Dans ce cas, je crois que ce qui compte c'est le nombre de fichiers peu importe leur taille.
Donc, la question reste valable : comment peut-on effacer tous les noyaux en 1 seule commande.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#9 Le 07/12/2015, à 09:36

tiramiseb

Re : "Apt-get remove --purge" en masse

Plop,

Concernant la problématique que je décris dans mon blog, il n'y a pas besoin d'enlever une cinquantaine de headers à la main. Il faut en enlever un ou deux pour libérer assez de place pour que le suivant s'installe, c'est tout. Donc le "purge" qui suit ne concerne qu'un ou deux paquets. Ensuite, kclean pour tout faire propre.

MicP a écrit :

on a constaté que ce n'est pas une bonne solution puisque leur présence est nécessaire

En général oui c'est le cas, mais je n'ai toujours pas creusé pour voir le critère... En tout cas dans le cas des headers on peut les supprimer entièrement sans que dpkg ne râle au moment de la désinstallation du paquet.



Enfin, concernant la syntaxe avec l'astérisque, je ne sais absolument pas pourquoi mais la syntaxe suivante semble fonctionner :

sudo apt-get remove --purge 'linux-headers-3.13.0-3 *'

... sinon, avec de la regex "pure" :

sudo apt-get remove --purge 'linux-headers-3.13.0-3.*'

... ou alors en échappant vraiment tous les points, mais ce n'est pas absolument obligatoire :

sudo apt-get remove --purge 'linux-headers-3\.13\.0-3.*'

Dernière modification par tiramiseb (Le 07/12/2015, à 09:38)

Hors ligne

#10 Le 07/12/2015, à 09:37

MicP

Re : "Apt-get remove --purge" en masse

jplemoine a écrit :

…il faut libérer des i-nodes…

S'il s'agissait de libérer des inodes, peu importe le répertoire contenant les fichiers à supprimer.
Puisque les inodes dépendent du système de fichiers, il suffit de supprimer des fichiers de la partition concernée (même d'un autre répertoire)

Dernière modification par MicP (Le 07/12/2015, à 14:33)

Hors ligne

#11 Le 07/12/2015, à 09:38

tiramiseb

Re : "Apt-get remove --purge" en masse

Puisque les inodes dépendent du système de fichiers, il suffit de supprimer des fichiers de la partition concernée (même d'un autre répertoire)

Oui sauf que là on parle de milliers, voire de dizaines de milliers d'i-nodes... Tu préfères supprimer 10000 de tes fichiers perso ? tongue

Hors ligne

#12 Le 07/12/2015, à 10:21

jplemoine

Re : "Apt-get remove --purge" en masse

Sébastien, c'est bien 1 i-node = 1 fichier ou c'est plus subtil ?


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#13 Le 07/12/2015, à 10:28

Babdu89

Re : "Apt-get remove --purge" en masse

Bonjour.
Cette discutions m'intéresse; Abonnement!.

[pas tout à fait HS]
Ma réflexion à ce sujet;
Intégrer un outil comme  kclean (Merci Hoper)  dans les iso Ubuntu voir autres Os Linux. Avis aux dev!...

Comme il serait installé d’office, il y aurait au moins moyen de le lancer pour faire de la place dans le /boot en cas de manque de place. Même si c'est un peu tard je pense.

Chez moi il fait partie de paquets que j'ajoute d'office à toutes mes installations.
Ajout;
gksu .
Synaptic .
Gparted .
Kclean .
Boot-Repair et  Boot-info .
[fin du HS/]

@+.   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

#14 Le 07/12/2015, à 10:32

tiramiseb

Re : "Apt-get remove --purge" en masse

jplemoine a écrit :

Sébastien, c'est bien 1 i-node = 1 fichier ou c'est plus subtil ?

C'est exactement ça.

Hors ligne

#15 Le 07/12/2015, à 10:33

tiramiseb

Re : "Apt-get remove --purge" en masse

Ma réflexion à ce sujet;
Intégrer un outil comme  kclean (Merci Hoper)  dans les iso Ubuntu voir autres Os Linux. Avis aux dev!...

Sauf qu'ils ont enfin fait en sorte que les noyaux se désinstallent seuls avec un simple "apt-get autoremove", du coup kclean est inutile sur les dernières versions d'Ubuntu.

Dernière modification par tiramiseb (Le 07/12/2015, à 10:37)

Hors ligne

#16 Le 07/12/2015, à 10:41

Arbiel

Re : "Apt-get remove --purge" en masse

Bonjour à tous

kclean ou Ubuntu Tweak ? et pour quelles raisons ? ligne de commande contre interface graphique ?

Personnellement, je trouve Ubuntu Tweak bien pratique.

Arbiel


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#17 Le 07/12/2015, à 10:44

MicP

Re : "Apt-get remove --purge" en masse

tiramiseb a écrit :

… Oui sauf que là on parle de milliers, voire de dizaines de milliers d'i-nodes... Tu préfères supprimer 10000 de tes fichiers perso ? …

Non, je ne supprimerai rien : Au pire, je rassemblerai certains fichiers dans un seul fichier d'archive ou je les déplacerai sur un autre système de fichiers, quitte à en créer un.
Mais j'ose quand même espérer qu'il ne sera pas nécessaire de libérer 10000 inodes dans le système de fichiers utilisé par /boot rien que pour pouvoir exécuter un apt-get remove --purge

De toutes façons, mes fichiers perso ne sont pas sur le même système de fichiers que le système d'exploitation.

Dernière modification par MicP (Le 07/12/2015, à 14:33)

Hors ligne

#18 Le 07/12/2015, à 10:46

tiramiseb

Re : "Apt-get remove --purge" en masse

'ose quand même espérer qu'il ne sera pas nécessaire de libérer 10000 inodes dans le système de fichiers utilisé par /boot

Il ne s'agit pas de /boot, il s'agit de /usr/src. Il s'agit des headers. Et il est bel et bien nécessaire de libérer des dizaines de milliers d'i-nœuds pour installer de nouveaux headers, vu que chacun contient des dizaines de milliers de fichiers.

On dirait bien que tu n'as pas du tout lu mon article de blog, pour faire des confusions comme ça.
https://www.maccagnoni.eu/2013/10/ubunt … ipherique/
smile

Dernière modification par tiramiseb (Le 07/12/2015, à 10:48)

Hors ligne

#19 Le 07/12/2015, à 10:49

tiramiseb

Re : "Apt-get remove --purge" en masse

$ for i in /usr/src/linux-headers*
for> do
for> find $i | wc -l
for> done
16317
9454
16317
9457

Dernière modification par tiramiseb (Le 07/12/2015, à 10:49)

Hors ligne

#20 Le 07/12/2015, à 11:36

nany

Re : "Apt-get remove --purge" en masse

Bonjour,

tiramiseb a écrit :

Ma réflexion à ce sujet;
Intégrer un outil comme  kclean (Merci Hoper)  dans les iso Ubuntu voir autres Os Linux. Avis aux dev!...

Sauf qu'ils ont enfin fait en sorte que les noyaux se désinstallent seuls avec un simple "apt-get autoremove", du coup kclean est inutile sur les dernières versions d'Ubuntu.

À un détail près : pour une raison obscure, il arrive que les mises à jour de noyaux marquent les paquets comme installés manuellement et ne sont donc pas pris en compte par apt-get autoremove. Il faut donc dans ce cas commencer par marquer les paquets en automatique avant de lancer la commande d’autoremove.
Voir la doc kernel pour se faire.


jplemoine a écrit :
MicP a écrit :

Or, il est quand même possible de faire de la place sans les supprimer : Il suffit d'écraser le contenu de ces fichiers avec un fichier vide.

oui mais non : ça fonctionne si on manque de place. La plupart du temps, il faut libérer des i-nodes. Dans ce cas, je crois que ce qui compte c'est le nombre de fichiers peu importe leur taille.
Donc, la question reste valable : comment peut-on effacer tous les noyaux en 1 seule commande.

Dans le cas d’un blocage par les i-nœuds, je ne vois pas de moyen de s’en sortir avec une seule commande. Il n’y a, à mon avis, pas d’autre choix que de mettre les mains dans le cambouis.

Hors ligne

#21 Le 07/12/2015, à 11:38

Babdu89

Re : "Apt-get remove --purge" en masse

tiramiseb a écrit :

Ma réflexion à ce sujet;
Intégrer un outil comme  kclean (Merci Hoper)  dans les iso Ubuntu voir autres Os Linux. Avis aux dev!...

Sauf qu'ils ont enfin fait en sorte que les noyaux se désinstallent seuls avec un simple "apt-get autoremove", du coup kclean est inutile sur les dernières versions d'Ubuntu.

Sauf que, je ne sais plus dans quel sujet, quelqu'un avait démontré que seuls les kernel installés automatiquement (lors des maj système je suppose) étaient supprimés par autoremove. Pas les paquets installés à la main.
Et que çà concerne le Os depuis la 14.04 . Les Os mis à niveaux successifs conservant d'anciens noyaux passent à cotés d'autoremove.

Donc pour moi,  Kclean (ou autre nettoyeur)  pas si inutile que çà .

Bon, chacun voit midi à sa porte. wink

Édit;
Ah çà y est, je pense savoir qui c'est!.... wink

@+.   Babdu89  .

Dernière modification par Babdu89 (Le 07/12/2015, à 11:40)


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

Hors ligne

#22 Le 07/12/2015, à 11:40

tiramiseb

Re : "Apt-get remove --purge" en masse

Ah ben oui, les paquets installés manuellement sont marqués comme paquets installés manuellement du coup ils ne sont pas supprimés quand on demande de supprimer les paquets installés automatiquement. C'est logique.

kclean "pas inutile" pour des systèmes un peu âgés (en one-shot si l'OS est mis à jour), mais pour des OS récemment installés, avec une version récente, je n'ai pas constaté de souci...

Hors ligne

#23 Le 07/12/2015, à 11:52

jplemoine

Re : "Apt-get remove --purge" en masse

Quand je disais en 1 seule commande, c'était un raccourci :
- Si tu as des noyaux linux-image-3.13.0-30 à 37 puis le 40, 42 et 45, peut-on, en une seule commande, supprimer tous les inux-image-3.13.0-3x.
Si j'ai bien ce qu'a dit Tiramiseb, Il semblerait qu'il faille juste entouré par des '
Donc pas de

sudo apt-get remove --purge linux-headers-3.13.0-3*

mais

sudo apt-get remove --purge 'linux-headers-3.13.0-3*'

Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#24 Le 07/12/2015, à 11:54

tiramiseb

Re : "Apt-get remove --purge" en masse

Si j'ai bien ce qu'a dit Tiramiseb, Il semblerait qu'il faille juste entouré par des '

Non. Relis avec attention le message #9.

Hors ligne

#25 Le 07/12/2015, à 11:59

Babdu89

Re : "Apt-get remove --purge" en masse

Autoremove...

À vérifier mes dires, mais comme on voit assez souvent des installations d'Os récents  avec petite partition de /boot qui sature rapidement. (cas d'installations en LVM avec ou sans chiffrage).

Je suppose que les utilisateurs doivent faire comme moi, leur maj système depuis le gestionnaire de mise à jour en graphique.
Je n'ai jamais vu dans ce cas là , contrairement au maj système faites en commandes, la proposition de supprimer des paquets en trop avec autoremove.


Autoremove ? Il me semble, ne fait que  proposer de faire la suppression de paquets inutiles , mais il ne la fait pas d'office... L'utilisateur lambda n'y voit que du feu, et passe à côté du nettoyage, non?...
Et on les voit venir ici pour demander de l'aide.

@+.   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