Supprimer une application en ligne de commande

gigab

Membre actif
5 Mars 2009
878
26
Bonjour,

J'ai récemment changé mon disque dur => réinstall complète.
Avec l'ancien disque, je suis allé chez Apple (il plantait le Mac, mon disque), et on s'est aperçu que malgré TrashMe, désinstallateur de programme, il restait plein de fichiers orphelins de ces applications.

Le conseiller de chez Apple m'a dit qu'il faisait toutes ses désinstallations de programme via le terminal.

Sur l'aide, j'ai vu qu'il faillait rentrer rm -r nomdurepertoire pour supprimer des fichiers où -r est " pour supprimer de façon récursive le répertoire et tous les éléments qu’il contient."

Ma question car je ne comprend pas bien : si je mets par exemple rm -r handbrake (par exemple car je viens de l'installer) ça doit me supprimer non seulement l'application dans le dossier applications mais aussi tous les petits fichiers alentours ?

Merci par avance et désolé si je ne suis pas très clair...
 
Bonjour

Les désinstallateurs d'applications tels que TrashMe sont assez limités, et loin de pouvoir régler correctement le problème dans tous les cas, certains risquent même de supprimer des fichiers sans rapport avec l'application à désinstaller et parfois de rendre le système instable. Il est donc préférable de ne pas avoir recours à ce type de solution.


Lorsque l'installation de l'application s'est limitée à une simple copie de la part de l'utilisateur, sa désinstallation se limite généralement à la mise à la corbeille de son "fichier" .app (qui est en fait un dossier) et de ses éventuels fichiers de préférences (dans le dossier (Macintosh HD)/Bibliothèque/Preferences/ et/ou le dossier (maison)/Bibliothèque/Preferences/).

Lorsque l'installation a été réalisée par un logiciel d'installation, la désinstallation peut être réalisée à l'aide d'un logiciel de désinstallation fourni par l'éditeur. Lorsque ce désinstallateur spécifique n'est pas fourni ni proposé par l'éditeur (ce qui constituerait un manquement de sa part), il est nécessaire de retrouver les fichiers installés (notamment en consultant les informations du package d'installation) afin de les supprimer manuellement. Il y a déjà eu quelques exemples de ce type de manipulation sur le forum.


La commande «rm» ne fait pas beaucoup plus que la suppression de fichiers ou de dossiers dans Finder. Notamment, elle ne supprime que le dossier ou le fichier spécifié, et pas les fichiers liés d'une manière ou d'une autre à l'application à laquelle il correspond.

L'avantage de cette commande est de pouvoir supprimer plus facilement des éléments dont l'accès est limité, en spécifiant un dossier ou un fichier normalement invisible sous Finder, ou en utilisant préalablement d'autres commandes sous Terminal pour acquérir des droit spécifiques.

Ses inconvénients, c'est qu'il faut préalablement retrouver manuellement l'emplacement du dossier ou du fichier à supprimer dans Terminal, convertir les caractères spéciaux contenus éventuellement dans le nom ou le chemin, et surtout faire très attention en l'utilisant. En effet, en cas d'erreur, les fichiers supprimés ne sont pas récupérables (ils ne passent pas par la corbeille), et dès lors que les autorisations sont données, le système n'empêche pas qu'on puisse faire de bêtises.

Si on n'y prend pas garde, une commande «rm» lancée depuis le mauvais dossier ou contenant des erreurs de frappe pourrait bien détruire le système ou les données utilisateur.
 
Bonjour et merci beaucoup de cette réponse si complète.
En fait j'avais entendu dire, et lu que même en mettant à la corbeille le fichier .app, cela ne supprimait pas forcément les autres fichiers dans les Bibliothèques, et a fortiori des fichiers "cachés".
 
Bonjour,

Comme le dit Pascal, il faut souvent jeter un oeil du côté du dossier "bibliothèque", plus particulièrement dans les sous dossiers préférences, cache et application support. La plupart des applications se limitent à ça et faire le ménage (avec prudence) dans ces dossiers devrait suffire pour le plus gros.

Pour les applications plus importantes et plus spécifiques, qui essaiment en particulier dans le dossier /usr, il vaut mieux passer par le désinstallateur.

Sinon un compromis est un soft comme clean app qui trace en permanence les fichiers installés dans le système par les applis. Même s'il ne faut pas suivre les yeux fermés les suggestions de suppression, ça permet néanmoins d'avoir un panorama des fichiers liés à l'appli.
 
En fait j'avais entendu dire, et lu que même en mettant à la corbeille le fichier .app, cela ne supprimait pas forcément les autres fichiers dans les Bibliothèques, et a fortiori des fichiers "cachés".
... pas plus qu'avec la commande «rm». Tout comme elle, Finder ne supprime que ce qu'on ne lui demande de supprimer.

Tous les fichiers, même cachés, qui sont contenus dans un dossier qu'on supprime avec Finder ou «rm» sont également bien supprimés. En revanche la suppression d'un dossier d'application .app n'a aucune incidence sur les fichiers associés qui sont situés ailleurs (dans la bibliothèque locale ou globale par exemple).
 
Les désinstallateurs d'applications tels que TrashMe sont assez limités, et loin de pouvoir régler correctement le problème dans tous les cas, certains risquent même de supprimer des fichiers sans rapport avec l'application à désinstaller et parfois de rendre le système instable. Il est donc préférable de ne pas avoir recours à ce type de solution.
C'est pas très sympa pour mon application :(
Je t'inviterai bien à tester TrashMe pour réviser ton jugement. Je viens de désinstaller 40 programmes avec TrashMe, aucun fichier trouvé par TrashMe n'était erroné. De plus, l'utilisateur dispose d'un aperçu des fichiers qui vont être supprimé, afin de vérifier quand même ce qui va être supprimé. Les applications comme TrashMe, ce n'est qu'une recherche avancée de fichier en lien avec une application...
 
Désolé pour toi. J'ai cité TrashMe parce que gigab en parlait, mais ton application n'était pas particulièrement visée.


Mon propos, c'est qu'à part les outils de désinstallation fournis avec les applications et quelques rares logiciels d'analyse spécifiques très pointus et particulièrement lourds à utiliser, aucun programme n'est en mesure de déterminer comment faire correctement le nettoyage nécessaire, en enlevant tout ce qu'il faut sans en oublier ni en rajouter.

Demander confirmation auprès de l'utilisateur (qui généralement en sait beaucoup moins que le concepteur du logiciel) ne permet pas de régler le problème, ni d'empêcher une éventuelle erreur (à moins que celle-ci soit particulièrement flagrante).

En effet, les apparences sont souvent trompeuses, et certaines installations et utilisations d'applications ne se limitent pas à copier des dossiers et des fichiers aux endroits attendus. Elles peuvent aussi ajouter ou modifier des fichiers, voire en déplacer, et parfois à des endroits inattendus, inaccessibles ou cachés à l'utilisateur. Elles peuvent également changer les attributs ordinaires ou étendus de ressources existantes.

À moins de pouvoir tracer, analyser et identifier les modifications de la configuration ultérieures à l'introduction de l'application installée, il n'existe malheureusement aucun moyen de rendre compte de façon fiable des altérations réalisées, notamment lorsqu'elles sont produites de façon indirecte, par le biais d'autres logiciels ou en différé par rapport au moment de l'installation.


Pour s'en convaincre, on peut par exemple s'essayer à supprimer des applications fournies sous forme de versions d'essai limitées dans le temps ou en nombre d'utilisations : bien souvent, alors qu'on croit en avoir effacé toutes les traces, elles parviennent à « se rappeler » de leurs installations précédentes.

Par ailleurs, lorsque certains logiciels s'installent en s'insérant dans le système de sorte que leur présence lui devienne indispensable (remplacement de sous-systèmes existants, par exemple), on peut constater qu'ils provoquent bien souvent l'instabilité de celui-ci quand on les supprime sans précaution.

La lecture des scripts présents dans les packages d'installation des applications est aussi riche d'enseignements. Elle prouve à l'évidence qu'il est difficile, voire impossible, de deviner tout ce qu'il est nécessaire de réaliser pour rétablir le système dans son état initial.
 
Non mais je ne l'ai pas mal pris ;)

Tu as en grande partie raison, on ne peut pas trouver tous les fichiers liés, car beaucoup de développeurs ne respectent pas les "Guidelines" Apple. S'ils le faisaient, tout serait plus simple. L'avantage du Mac App Store, c'est qu'Apple n'autorise le stockage de fichiers qu'à certains endroits bien précis (principalement Application Support).
 
J'ouvre une parenthèse, parce que c'est un peu hors sujet...

Oui, le Mac App Store n'autorise que les applications répondant à des règles très strictes, notamment en terme de modification de leur environnement.

L'inconvénient, c'est qu'on n'y trouve par conséquent que des applications aux fonctionnalités assez limitées, qui se contentent de tourner sagement dans le yard qu'on leur a alloué.

Le premier exemple de ce défaut qui me vient à l'esprit est l'incontournable VLC de VideoLAN qui, de par sa conception, ne peut pas prétendre y figurer.

C'est l'une des raisons pour lesquelles je n'utilise pas le MAS, et que mes logiciels proviennent de sources différentes, plus directes et beaucoup plus intéressantes.


Je comprends parfaitement qu'une grande partie des utilisateurs puissent se contenter d'un système logiciellement bridé, de type iPhone ou iPad... la majorité d'entre eux n'a d'ailleurs probablement pas besoin de plus qu'un terminal graphique. Mais c'est loin d'être ma tasse de thé.

Pour ma part, si j'utilise un ordinateur c'est justement pour pouvoir réaliser sans restriction tout ce que je souhaite, et notamment accéder à tout ce que les autres appareils disponibles sur le marché sont incapables de m'apporter fonctionnellement ou à un coût plus abordable, y compris tout ce qu'Apple n'a pas forcément prévu de base sur les Macs.


Je ferme la parenthèse.


Bref, des logiciels qui en mettent partout en s'installant et en fonctionnant, on risque d'en voir encore passer quelques uns. C'est le symptôme d'un mal nécessaire.

Le jour où il n'y en aura plus sur Mac, j'aurai probablement déjà changé de crèmerie.
 
Etre organisé ne signifie pas limité. Par exemple, Apple recommande de stocker les fichiers d'une application (pas ceux de l'utilisateurs, mais ceux nécessaires au bon fonctionnement de l'application, fichiers temporaires ou non) dans un sous-dossier de "Library/Application Support". Pourquoi diable certains développeurs veulent à tout prix mettre ça n'importe où ? J'en vois qui vont même jusqu'à créer un sous-dossier directement dans la bibliothèque de l'utilisateur, sans aucune raison. Pour ton exemple de VLC, je ne vois pas ce que VLC installe autre part que dans les endroits classiques ?

Perso j'aime pas trop les applis qui demande des droits d'admin pour s'installer, et souvent ce n'est pas absolument nécessaire.
 
Je ne parle pas des applications « mal rangées ». Il y en a, bien sûr, mais ce n'est pas le problème que j'évoque.

Ce qui est en question dans mon propos, ce sont celles qui ajoutent des fichiers ou apportent des modifications là où Apple l'a bien prévu, mais où la firme ne souhaiterait pas qu'on intervienne. Suivre les règles du MAS implique notamment qu'elles doivent se contenter des seuls sous-systèmes prévus par la firme. Et c'est en cela qu'elles sont limitées.

La majorité des applications qui apportent des fonctionnalités supplémentaires au système n'ont pas leur place dans cette politique apparemment « hygiénique » (mais surtout stratégique, je pense), alors même qu'elles présentent justement une grande partie de l'intérêt de posséder un ordinateur personnel plutôt qu'un appareil électronique spécialisé non programmable.

Pour reprendre l'exemple de VLC, ce logiciel n'installe pas ses fichiers de manière anarchique, mais il pose tout de même à Apple des problèmes d'accès aux dossiers système. Pourtant, s'en passer interdirait d'emblée l'accès à de nombreux formats et protocoles qu'Apple n'a pas prévu de supporter. Et c'est finalement aussi le cas de la majorité des logiciels que j'utilise quotidiennement (... et qu'on ne trouve pas sur le MAS, du reste).


Concernant les applications qui demandent le mot de passe administrateur alors que rien ne le justifie, chez moi elles sont cataloguées « suspectes » et partent directement à la corbeille. ;)