Page 2 sur 2

Re: Les désintallations incomplètes

Posté : jeu. 25 févr. 2021 12:21
par Mia88

Dernier message de la page précédente :

Bonjour,

J'avais lancé un sujet pour savoir comment obtenir un nettoyage complet.
viewtopic.php?f=19&t=15895&hilit=script+nettoyage

Tu mets dans une tâche cron le script de nettoyage qui va bien, et tu es tranquille.

Ceci dit, j'admets que c'est pas cool de devoir se plonger dans les lignes de commande pour obtenir une désinstallation parfaite :(

Je mets le script final, ça t'évitera de le reconstituer d'après le topic ;)

Code : Tout sélectionner

#/bin/sh
echo "Nettoyage"

echo "Réparation des dépendances cassées..."
apt-get -f install

echo "Suppression du cache d'apt pour les logiciels désinstallés..."
apt-get autoclean

# suppression de tout le cache d'apt (paquets installés et téléchargements incomplets)
#apt-get clean

echo "Suppression des paquets inutiles..."
# correspond aux noyaux installés mais non utilisés dans Vue noyaux du Gestionnaire de mise à jour
# appelé aussi Dépendances inutiles (ne correspond pas aux paquets orphelins de synaptic)
# anciens noyaux (sauf avant dernier)
# options -y (yes à tout) et --purge (fichiers de conf associés?)
sudo apt-get -y autoremove --purge

echo "Suppression des résidus de configuration de logiciels supprimés..."
# correspond à l'État "Non installés" (résidus de configuration) dans Synaptic
# appelés aussi Fichiers de configuration orphelins (et non pas dépendances orphelines)
# principalement en rapport avec les anciens noyaux
#dpkg -l|grep "^rc"|awk '{print $2}'| xargs sudo dpkg --purge
aptitude purge ~c

echo "Suppression des fichiers orphelins..."
# correspond à l'État "Filtres personnalisés" orphelin dans Synaptic
# appelés aussi Dépendances orphelines
# semble contenir des librairies obsolètes et modules de librairies
# redirection dans un fichier puis nettoyage avec cut et le délimitateur " :"
deborphan > list.deborphan
cat list.deborphan | cut -d ":"  -f 1

echo "Suppression des entrées de journaux de plus de 7 jours..."
journalctl –vacuum-time=7day
find /var/log -name "*.log" -type f -mtime +7 -exec rm -f {} \;

# vider tous les journaux (autre méthode)
# find /var/log/journal -name "*.journal"|xargs sudo rm

echo "Suppression des miniatures de plus de 7 jours ..."
find ~/.thumbnails -type f -ctime +7 -delete

# suppression de toutes les miniatures
#rm -rf /home/*/.cache/thumbnails

echo "Nettoyage history des shells..."
rm /home/*/.bash_history

# ou encore history -c pour le shell user
# si plusieurs /home faire une boucle for sur les users (cyrille)
# nettoyage du shell root (déconseillé par cyrille)
#rm /root/.bash_history

echo "Suppression des fichiers de sauvegarde..."
# vérifier avant qu'ils ne sont plus utiles
#find $HOME/ -name '*~' -print0 | xargs -0 rm -f
find $HOME/ -name '*~' type f -ctime +7 -delete

echo "Vidage du cache du navigateur..."
rm -rf /home/*/.cache/mozilla/firefox/*default/cache2

echo "Nettoyage de la ram..."
su -c "echo 3 >'/proc/sys/vm/drop_caches'
echo "Nettoyage du swap..."
swapoff -a && swapon -a
printf '\n%s\n' 'Ram-cache et swap nettoyés'" root

echo "Vidage des corbeilles..."
# le second /* est probablement inutile
rm -rf /home/*/.local/share/Trash/*/* &> /dev/null
rm -rf /root/.local/share/Trash/*/* &> /dev/null

notify-send "Nettoyage terminé"
Quand plusieurs commande peuvent être utilisées pour une même action, j'ai commenté celles que je n'ai pas choisies.

Re: Les désintallations incomplètes

Posté : jeu. 25 févr. 2021 12:43
par falke
tescan a écrit : jeu. 25 févr. 2021 11:21 Est-on certain que "le simple glisser déposer" ne laisse pas quelques trucs dans des dossiers dont pequinus vulgaris ne connaît même pas l'existence? ;)
... pas de polémique :D

Pour répondre à notre ami :

les outils apt devraient largement te suffire, et si tu n'a pas une bonne connaissance du système , il est prudent d'en rester là.

mais il y d'autres commande apt très intéressantes

- apt-get autoclean ou apt-get clean , pour enlever les paquets téléchargés dans ton cache (qui prennent autrement plus de place ;) )

- apt content <nom du paquet> : liste tous les fichiers installés par le paquets, comme ça tu pourras pointer si tu veux que tous les fichiers sont bien supprimés

l'associer à apt content <nom du paquet> > fichiers_package.txt (plus pratique pour le pointage)

et ah merde , y a un fichier qui traine à quel paquet appartient-il puis-je le supprimer ?

- apt contains <nom du fichier> :

apt contains base.xcd
libreoffice-base: /usr/lib/libreoffice/share/registry/base.xcd

une autre : un paquet m'intrigue et ça me démange de le désinstaller :

apt rdepends <paquet X> ,

permet de savoir si en le désinstallant je pourrais enlever une dépendance à un paquet Y (et le casser)

Comment le dit Mia on pourrait inclure ces commandes dans un shell, en rediriger la sortie vers un fichier à consulter avant le ménage définitif



pas mal comme traçabilité , non ?

Re: Les désintallations incomplètes

Posté : jeu. 25 févr. 2021 14:08
par alv37
tescan a écrit : jeu. 25 févr. 2021 11:21 Est-on certain que "le simple glisser déposer" ne laisse pas quelques trucs dans des dossiers dont pequinus vulgaris ne connaît même pas l'existence? ;)
C'est tout à fait ça, "le simple glisser déposer" enlève le programme en lui même mais mais pas tous les fichiers qui reste sur le système c'est bien pour ça que des applis comme CleanMyMac ou App Cleaner existe pour supprimer tous ces résidu de fichier restant. Faut pas oublier qu'en dessous de l'interface Aqua, macOS est basé sur du FreeBSD (donc assez similaire à Linux sur ce point).

Re: Les désintallations incomplètes

Posté : lun. 1 mars 2021 21:54
par toto1905
Merci pour ces réponses complémentaires !

Re: Les désintallations incomplètes

Posté : ven. 19 mars 2021 07:11
par alain
Bonjour.

Sujet archivé (en lecture seule) car résolu.
Si besoin de rouvrir faire un MP à un membre de l'équipe ;)