Gibt es eine Möglichkeit, den Grund zu verfolgen, warum der Prozess "fseventsd" die CPU belastet?

10

Ich habe Mac OSX 10.6 ausgeführt und festgestellt, dass ein Prozess 'fseventsd' 100% CPU und 1,5 G RAM benötigt. Bei einer Google-Suche stellte ich fest, dass dies mit Time Machine verbunden sein könnte. Ich führe Time Machine jedoch nicht auf diesem Computer aus.

Gibt es eine Möglichkeit, die Quelle des Ressourcenfressens zu verfolgen? Wird es irgendwo angemeldet? Ein Neustart hat das Problem behoben, aber ich bin sicher, dass es wieder auftreten wird, wenn ich nicht herausfinden kann, warum es überhaupt begonnen hat.

Danke im Voraus.

DTest
quelle
Hast du jemals die Quelle gefunden? Wir haben das gleiche Problem auf unserem Schneeleopardenserver. Ich kann einen Neustart versuchen, aber das kann ich erst später heute Abend tun.
Greg W
Ich habe es seit meinem Neustart (un) zum Glück nicht mehr
auftauchen
Ich habe das gleiche Problem. Ein Neustart hilft nicht. Nach 20 bis 30 Minuten startet fseventsd erneut und benötigt 99% CPU. Das Macbook ist nicht mehr still ...
Laurent K

Antworten:

7

fseventd ist der Dateisystem-Ereignisprotokollierungsprozess. Sie können viel darüber im ars technica-Test von Mac OS X Leopard lesen. Sie können Programme wie fseventer verwenden , um die gleiche Art von Ausgabe zu sehen, die es sieht.

Aus dem Artikel:

Das FSEvents-Framework basiert auf einem einzelnen, ständig laufenden Daemon-Prozess namens fseventsd, der aus / dev / fsevents liest und die Ereignisse in Protokolldateien auf der Festplatte schreibt (gespeichert in einem .fseventsd-Verzeichnis im Stammverzeichnis des Volumes, für das die Ereignisse bestimmt sind). Das ist es. Das ist die Super-High-Tech-Lösung: Schreiben Sie die Ereignisse einfach in eine Protokolldatei. Langweilig, pragmatisch, aber sehr effektiv.

Sie können dieses Protokoll überprüfen, obwohl ich nicht weiß, wie nützlich es für Sie sein wird. Es würde mich nicht überraschen, wenn Time Machine, das sich mit vielen Dateien und manchmal mit vielen, vielen winzigen Dateien befasst, möglicherweise Probleme mit fsevents verursacht.

ConstantineK
quelle
Hoffentlich ist es nicht Time Machine, da dies deaktiviert ist! Wie auch immer, ich lese gerade über fseventer, also danke für den Vorschlag.
DTest
3

Entweder steckte ein Programm in einer sehr effizienten Schleife, die Änderungen verursachte fseventsd, die viel Arbeit verursachten, oder es ist eine Endlosschleife selbst, die eine unlösbare Datenstruktur auf einem der gemounteten Volumes verarbeitet.

Im vorherigen Fall - Programme wie fseventer, die denselben Datenstrom lesen, hängen wahrscheinlich auch - haben Sie jetzt zwei Prozesse mit einer Auslastung von 50%, die versuchen, eine unendliche Datenmenge zu verarbeiten. (Dies ist ein großartiger Datenpunkt, wenn Sie stöbern, um zu sehen, was nicht stimmt.) Es ist analog zu Fragen, warum syslogddie gesamte CPU beansprucht wird - normalerweise ist es ein anderes Programm, das verrückt geworden ist und viel Arbeit verursacht.

Wann / wenn es wieder passiert - starten Sie das Beenden von Programmen und ziehen Sie das Abmelden in Betracht. Sie wissen, ob es sich bei dem fehlerhaften Element um einen Prozess auf Systemebene oder einen Prozess auf Benutzerebene handelt. fs_usageDies kann hilfreich sein, um festzustellen, welche spezifischen Programme E / A-lastig sind.

fsck Ein Start in den Einzelbenutzermodus ist normalerweise erforderlich, wenn Sie über zirkuläre Hardlinks oder andere entartete Dateisystem-Spielereien verfügen, die diese Art von Aktivitätsspitzen verursachen können.

bmike
quelle
Ja, tut mir leid, wenn ich unklar war, konnte man fseventer definitiv nicht öffnen, während der Poop sprichwörtlich den Fan traf. Ich wollte nur mehr, um Ihnen einen Eindruck davon zu geben, welche Art von Daten protokolliert und sichtbar waren, wie es fs_usage tun würde.
ConstantineK
Ich habe es geliebt, etwas über fseventer zu lernen - sieh sehr gut aus. Es gibt keinen Fehler - nur Daten.
bmike
Wow, danke für den Tipp zu 'fs_usage'. Und ja, ich dachte, es ist nicht fseventsd, das die Last verursacht, sondern ein anderes Programm. Ich erwarte irgendwo eine Schleife. Abgesehen davon läuft die Maschine seit ungefähr 24 Stunden normal und es ist nicht wieder passiert.
DTest