Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Software>Beste App zur De-Installation anderer Programme/apps?

Beste App zur De-Installation anderer Programme/apps?

Moka´s Onkel
Moka´s Onkel19.02.2109:56
Ich musste mir für eine Videokonferenz mit chinesischen Geschäftspartnern WeChat bzw. VooV runterladen und installieren.

Jetzt brauche ich die nicht mehr und möchte die Programme möglichst vollständig entfernen.

Hat hier jemand einen Tipp, mit welcher App/Programm man diese Apps/Programme vollständig entfernen kann?

Danke schon mal in die Runde.
0

Kommentare

Raed2319.02.2110:08
Hallo,

Ich benutze für diese Zwecke den App Cleaner & Uninstaller von nektony.
+2
maculi
maculi19.02.2110:15
Je nachdem wo ein Installer seinen Müll abgeladen hat kann es immer sein, das Reste bleiben. Einen guten Job macht der AppCleaner Selbst wenn der was übersieht, das sind dann nur noch einzelne Textdateien, die weder viel Platz belegen noch selbständig nach Hause telefonieren können.
+3
udrabo
udrabo19.02.2110:16
Falls Du bereits Forklift besitzst, kannst Du auch das verwenden. Wenn Du in Forklift ein Programm löschst, schaut die App auch, was dazu gehört und löscht das mit.
+1
marm
marm19.02.2111:16
Ehrlich gesagt macht AppCleaner überhaupt keinen guten Job. Ja, es findet weitere Dateien und es ist besser als nichts. Aber es verbleiben sehr viele und teils sehr umfangreiche Dateien. Ich empfehle zusätzlich mit PKG Uninstaller und Easy Finder weitere Dateien aufzuspüren.
Bei Apps wie Evernote, Teams, Office, Adobe, um mal ein paar zu nenne, verblieben bei mir Dateien im Umfang von mehreren hundert MB. Spitzenreiter war ON1 mit 5 GB, die nicht von AppCleaner gelöscht wurden. Bei jedem Programm suche ich im Nachhinein mit Easy Finder nach weiteren Resten.
0
Marcel Bresink19.02.2111:22
Zunächst müsste man wissen, ob diese Programme auf "normale" Art per Drag-und-Drop auf den Rechner kopiert wurden, oder ob man einen "Installer" starten musste.

Wenn ein Programm einen Installer verwendet hat, sollte man auf gar keinen Fall irgendeinen "Cleaner" verwenden. Das kann sonst größere Schäden im System zurücklassen. Bei solchen Programmen schaut man in der Hilfe oder auf der Webseite des Anbieters nach, ob es eine passende De-Installationsanleitung oder sogar ein spezielles Skript dafür gibt und folgt dann den Anweisungen des Herstellers.
+5
marm
marm19.02.2111:47
Ich habe mal Screenshots gemacht von Dateien, die nicht mit AppCleaner gelöscht wurden. Demnach:
XnView 550 MB, Thunderbird (über 8 GB Mails), Evernote 300 MB (Notizdateien), Garageband (lange Liste bestimmt mehr als 1 GB pkg-Dateien), Teams (400 MB + 200 MB pkg).
0
Moka´s Onkel
Moka´s Onkel19.02.2111:52
Marcel Bresink
Zunächst müsste man wissen, ob diese Programme auf "normale" Art per Drag-und-Drop auf den Rechner kopiert wurden, oder ob man einen "Installer" starten musste.

WeChat habe ich über den Mac AppStore installiert und VooV von einer gemounteten .dmg Datei in den Programme Ordner geschoben. Letzteres also per drag and drop ohne Installer. Wie ist es mit der Installation aus dem AppStore? Ist das als über einen "Installer" installiert anzusehen?

Insgesamt geht es mir weniger um übrig gebliebene Dateien, die Platz auf der Platte beanspruchen, sondern eher darum, dass nichts nach Hause telefoniert.
+2
tranquillity
tranquillity19.02.2112:18
Wäre eine tolle Sache, wenn der App-Store einen Uninstaller anbieten würde. Was passiert denn, wenn man im Launchpad länger auf eine App drückt, so dass sie wie auf dem iPad zu wackeln anfangen, und man dann auf das Kreuzchen drückt? Wir die App dann vollständig gelöscht? Das Kreuzchen ist zumindest bei allen Apps vorhanden, die mit dem App-Store installiert wurden.
0
Bozol
Bozol19.02.2112:27
Falls Du z. B. Hazel bereits installiert hattest gibt Dir Hazel Rückmeldung über noch zu löschende Daten.

Und auch wenn man meint das Hazel (oder andere Programme) alles finden würden: dem ist oft nicht so, daher desinfiziere ich noch meinen Mac mit Easyfind (Freeware). Das listet oft noch einiges auf.
+1
jeti
jeti19.02.2112:29
maculi
Je nachdem wo ein Installer seinen Müll abgeladen hat kann es immer sein, das Reste bleiben. Einen guten Job macht der AppCleaner Selbst wenn der was übersieht, das sind dann nur noch einzelne Textdateien, die weder viel Platz belegen noch selbständig nach Hause telefonieren können.

Alternativ gibt es noch den AppZapper
Machte im Endeffekt nichts anderes, und kostet $ 20.
Es gibt eine Demo, teste doch beide und vergleiche ob der eine oder andere mehr/weniger findet.

Mit dem AppCleaner fahre ich sehr gut da die Synium-Software nicht unter BigSur läuft.
War bisher mein favorisierter De-Installer.
0
Ely
Ely19.02.2112:40
Hier sollte zwischen AppCleaner und App Cleaner & Uninstaller unterschieden werden.

Welcher von denen macht keinen guten Job?
0
DTP
DTP19.02.2112:41
Ich kann eigentlich nur empfehlen, den Beitrag von Marcel nochmal zu lesen.

Wenn eine App installiert wurde, dann kann diese Einträge in Systemeinträgen (zB plists) verändert haben. Diese finden solche generischen App Zapper nicht. Dann bleibt entweder ein verwaister Eintrag oder – im schlimmsten Fall – wird das komplette Systemfile gelöscht, was dann das System unbenutzbar machen kann.

Auch über Drag und Drop installierte Programme können solche Einträge ändern oder Helper installieren, das kann man in der Regel daran sehen, das beim ersten Start der App nach dem Systempassword gefragt wurde.

Mein Tipp:
1) Immer ein aktuelles Backup haben
2) Nach Uninstaller auf der Herstellerseite oder nach manuellen Deinstallations Anweisungen suchen
3) Wenn nicht vorhanden, nach "<xyz> uninstall how to" googlen und Ratschläge von vertrauenswürdigen Sites befolgen
4) Danach Spotlight (mit Option inkl. Systemfiles) und EtreCheck o.ä. laufen lassen, um verwaiste Einträge zu finden.
5) Wenn es nur MegaByte Leichen sind, löschen. Wenn es Systemfiles sind, Ratschlägen von EtreCheck folgen oder nochmal googlen (und das Backup bereithalten).
+1
chill
chill19.02.2112:47
Ich würde mich an Marcel halten. Der weiss hier am besten was er schreibt. DTP kann man da nur zustimmen.

Denn wer weiss schon, welche Apps man mit Installer oder Drag&Drop installiert hat. Noch weiss ich das mit dem neuen Rechner ... aber später dann?
„MBP M1 256/16 Monterey 12.1 . iPhone 11 128 GB, iOs 15.2“
+2
steve.it19.02.2112:54
Ein richtiger paketmanger in macOS wäre schön.
+2
DTP
DTP19.02.2113:14
steve.it
Ein richtiger paketmanger in macOS wäre schön.
Stimmt.

Und ich finde es erstaunlich, dass sogar Windows das besser hinbekommt als MacOS.
+1
Marcel Bresink19.02.2113:36
DTP
Und ich finde es erstaunlich, dass sogar Windows das besser hinbekommt als MacOS.

Die Grundidee dahinter ist: Programme, die sich strikt an die Regeln von macOS halten, brauchen keinen Installer und haben auch kein Recht, irgendetwas im System zu ändern. Deshalb ist auch keine Deinstallation nötig, man zieht das Programmsymbol einfach in den Papierkorb.
+7
DTP
DTP19.02.2113:40
Marcel Bresink
DTP
Und ich finde es erstaunlich, dass sogar Windows das besser hinbekommt als MacOS.

Die Grundidee dahinter ist: Programme, die sich strikt an die Regeln von macOS halten, brauchen keinen Installer und haben auch kein Recht, irgendetwas im System zu ändern. Deshalb ist auch keine Deinstallation nötig, man zieht das Programmsymbol einfach in den Papierkorb.
Aber auch dann können ja Pref Dateien, die das Programm abgelegt hat, übrig bleiben oder?

Ich kenne einige clevere Programme, die merken, wenn sie in den Papierkorb gezogen werden und bieten dann sogar Hilfe dabei an, nicht benötigte Dateien zu löschen. Das sind mW aber nicht die offiziellen Regeln von MacOS.
+1
steve.it19.02.2113:43
Paketmanger macht auch sonst Sinn: einfache Installation und Updates

Mit den Casks von homebrew geht das wohl. Habe damit aber keine echte Erfahrung.
0
DTP
DTP19.02.2113:58
steve.it
Paketmanger macht auch sonst Sinn: einfache Installation und Updates
Für Installationen und Updates forciert Apple halt den App Store

Ich fände es auch sinnvoll, vor allem, weil beim Unix Unterbau das ja nicht so schwierig sein sollte.
0
Marcel Bresink19.02.2115:29
DTP
Aber auch dann können ja Pref Dateien, die das Programm abgelegt hat, übrig bleiben oder?

Natürlich, aber die würde ein Paketmanager üblicherweise auch nicht löschen. Im Sinne des Paketes sind das ja Benutzerdokumente, die ein Benutzer erst während der Benutzung des Programms über dieses Programm angelegt hat. Paketmanager und "Cleaner" sind zwei unterschiedliche Konzepte mit unterschiedlichen Zielsetzungen.

Paketmanager braucht man auf der Unix-Ebene, um Installationen, Updates und Deinstallationen kontrolliert zu steuern und dabei Konflikte und gegenseitige Abhängigkeiten aufzulösen. Alle diese Dinge können bei "konformer" macOS-Software überhaupt nicht auftreten.
DTP
Ich kenne einige clevere Programme, die merken, wenn sie in den Papierkorb gezogen werden und bieten dann sogar Hilfe dabei an, nicht benötigte Dateien zu löschen. Das sind mW aber nicht die offiziellen Regeln von MacOS.

Das verstößt sogar massiv gegen die Regeln, denn dazu muss dieses Programm einen ständig laufenden Spionageprozess im System installieren, der das Programmpaket beobachtet.
+2
steve.it19.02.2116:41
Marcel Bresink
Paketmanager braucht man auf der Unix-Ebene, um Installationen, Updates und Deinstallationen kontrolliert zu steuern und dabei Konflikte und gegenseitige Abhängigkeiten aufzulösen.

#apt-get remove --purge package
#apt-get clean

Ich glaube damit bekommt man unter Linux mit apt-get als Paketmanager Pakete von Anwendungen nahezu komplett weg.
0
DTP
DTP19.02.2116:43
Marcel Bresink
DTP
Ich kenne einige clevere Programme, die merken, wenn sie in den Papierkorb gezogen werden und bieten dann sogar Hilfe dabei an, nicht benötigte Dateien zu löschen. Das sind mW aber nicht die offiziellen Regeln von MacOS.

Das verstößt sogar massiv gegen die Regeln, denn dazu muss dieses Programm einen ständig laufenden Spionageprozess im System installieren, der das Programmpaket beobachtet.
Das sind Programme, die eh einen Demon installiert haben, um etwas im Hintergrund zu tun. Wenn man sie dann löscht, merkt der Demon das, löscht alles und beendet sich selbst. Ansonsten hättest du recht, das wäre Spionage.
0
milk
milk19.02.2118:41
Marcel Bresink
Wenn ein Programm einen Installer verwendet hat, sollte man auf gar keinen Fall irgendeinen "Cleaner" verwenden. Das kann sonst größere Schäden im System zurücklassen.
Die Begründung dieser Aussage würde mich interessieren.
+1
Moka´s Onkel
Moka´s Onkel19.02.2121:33
DTP
Ich kann eigentlich nur empfehlen, den Beitrag von Marcel nochmal zu lesen.
Das versteht sich von selbst. Seine Autorität zweifelt hier kaum jemand an.
DTP
Mein Tipp:
1) Immer ein aktuelles Backup haben
Habe ich nur 1 x täglich in zwei Ausführungen (CCC und TM). Reicht mir aber.
DTP
2) Nach Uninstaller auf der Herstellerseite oder nach manuellen Deinstallations Anweisungen suchen
3) Wenn nicht vorhanden, nach "<xyz> uninstall how to" googlen und Ratschläge von vertrauenswürdigen Sites befolgen
4) Danach Spotlight (mit Option inkl. Systemfiles) und EtreCheck o.ä. laufen lassen, um verwaiste Einträge zu finden.
Das ist (bis auf EtreCheck) meine übliche Methode. Wobei ich gestehen muss, dass ich EtreCheck noch nicht kannte. Gucke ich mir mal an. Danke für den Tipp!

Und so habe ich die beiden Apps dann auch entfernt. So weit ich es sehen kann, ist nichts übrig davon geblieben. Aber ich bin eben auch Laie.
DTP
5) Wenn es nur MegaByte Leichen sind, löschen. Wenn es Systemfiles sind, Ratschlägen von EtreCheck folgen oder nochmal googlen (und das Backup bereithalten).
Ja, Vorsicht ist die Mutter der Porzellankiste. Ich bin leider manchmal etwas verwegner. Aber immerhin gibt es Backups.
+1
Weia
Weia20.02.2107:51
Ich habe den Eindruck, dass dieser Thread sich etwas vom Thema entfernt hat. Primär kreist er darum, wie sämtliche Hinterlassenschaften eines Programms beseitigt werden können. Aber warum ist das überhaupt wichtig? Ich habe den entsprechenden Ordnungsfanatismus nie nachvollziehen können. Ich verstehe das bei sehr großen Dateien, die unnötig Speicherplatz rauben. Aber der Speicherplatzbedarf etwa einer plist fällt unter statistisches Rauschen; warum sollte man den Ehrgeiz haben, die zu entfernen?

Moka´s Onkel geht es doch aber erklärtermaßen um etwas ganz anderes: nämlich die Befürchtung, dass ein Mechanismus zurückbleibt, der seinen Mac ausspioniert. Ich verstehe zwar nicht, wie man zu dieser Befürchtung kommen kann, aber egal: damit so ein Mechanismus zurückbleiben kann, muss er sich persistent verankern. D.h., es muss einen entsprechenden Starteintrag in den Systemeinstellungen geben oder in /Library/LaunchDemons oder in einem der LaunchAgents-Ordner. Da kann man einen Blick reinwerfen und wenn man da nichts findet, ist diese Sorge jedenfalls völlig grundlos. Falls man darüber hinaus noch seinen Aufräum-Zwangsneurosen frönen will, kann man das dann ja zumindest gemächlicher angehen, Gefahr besteht jedenfalls keine mehr.
„🦖The dinosaurs invented Jesus to test our confidence in science“
+4
Weia
Weia20.02.2107:55
Marcel Bresink
DTP
Ich kenne einige clevere Programme, die merken, wenn sie in den Papierkorb gezogen werden und bieten dann sogar Hilfe dabei an, nicht benötigte Dateien zu löschen. Das sind mW aber nicht die offiziellen Regeln von MacOS.
Das verstößt sogar massiv gegen die Regeln, denn dazu muss dieses Programm einen ständig laufenden Spionageprozess im System installieren, der das Programmpaket beobachtet.
Gegen welche Regeln sollte das denn verstoßen? Es gibt doch sogar extra eine API dafür. Spionageprozess ist dementsprechend auch ein etwas tendenziöser Begriff.
„🦖The dinosaurs invented Jesus to test our confidence in science“
+2
Moka´s Onkel
Moka´s Onkel20.02.2110:43
Weia
Ich habe den Eindruck, dass dieser Thread sich etwas vom Thema entfernt hat. Primär kreist er darum, wie sämtliche Hinterlassenschaften eines Programms beseitigt werden können. Aber warum ist das überhaupt wichtig? Ich habe den entsprechenden Ordnungsfanatismus nie nachvollziehen können. Ich verstehe das bei sehr großen Dateien, die unnötig Speicherplatz rauben. Aber der Speicherplatzbedarf etwa einer plist fällt unter statistisches Rauschen; warum sollte man den Ehrgeiz haben, die zu entfernen?
Das sehe ich genauso und den Ehrgeiz, alles zu entfernen, habe ich bestimmt nicht.
Weia
Moka´s Onkel geht es doch aber erklärtermaßen um etwas ganz anderes: nämlich die Befürchtung, dass ein Mechanismus zurückbleibt, der seinen Mac ausspioniert. Ich verstehe zwar nicht, wie man zu dieser Befürchtung kommen kann,
Zu dieser Befürchtung kann man kommen, wenn man - wie ich - keine Ahnung von den Feinheiten des Betriebssystems hat. Und den Chinesen traue ich alles zu. Was weiß ich denn, was die bei der Installation von VooV oder WeChat nebenbei noch so alles installiert haben?
Weia
aber egal: damit so ein Mechanismus zurückbleiben kann, muss er sich persistent verankern. D.h., es muss einen entsprechenden Starteintrag in den Systemeinstellungen geben oder in /Library/LaunchDemons oder in einem der LaunchAgents-Ordner. Da kann man einen Blick reinwerfen und wenn man da nichts findet, ist diese Sorge jedenfalls völlig grundlos.
Danke Weia, dass ist genau der Tipp, den ich benötigt habe!
+1
Weia
Weia21.02.2102:07
Moka´s Onkel
Weia
Ich verstehe zwar nicht, wie man zu dieser Befürchtung kommen kann,
Zu dieser Befürchtung kann man kommen, wenn man - wie ich - keine Ahnung von den Feinheiten des Betriebssystems hat. Und den Chinesen traue ich alles zu.
Satz 1 kann ich vollkommen verstehen und nachvollziehen. Die Komplexität moderner Computer ist im Wortsinne überwältigend. Mein Unverständnis bezieht sich ausschließlich auf Satz 2: Ich kann nicht nachvollziehen, wieso man chinesischen Unternehmen mehr Misstrauen entgegenbringt als US-amerikanischen. Aber wie gesagt: egal, das ist ein anderes Thema.
Was weiß ich denn, was die bei der Installation von VooV oder WeChat nebenbei noch so alles installiert haben?
Ja, das ist natürlich ein ganz grundsätzliches Problem auch unabhängig von Deinen spezifischen Befürchtungen. Man möchte ja eigentlich ganz gerne wissen, was sich wo auf dem eigenen Rechner denn so tut.

Das beste diesbezügliche Vorgehen, das ich kenne, ist, sich bei der Installation eines Programms die Mühe zu machen zu protokollieren, welche Dateien dabei erzeugt werden, und diese Protokolle an einem dafür vorgesehenen Ort zu sammeln. Der Aufwand nervt während der Installation, ist später aber bisweilen sehr nützlich. Die Frage ist natürlich: wie?

Programme, die einfach via Drag & Drop „installiert“ werden (oder aus dem App Store kommen), enthalten zunächst mal natürlich alle Bestandteile in sich. Möglicherweise speichern sie aber ohne zu fragen alles mögliche außerhalb ihrer selbst ab, sobald sie das erste Mal gestartet werden.

Bei Programmen, die mit dem Installationsprogramm installiert werden, ist es hingegen ja explizit vorgesehen, dass Dateien quer über das System verstreut installiert werden können. Man kann sich im Installationsprogramm in Ablage → Dateien einblenden zwar anzeigen lassen, welche Dateien installiert werden, aber erstens lässt sich diese Liste leider nicht abspeichern und zweitens können im Installationspaket enthaltene Skripte zusätzliche Dateien irgendwohin kopieren, die dann in dieser Liste nicht auftauchen. Zudem kann das Programm beim Erststart natürlich wiederum noch weitere Dateien erstellen.

Ich habe mir daher gleich zu Beginn von macOS (Mac OS X) vor 20 Jahren ein kleines Unix-Progrämmchen geschrieben, das dieses Problem für alle diese Fälle löst. Das Progrämmchen ist auch für Terminal-Laien leicht zu bedienen und hat sich jetzt seit 20 Jahren im regelmäßigen Einsatz bewährt und ich könnte mir macOS-Systemadministration ohne es gar nicht vorstellen.

Das Programm durchsucht einfach (mit einigen wenigen spezifischen Ausnahmen) die gesamte Festplatte nach Dateien, die sich in den letzten Minuten (wie viele genau, kann man angeben) geändert haben oder hinzugefügt wurden. Die Pointe dabei ist, dass diese Suche nicht raffinierte Dinge wie Spotlight oder Echtzeit-Änderungsmeldungen des Dateisystems nutzt, sondern eine tumbe Brute-Force-Suche durchführt. Dadurch ist die Suche zwar langsam (kann je nach Festplattengröße und Geschwindigkeit einen guten Teil einer Stunde dauern), aber sie lässt sich nicht austricksen (naja, fast nicht, ist mir in den 20 Jahren aber noch nie untergekommen) und findet alles.

Das Progrämmchen heißt findchanges und ist nichts weiter als ein Shellskript, das den „eigentlichen“ Unix-Befehl zum Suchen, find, mit den entsprechenden Parametern startet.

Da es nur ein Shellskript ist, könnt Ihr es ganz leicht selbst installieren, indem Ihr den folgenden Code
#!/bin/sh

NAME="`basename "$0"`"


ROOT=/
if [ "$1" == "-u" ]; then ROOT=$HOME; shift; fi

if [ "$ROOT" == "/" -a "`whoami`" != root ]; then echo You must be root to use $NAME >&2; exit -1; fi

TIME=$1

if [ "$TIME" == "" ] || ! expr "$TIME" + 0 > /dev/null 2>&1; then
    echo "$NAME: No time period (in minutes) specified in which to look for changes.
Using the default value of 10 minutes."
    TIME=10
fi


find $ROOT -type d -name Volumes -prune -o -type d -name net -prune -o -type d -name Mail -prune -o -type d -name mail -prune -o -type d -name dev -prune -o -type d -name vm -prune -o -type d -name .Spotlight-V100 -prune -o -type d -name Caches -prune -o -type f -cmin -$TIME -print 2>&1 | grep -v ': Permission denied$' | grep -v '/Library/Saved Application State/'
in ein TextEdit-Fenster (im Format reiner Text) kopiert, als findchanges irgendwo abspeichert (aufpassen, dass kein .txt angehängt wird!) und dann unter Eingabe des Admin-Passwortes im Finder nach /usr/local/bin/ verschiebt. Schließlich müssen die Zugriffsrechte noch so eingestellt werden, dass das Programm ausführbar ist. Im Terminal (von einem Konto mit Admin-Rechten aus):
sudo chmod 755 /usr/local/bin/findchanges
Return drücken, ggf. Admin-Passwort eingeben und nochmal Return drücken

Zur Anwendung:

Bevor Ihr ein Programm installiert, notiert Ihr die exakte (auf Sekunden genaue) Uhrzeit.

Dann installiert Ihr das Programm, startet es einmal, gebt ggf. die Lizenzdaten ein und beendet das Programm wieder.

Sodann startet Ihr findchanges unter Angabe der (auf ganze Minuten aufgerundeten) Minuten, die seit dem notierten Zeitpunkt vor der Installation vergangen sind. In den folgenden Beispielen nehme ich 7 Minuten als Beispiel.

Habt Ihr ein Installationsprogramm verwendet und musstet ein Admin-Passwort eingeben, so kann das Installationsprogramm überall auf dem ganzen Mac Dateien angelegt haben. Folglich müsst Ihr auch findchanges mit root-Rechten (also mit sudo) laufen lassen – im Terminal (von einem Konto mit Admin-Rechten aus):
sudo findchanges 7

Musstet Ihr während der Installation kein Admin-Passwort angeben, so können Dateien nur in Eurem Nutzerordner angelegt worden sein, also müsst Ihr auch nur den durchsuchen (kein sudo nötig) und das mit der Option -u mitteilen: Im Terminal:
findchanges -u 7
Gebt Ihr keine Zeit an, verwendet findchanges 10 Minuten.

Nun müsst Ihr einige Zeit warten und bekommt dann im Terminal alle veränderten Dateien aufgelistet. Die könnt Ihr in ein TextEdit-Dokument kopieren und abspeichern.

Da in macOS unentwegt etwas passiert, werdet Ihr auch Dateien aufgelistet bekommen, die nichts mit der Programminstallation zu tun haben. findchanges könnte da vermutlich noch etwas optimiert werden (ich habe es in den 20 Jahren kaum verändert), aber lieber zu viel angezeigt als zu wenig.

Ausgeschlossen sind macOS-interne Ordner wie die für Spotlight, Caches und auch Emails (weil sonst die Suchzeit explodieren würde) und auch alle Volumes außer dem Bootvolume (wiederum wegen der Suchzeit). Normalerweise installieren Installationsprogramme nur Dateien auf dem Bootvolume, weil sie ja nicht wissen können, was es sonst noch so gibt, aber falls Ihr einem Programm gegenüber besonders argwöhnisch seit, könnt Ihr ja vor der Installation eventuelle andere Volumes auswerfen bzw. deaktivieren.

Wenn Ihr Euch ein Bild machen wollt, was sonst so laufend auf Eurem Mac passiert, könnt Ihr ja mal 10 Minuten nichts tun und dann findchanges laufen lassen; dann bekommt Ihr einen Eindruck davon, was unabhängig von einer Installation auf Eurem Mac geschieht.

In den 20 Jahren hat es bei mir jedenfalls noch kein Programm geschafft, irgendeine Datei vor mir zu verbergen, die dann Unheil anrichtete.

Vielleicht nützt das ja dem einen oder anderen von Euch.
„🦖The dinosaurs invented Jesus to test our confidence in science“
+10
milk
milk21.02.2108:38
Vielen Dank an Weia für das lustige Skript. Auf SSDs dürfte das ganz hilfreich sein, während ich mir vorstellen kann, dass durch die extremen Laufzeiten auf mechanischen Festplatten ziemlich viele Dateien erfasst werden dürften, die nichts mit der Programminstallation zu tun haben, weil so ein Unix-System halt recht geschäftig ist im Hintergrund.

Wer sich ein Bild machen will, welche Dateien alle gerade im Moment auf seinem Mac geöffnet sind, kann das übrigens deutlich schneller mit dem Aufruf von lsof im Terminal sehen. Aber nicht erschrecken.
+2
fabisworld
fabisworld21.02.2108:44
Weia
[…] Ich habe mir daher gleich zu Beginn von macOS (Mac OS X) vor 20 Jahren ein kleines Unix-Progrämmchen geschrieben, das dieses Problem für alle diese Fälle löst. Das Progrämmchen ist auch für Terminal-Laien leicht zu bedienen und hat sich jetzt seit 20 Jahren im regelmäßigen Einsatz bewährt und ich könnte mir macOS-Systemadministration ohne es gar nicht vorstellen. […]

Weia, vielen Dank dafür, dass Du diese Idee und Dein Script mit uns teilst und so eine gute Anleitung dazu hier veröffentlichst! Es wäre noch interessant, zu erfahren, welche Vorgehensweise Du empfiehlst, um später dann mal ein Programm und seinen dazugehörigen Datei-Salat anhand einer solchen "Protokoll-Liste" zu entfernen…
0
rxw
rxw21.02.2109:46
Schön zu hören bzw. zu lesen, dass es viele ähnlich geht wie mir. Nach Versuchen mit App's zum "Deinstallieren" bin ich vor einigen Jahren wieder bei der Handarbeit gelandet.
Ich nutze 4 Ansätze:

* Grundsätzlich die "Sinnfrage" der App stellen - brauche ich es...

* vor der Installation, prüfen was die App beim Installieren macht. Bei Package, Durchsicht der Scripts für Installieren und möglicherweise Deinstallieren mit Suspicious Package

* bei reinen Apps ohne Installation zur Deintallation nutze ich FAF, deutsches Qualitätstool zum Suchen von App-Fagmenten - Vorteil als Admin zu suchen.

* Händische Durchsicht alle möglichen Quellen (wie oben angeführt, ...) und Bereinigungen, etwa mit pkgutil.

Bislang gut gefahren, wobei ich mich eher der Gruppe "Ordnungsfanatismus" zuordne.
+2
Weia
Weia21.02.2112:19
milk
Vielen Dank an Weia für das lustige Skript. Auf SSDs dürfte das ganz hilfreich sein, während ich mir vorstellen kann, dass durch die extremen Laufzeiten auf mechanischen Festplatten ziemlich viele Dateien erfasst werden dürften, die nichts mit der Programminstallation zu tun haben, weil so ein Unix-System halt recht geschäftig ist im Hintergrund.
Ich nutze das Skript ja wie gesagt seit 20 Jahren, da wusste noch keiner, was eine SSD ist. Das war nie ein ernsthaftes Problem, mit etwas Erfahrung erkennt man schnell die „Kandidaten“. Das größere Hindernis war damals die Zeit, die das Skript zum Durchlauf benötigte.
„🦖The dinosaurs invented Jesus to test our confidence in science“
0
Weia
Weia21.02.2112:49
fabisworld
Es wäre noch interessant, zu erfahren, welche Vorgehensweise Du empfiehlst, um später dann mal ein Programm und seinen dazugehörigen Datei-Salat anhand einer solchen "Protokoll-Liste" zu entfernen…
Also zunächst versuche ich mich zu disziplinieren, schon direkt nach Erstellen die Liste „auszumisten“. Z.B. wird es ja immer sehr viele Dateien in dem Programmpaket geben, also etwa
/Applications/NeuesProgramm.app/Contents/Datei1
/Applications/NeuesProgramm.app/Contents/Datei2
/Applications/NeuesProgramm.app/Contents/Datei3

usw. Die kann man natürlich alle in die eine Zeile
/Applications/NeuesProgramm.app
zusammenfassen.

Und selbiges gilt auch für andere Ordner und Pakete, die das Programm exklusiv nutzt, etwa in Library/Application Support oder bei Plugins etc. Man muss nur aufpassen, dass bei Herstellern, die verschiedene Programme anbieten, die z.B. alle auf einen gemeinsamen Ordner in Library/Application Support zugreifen, man diesen gemeinsamen Ordner nicht löscht, wenn man nur eines der Programme dieses Herstellers löschen will.

Wenn man das so zusammenfasst, wird aus einer Liste mit Hunderten Zeilen schnell eine übersichtliche mit ganz wenigen Zeilen.

Und dann kann man natürlich auch Einträge löschen, von denen völlig klar ist, dass sie Dateien auflisten, die mit dem Programm nichts zu tun haben (typischerweise z.B. macOS-Logdateien etc.). Wie gesagt, das wächst mit der Erfahrung und man kann zu Beginn eben mal findchanges laufen lassen, wenn man nichts installiert hat, um solche typischen Einträge auf dem eigenen Rechner zu sehen.

Im Zweifelsfall lasse ich einen Eintrag aber lieber stehen, am besten in einem gesonderten Abschnitt, der bedeutet noch unklar. Spätestens beim Löschen muss man da dann halt nochmals näher nachsehen, ob diese Datei etwas mit dem zu löschenden Programm zu tun haben könnte. Da hilft für die Plausibilitätsprüfung dann oftmals das Datum, an dem diese Datei das letzte Mal verändert oder geöffnet wurde.

Eine andere Hilfsmöglichkeit ist, im Terminal
strings /Pfad/zu/fraglicher/Datei
einzugeben. Dieser Befehl listet alle ASCII-Zeichenketten auf, die sich in der fraglichen Datei finden lassen, ignoriert aber alle anderen Bits, die unleserlicher binärer Kauderwelsch oder gar gefährlich sind. So findet man auch Hinweise, ob diese Datei etwas mit dem Programm zu tun haben kann oder eher nicht.

Ja, und dann löscht man halt aus der Liste, was einem wichtig ist. Ich ignoriere in der Regel kleine einzelne Dateien wie z.B. plists (es sei denn, sie versuchen in ihrem Namen und Speicherort explizit zu verschleiern, zu welchem Programm sie gehören, denn das mag ich aus Transparenzgründen gar nicht), lösche aber vielleicht (aus Platzgründen, da ansonsten völlig ungefährlich) Ordner in Library/Application Support und ganz sicher Plugins (für QuickLook, Spotlight, Audio etc.), da diese ohne Update in späteren macOS-Versionen zu Kernel Panics führen können, und vor allem natürlich jegliche Dateien dieses Programms in /Library/StartupItems, /Library/LaunchDaemons und den LaunchAgents-Ordnern, da diese potentiell bösartige Hintergrundprogramme starten könnten.

Es sollte natürlich immer ein Backup existieren, damit man eine evtl. zu viel gelöschte Datei wiederherstellen kann.
„🦖The dinosaurs invented Jesus to test our confidence in science“
0
Weia
Weia21.02.2113:23
rxw
* vor der Installation, prüfen was die App beim Installieren macht. Bei Package, Durchsicht der Scripts für Installieren und möglicherweise Deinstallieren mit Suspicious Package
Das ist eine sehr hübsche App, die ich noch nicht kannte. Ich nutze für solche Zwecke Pacifist , das zwar mehr kann (namentlich das macOS-Installationsprogramm ersetzen), aber für Laien für den hier diskutierten Zweck viel weniger übersichtlich ist. Danke für den Link!
* bei reinen Apps ohne Installation zur Deintallation nutze ich FAF, deutsches Qualitätstool zum Suchen von App-Fagmenten - Vorteil als Admin zu suchen.
Das ist mehr oder weniger eine GUI für find, aber in dieser allgemeinen Form nützt Dir das halt nichts, wenn eine installierte Datei in ihrem Namen gezielt zu verschleiern versucht, dass sie zu dem fraglichen Programm gehört – und böswillige Komponenten dürften das mit ziemlicher Sicherheit tun.

Klassisches Beispiel: Zu welchem Programm gehört ~/Library/Application Support/.Shadowland3.5? Und das ist noch ein harmloses Beispiel, da es weder Schadcode ist noch die Entwickler – der generell bei diesem Hersteller vorherrschenden Intelligenz entsprechend – es sich verkneifen konnten, mit einem Wortspiel die Zugehörigkeit letztlich doch offenzulegen, die doch eigentlich gerade verborgen bleiben sollte … 🙄

Wie auch immer: Wenn Du nach Dateinamen suchst, um Programmreste zu identifizieren, egal ob mit find auf Unix-Ebene oder mit Find Any File oder was auch immer, wirst Du diese Datei niemals finden.
„🦖The dinosaurs invented Jesus to test our confidence in science“
+1
rxw
rxw21.02.2117:26
Weia
Wie auch immer: Wenn Du nach Dateinamen suchst, um Programmreste zu identifizieren, egal ob mit find auf Unix-Ebene oder mit Find Any File oder was auch immer, wirst Du diese Datei niemals finden.

Danke für den Hinweis. Böse Apps findet man nicht, es geht nur ums putzen der Platte. Mit "Handarbeit", mit Find Any File statt find ist es für mich einfacher Veränderungen am System zu finden, etwa Datum, Inhalte oder aus dem Kontext.

Optimal wäre ein "Change logging" wie bei Sicherheitssysteme. Früher über USB-Stick gestartet, MD5 über alles der HD und dann den Test einer APP. Anschliessend mit USB-Stick und DIFF mit MD5 Vergleich, was hat sich geändert/neu. Heute mir zu aufwendig und unter M1 naja.

Was mich mehr ärgert, ist das "nach Hause telefonieren" der Apps. Da ich macOS liebe und Linux nicht mag, halt ein Kompromiss.
+1
didimac21.02.2118:34
Moka´s Onkel
DTP
Ich kann eigentlich nur empfehlen, den Beitrag von Marcel nochmal zu lesen.
Das versteht sich von selbst. Seine Autorität zweifelt hier kaum jemand an.

Aus diesem Grund benutze ich für diese Aufgabe schon seit vielen Jahren TinkerTool System und bin damit sehr zufrieden.
0
Weia
Weia21.02.2118:47
rxw
Optimal wäre ein "Change logging" wie bei Sicherheitssysteme. Früher über USB-Stick gestartet, MD5 über alles der HD und dann den Test einer APP. Anschliessend mit USB-Stick und DIFF mit MD5 Vergleich, was hat sich geändert/neu. Heute mir zu aufwendig und unter M1 naja.
findchanges ist ja aber nun genau eine etwas weniger aufwändige Annäherung an dieses Optimum.
„🦖The dinosaurs invented Jesus to test our confidence in science“
+1
rxw
rxw21.02.2121:05
Weia
findchanges ist ja aber nun genau eine etwas weniger aufwändige Annäherung an dieses Optimum.

... ich muss mir findchanges in einer ruhigen Stunde genau ansehen, damit ich es verstehe...
0
Thyl21.02.2121:56
wenn ich bedenke, dass es unter Nextstep einen funktionierenden Installer/Desinstaller gab. Meine Fresse.
0
oxid
oxid21.02.2122:02
es gibt / gab da noch app trap welche nicht weiterentwickelt wurde aber einfach genau das tut was du willst.
es funktioniert unter Catalina immer noch.
http://onnati.net/apptrap/
0
Weia
Weia21.02.2122:21
Thyl
wenn ich bedenke, dass es unter Nextstep einen funktionierenden Installer/Desinstaller gab.
Stimmt, aber gegen böswillig versteckt installierte Dateien hätte der auch nicht geholfen.
„🦖The dinosaurs invented Jesus to test our confidence in science“
0
milk
milk22.02.2115:59
rxw
Optimal wäre ein "Change logging" wie bei Sicherheitssysteme.
Niemand hindert dich daran, tripwire auf deinem System zu installieren.
0
Moka´s Onkel
Moka´s Onkel22.02.2119:24
Weia
Moka´s Onkel
Weia
Ich verstehe zwar nicht, wie man zu dieser Befürchtung kommen kann,
Zu dieser Befürchtung kann man kommen, wenn man - wie ich - keine Ahnung von den Feinheiten des Betriebssystems hat. Und den Chinesen traue ich alles zu.
Satz 1 kann ich vollkommen verstehen und nachvollziehen. Die Komplexität moderner Computer ist im Wortsinne überwältigend. Mein Unverständnis bezieht sich ausschließlich auf Satz 2: Ich kann nicht nachvollziehen, wieso man chinesischen Unternehmen mehr Misstrauen entgegenbringt als US-amerikanischen. Aber wie gesagt: egal, das ist ein anderes Thema.
Ich finde, dass es schon noch einen deutlichen Unterschied in der Überwachung- und Kontrollwut zwischen China, Russland und den USA gibt. Ich bin weit davon entfernt, die USA zu verherrlichen, doch ist das m.E. immer noch ein relativ freies Land, in dem die Bürger so ziemlich (aber wahrscheinlich viel zu viel) tun und lassen können, was sie wollen - was ich von China und Russland nicht so sagen kann. Auch wenn sich die USA unter ihrem letzten Präsidentenkasper von der Demokratie entfernt haben, hat sie letztlich doch (zumindest vorerst) Bestand. Und Russland sowie China sind m.E. einfach nur autoritäre Staaten, die im Wesentlichen Angst vor anderen Meinungen haben und deswegen jeden, der nicht auf Parteilinie ist unterdrücken oder wegsperren. Aber wie gesagt: das ist ein anderes Thema.
Weia
Ich habe mir daher gleich zu Beginn von macOS (Mac OS X) vor 20 Jahren ein kleines Unix-Progrämmchen geschrieben, das dieses Problem für alle diese Fälle löst. Das Progrämmchen ist auch für Terminal-Laien leicht zu bedienen und hat sich jetzt seit 20 Jahren im regelmäßigen Einsatz bewährt und ich könnte mir macOS-Systemadministration ohne es gar nicht vorstellen.

Das Programm durchsucht einfach (mit einigen wenigen spezifischen Ausnahmen) die gesamte Festplatte nach Dateien, die sich in den letzten Minuten (wie viele genau, kann man angeben) geändert haben oder hinzugefügt wurden. Die Pointe dabei ist, dass diese Suche nicht raffinierte Dinge wie Spotlight oder Echtzeit-Änderungsmeldungen des Dateisystems nutzt, sondern eine tumbe Brute-Force-Suche durchführt. Dadurch ist die Suche zwar langsam (kann je nach Festplattengröße und Geschwindigkeit einen guten Teil einer Stunde dauern), aber sie lässt sich nicht austricksen (naja, fast nicht, ist mir in den 20 Jahren aber noch nie untergekommen) und findet alles.

Das Progrämmchen heißt findchanges und ist nichts weiter als ein Shellskript, das den „eigentlichen“ Unix-Befehl zum Suchen, find, mit den entsprechenden Parametern startet.

Da es nur ein Shellskript ist, könnt Ihr es ganz leicht selbst installieren, indem Ihr den folgenden Code........

.......In den 20 Jahren hat es bei mir jedenfalls noch kein Programm geschafft, irgendeine Datei vor mir zu verbergen, die dann Unheil anrichtete.

Vielleicht nützt das ja dem einen oder anderen von Euch.

Danke! Das ist natürlich ziemlich cool ! Und gerade noch so das level, was ich mir im Terminal zutraue bzw. mit ein bisschen Recherche auch verstehe bzw. nachvollziehen kann.
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.