Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites". Attention, le forum rencontre actuellement quelques difficultés. En cas d'erreur 502, il ne faut pas re-valider l'envoi d'un message ou l'ouverture d'une discussion, au risque de créer un doublon.

La section divers se réorganise ! De nouvelles sous-sections à venir. (plus d'infos + donner son avis)

#26 Le 20/09/2008, à 10:50

n3o51

Re : Nettoyage dans les noyaux (kernel)

Voila le debut

#!/bin/bash


KERNEL=`uname -r | cut -d '-' -f 1,2`
UNAME=grep -v "$KERNEL" /tmp/clean_kernel.tmp | sed -e "s@^@    @g"






echo "Noyau actuellement en cours d'utilisation : $KERNEL" | zenity --title="Choississez les noyaux que vous souhaitez supprimés" --text-info --width=200 --height=120

dpkg -l | grep linux | grep ubuntu | grep ii | awk '{print $2}' | grep 2.6 >/tmp/clean_kernel.tmp
dpkg -l | grep linux | grep restricted | grep ii | awk '{print $2}' | grep 2.6 >>/tmp/clean_kernel.tmp
dpkg -l | grep linux | grep image| grep ii | awk '{print $2}' | grep 2.6 >>/tmp/clean_kernel.tmp
dpkg -l | grep linux | grep headers | grep ii | awk '{print $2}' | grep 2.6 >>/tmp/clean_kernel.tmp
LISTE=$(cat /tmp/clean_kernel.tmp | xargs);LISTE=(${LISTE[@]} $LISTE);MISEENFORME=();
while (( i < ${#LISTE[@]} ))
do
MISEENFORME=(${MISEENFORME[@]} FALSE ${LISTE[$i]})
(( i = i + 1 ))
done
CHOIX_ADDON=$(zenity \
--title="Nettoyage des vieux kernel" \
--text="Choisir les paquets a <b>SUPPRIMES</b> dans la liste ci-dessous" \
--window-icon="/usr/share/pixmaps/gnome-debian.png" \
--width=600 \
--height=400 \
--list \
--print-column="2" \
--checklist \
--separator="\n" \
--column="*" \
--column="Liste des paquets" \
${MISEENFORME[@]}
)
echo -e "$CHOIX_ADDON" | tee /tmp/clean_kernel.tmp
cat /tmp/clean_kernel.tmp | zenity --text-info --title='Les paquets suivant vont etre supprimés' --width=800 --height=600

Merci a frafra

Dernière modification par n3o51 (Le 20/09/2008, à 11:02)


Welcome to the real world
________________________________

Hors ligne

#27 Le 20/09/2008, à 11:20

Hoper

Re : Nettoyage dans les noyaux (kernel)

Merci c'était déjà en cours en fait... je travail sur une v2 du script qui sera utilisable soit en ligne de commande, soit avez zenity. Dans les deux cas, on aura la possibilité de choisir quels noyaux (en plus du noyau actuel) on veut conserver...


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#28 Le 20/09/2008, à 11:38

n3o51

Re : Nettoyage dans les noyaux (kernel)

roll OK


Welcome to the real world
________________________________

Hors ligne

#29 Le 20/09/2008, à 12:17

Hoper

Re : Nettoyage dans les noyaux (kernel)

oups, désolé je sais pas comment j'ai fait mon coup mais j'avais pas vu ton post.
Je vais surement en récuperer une bonne partie... Merci !


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#30 Le 20/09/2008, à 12:37

n3o51

Re : Nettoyage dans les noyaux (kernel)

tongue Lol


Welcome to the real world
________________________________

Hors ligne

#31 Le 20/09/2008, à 16:52

Hoper

Re : Nettoyage dans les noyaux (kernel)

Bon heu... par contre... il y a aussi des trucs que je vais pas reprendre...

Parce que la création de la liste des kernel pour zenity me semble quand meme franchement complexe pour pas grand chose la... limite si je comprend tout ce que tu fais smile

Dernière modification par Hoper (Le 20/09/2008, à 16:54)


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#32 Le 21/09/2008, à 18:36

Hoper

Re : Nettoyage dans les noyaux (kernel)

Bon... j'ai bien travaillé ce week end, et j'annonce officiellement la v2 !

Pas mal d'ajout par rapport au premier script :
- Fonctionnement en mode texte ou en mode graphique (par défaut)
- en mode texte, il est possible d'indiquer assez facilement (en faisant des copier/coller) les paquets que l'on veut conserver en plus du noyau actuel.
- en mode graphique, on peut aussi simplement choisir de ne pas supprimer certains paquets.
(simple case à décocher).
- Pas mal de vérification supplémentaire et de controls d'erreurs etc...

J'édite le premier post en conséquence.


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#33 Le 21/09/2008, à 18:56

Vysserk3

Re : Nettoyage dans les noyaux (kernel)

D'après ce que j'ai lu, Intrepid devrait inclure d'office des mécanismes similaires pour virer les vieux noyaux. Avec un truc pour détecter quel est le noyau sur lequel a été démarré le système (afin de l'exclure de la suppression)...
Cf https://wiki.ubuntu.com/CleanupCruft

Hors ligne

#34 Le 21/09/2008, à 19:28

Hoper

Re : Nettoyage dans les noyaux (kernel)

En effet... Tant pis, ce script restera utile pour toutes les versions jusqu'a la 8.04 au moins...
Ensuite on verra a quoi ressemble l'outil de la 8.10.


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#35 Le 22/09/2008, à 10:06

clahor

Re : Nettoyage dans les noyaux (kernel)

merci a toi j'ai essayé le script ça  a l'air de fonctionner ...bon mon systeme etait deja bien
nettoyé mais
sinon ça selectionne bien les kernel

Hors ligne

#36 Le 22/09/2008, à 10:07

Hoper

Re : Nettoyage dans les noyaux (kernel)

Merci pour ce retour ! Et encore merci à n3o51... Car même si je n'ai pas vraiment utilisé ce morceau de code, ça m'a obligé à me documenter sur la gestion des tableaux en bash. Bref, j'ai appris des trucs ce week end wink

Dernière modification par Hoper (Le 22/09/2008, à 10:08)


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#37 Le 23/09/2008, à 01:03

yurek

Re : Nettoyage dans les noyaux (kernel)

je crois avoir trouvé la solution : http://forum.ubuntu-fr.org/viewtopic.php?pid=2082508#p2082508

Dernière modification par yurek (Le 23/09/2008, à 01:03)


http://doc.ubuntu-fr.org/installation/debutants
http://doc.ubuntu-fr.org/diagnostic
http://doc.ubuntu-fr.org/diagnostic_outils
http://doc.ubuntu-fr.org/reflexe_ubunteros

Hors ligne

#38 Le 23/09/2008, à 09:44

Hoper

Re : Nettoyage dans les noyaux (kernel)

Hum... autant il y a des choses qu'il faut que je reprenne dans ce que tu as fait (le control d'erreur de zenity surtout), autant il y a des trucs qui me semble très louche... je te fais mes remarques sur l'autre thread.


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#39 Le 23/09/2008, à 21:29

Sciensous

Re : Nettoyage dans les noyaux (kernel)

Merci beaucoup Hoper smile

j'ai testé et j'avais une ancienne version de noyau qui restait alors que je pensé n'avoir gardé que la dernière. Bilan 200Mo de gagné tongue

concernant l'utilisation de menu.lst, je confirme car c'est la première chose que je "personnalise"; en particulier le howmay=all--> 1

une remarque cependant: j'ai lancé plusieurs fois ton script car je n'étais pas sur que les suppressions proposées etaient vraiment anciennes --> il serait judicieux de rappeler la version actuelle dans la seconde fenetre aussi

belle initiative qui mériterait aussi d'apparaitre en trucs et astuces non ?
cool

Dernière modification par Sciensous (Le 23/09/2008, à 21:29)

Hors ligne

#40 Le 23/09/2008, à 22:00

yamo

Re : Nettoyage dans les noyaux (kernel)

Salut,
J'ai testé la V2 et je lui ait demandé de me supprimer tous les anciens kernels sauf un ( 2.6.24-19) et au redémarrage je m'aperçoit que celui que je n'avais pas sélectionné est quand même supprimé!

Ce n'est pas dramatique mais si on teste un kernel "proposed" c'est quand même utile de garder un autre stable.

C'est la version graphique que j'ai testé.

Merci beaucoup pour ce script qui m'a été utile en V1 et V2.

Dernière modification par yamo (Le 23/09/2008, à 22:01)


Stéphane
--
Debian 7.0 XFCE 4.8   - #ubuntu sur freenode

sudo / matrix

Hors ligne

#41 Le 23/09/2008, à 22:38

yamo

Re : Nettoyage dans les noyaux (kernel)

Peut-être faudrais t'il indiquer après la sélection un message du genre :
Voulez vous vraiment ?
* garder ces kernels : ...
* supprimer ces kernels : ...
et un choix oui non.
Le oui ferait l'action demandée, le non fermerait le programme.

Dernière modification par yamo (Le 23/09/2008, à 22:39)


Stéphane
--
Debian 7.0 XFCE 4.8   - #ubuntu sur freenode

sudo / matrix

Hors ligne

#42 Le 23/09/2008, à 22:56

n3o51

Re : Nettoyage dans les noyaux (kernel)

Bonsoir

   J'allais te proposer de faire cela

De yamo :

Le oui ferait l'action demandée, le non fermerait le programme.

mais plutot revenir au menu avec un :

if [ "${PIPESTATUS[0]}" != "0" ]; then

N3o

Dernière modification par n3o51 (Le 23/09/2008, à 22:57)


Welcome to the real world
________________________________

Hors ligne

#43 Le 23/09/2008, à 23:41

yurek

Re : Nettoyage dans les noyaux (kernel)

Voila voila, l'option est a présent présent et opérationnel dans la nouvelle version de maintenir-systeme.


http://doc.ubuntu-fr.org/installation/debutants
http://doc.ubuntu-fr.org/diagnostic
http://doc.ubuntu-fr.org/diagnostic_outils
http://doc.ubuntu-fr.org/reflexe_ubunteros

Hors ligne

#44 Le 24/09/2008, à 09:08

Hoper

Re : Nettoyage dans les noyaux (kernel)

--> il serait judicieux de rappeler la version actuelle dans la seconde fenetre aussi

Très juste. Il est effectivement bien plus logique que la version du noyau actuelle apparaisse dans la deuxième fenêtre... Ce sera modifié dans la prochaine version.

J'ai testé la V2 et je lui ait demandé de me supprimer tous les anciens kernels sauf un ( 2.6.24-19) et au redémarrage je m'aperçoit que celui que je n'avais pas sélectionné est quand même supprimé!

Je ne vois qu'une explication possible à cela (je voulais que le programme mette en garde contre ce genre de chose, et c'est vrai que je ne l'ai finalement pas intégré..) :
Si tu as les paquets suivants installés :
linux-image-2.6.20 et linux-modules-2.6.20
par exemple (en plus de plein d'autre). Si tu coche l'un des deux paquets, et si ce paquet à besoin de l'autre pour fonctionner, alors les deux seront supprimés.
Ce qui serait génial serait de pouvoir automatiquement dans l'interface faire en sorte que dans ce genre de cas, tu coche un paquet et ca coche automatiquement tous les autres qui seront forcement supprimés si tu supprime celui la... Ce n'est pas impossible à faire... Mais c'est quand meme super compliqué. Clairement pas le genre de fonction qui apparaitra dans la 2.1...
plus tard peut etre. En attendant il faut etre attentif, et quand on commence a vouloir conserver une version de noyau, il faut bien conserver tous les paquets qui se rapporte à cette version. Je vais essayer de mettre une fenetre de mise en garde sur le sujet...

if [ "${PIPESTATUS[0]}" != "0" ]; then

J'avais bien l'intention de rajouter ce test. En fait il va permettre d'interrompre la suppression des paquets alors même que les suppressions sont en cours (ce qui n'est pas possible actuellement). Par conte, je ferai surement quitter le programme, inutile de revenir au menu à ce moment la...

Peut-être faudrais t'il indiquer après la sélection un message du genre :
Voulez vous vraiment ?
* garder ces kernels : ...
* supprimer ces kernels : ...

Il me semble que la liste de choix à cocher est tout de meme déjà assez explicite... Après cela peut ne pas correspondre exactement à ce qui va etre fait, pour les raisons expliqués au dessu. Mais la encore, pour le savoir à ce moment la ca va demander encore pas mal de boulot...

EDIT : au fait, et pour information, ce script ne propose QUE d'effacer les anciens noyaux. Le noyau actuel (et tous les paquets associés) n'apparaissent pas dans la liste. J'ai trouvé cela plus sur et plus simple. Mais effectivement, ce n'est peut etre pas assez clairement indiqué.

Dernière modification par Hoper (Le 24/09/2008, à 09:09)


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#45 Le 24/09/2008, à 09:35

yamo

Re : Nettoyage dans les noyaux (kernel)

Salut,

Hoper a écrit :

Peut-être faudrais t'il indiquer après la sélection un message du genre :
Voulez vous vraiment ?
* garder ces kernels : ...
* supprimer ces kernels : ...

Il me semble que la liste de choix à cocher est tout de meme déjà assez explicite... Après cela peut ne pas correspondre exactement à ce qui va etre fait, pour les raisons expliqués au dessu. Mais la encore, pour le savoir à ce moment la ca va demander encore pas mal de boulot...

EDIT : au fait, et pour information, ce script ne propose QUE d'effacer les anciens noyaux. Le noyau actuel (et tous les paquets associés) n'apparaissent pas dans la liste. J'ai trouvé cela plus sur et plus simple. Mais effectivement, ce n'est peut etre pas assez clairement indiqué.

Je pensais que c'était suffisamment clair sauf qu'apparemment le remove a du juger nécessaire de supprimer le kernel que je voulais garder.( ce n'est pas critique sinon je l'aurai installé depuis)

Peut-être pourrais tu récupérer le retour de la commande

 apt-get remove 
#ou 
 apt-get remove  --purge

et indiquer ce qui va réellement être supprimé. Et ensuite si l'utilisateur est d'accord lancer réellement

 apt-get remove --yes --purge

Dernière modification par yamo (Le 24/09/2008, à 09:37)


Stéphane
--
Debian 7.0 XFCE 4.8   - #ubuntu sur freenode

sudo / matrix

Hors ligne

#46 Le 24/09/2008, à 09:45

Hoper

Re : Nettoyage dans les noyaux (kernel)

Heu... ouai... pas très joli (dans ma tete je pensai plutôt a faire des apt-cache show pour analyser les dépendances etc) mais... faut reconnaitre que c'est autrement plus facile à coder comme ca... Et ca permettrai de mettre une fenêtre de résumer pour montrer ce qui va etre vraiment supprimé...
Ok, je rajoute ca dans la liste des trucs à essayer de mettre en place dans la 2.1 smile


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#47 Le 24/09/2008, à 09:50

yamo

Re : Nettoyage dans les noyaux (kernel)

Je ne fais que proposer je ne connais que très peu apt-cache et apt-get, je les utilises qu'avec les options classiques...

Si en effet tu peux avoir le même résultat avec apt-cache c'est beaucoup plus sûr!


Stéphane
--
Debian 7.0 XFCE 4.8   - #ubuntu sur freenode

sudo / matrix

Hors ligne

#48 Le 24/09/2008, à 10:20

Hoper

Re : Nettoyage dans les noyaux (kernel)

En fait... non. Je viens de regarder, c'est trop aléatoire... ca va dépendre de la langue utilisé, du codage etc... non vraiment le apt-get ne peux pas m'aider. Il faut analyser les dépendances avec apt-cache, et du  coup j'en reviens  à ce que je disai : gros boulot, ce sera pas pour tout de suite...


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#49 Le 26/09/2008, à 10:47

Hoper

Re : Nettoyage dans les noyaux (kernel)

J'ai réalisé que niveau sécurité, un simple script hébergé sur un serveur ftp free (que je maitrise pas donc), script qui sera lancé ensuite en tant que root... bref, pas top. Du coup j'ai ajouté la signatude md5 de la version 2.1 dans le premier post.


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/tdc/

Hors ligne

#50 Le 27/09/2008, à 15:23

Ayral

Re : Nettoyage dans les noyaux (kernel)

Bonjour
avant de lancer le script, il me vient une hésitation: il semble fait pour l'environnement kubuntu, ce que semble indiquer la commande

wget hoper78.free.fr/ubuntu/kclean
chmod a+x kclean

avec des k partout, et gksudo pour la commande suivante.
Me trompé-je ? ou je suis dans le vrai ?

Hors ligne

Haut de page ↑