"distnoted" Prozess - Freezes/Crashes in El Capitan

iPhill

iPhill

Aktives Mitglied
Thread Starter
Dabei seit
26.02.2011
Beiträge
9.954
Reaktionspunkte
4.001
Hallo beisammen,

einer meiner iMacs macht seit dem Upgrade von 10.9.5 auf 10.11.6 fast täglich Probleme. Und zwar hängt er sich von Zeit zu Zeit auf und nichts geht mehr. Zwar keine Kernel-Panic, aber es lässt sich nichts mehr anklicken und/oder steuern und es erfolgt keinerlei Reaktion mehr auf einen Input über Maus oder Tastatur.
Zwar tritt das Problem bei mir nur auf einem Gerät auf, aber ich habe in den vergangenen Monaten öfters von "Freezes" auf MacBooks, im Zusammenhang mit El Capitan gelesen. - Ist dabei bekannt, wodurch diese Freezes ausgelöst werden?
Ich habe nämlich jetzt mal beim betroffenen iMac fortwährend die Aktivitätsanzeige offen gelassen und mir ist dabei aufgefallen - bevor sich auch die jeweils aufgehängt hat - dass der Prozess "distnoted" die komplette CPU mit ≈ 398% auslastest und vermutlich so das System zum Erliegen bringt. Warum das passiert, das ist mir rätselhaft. Dummerweise spuckt auch die Konsole keine entsprechenden Logs aus, da sich das Logging (anscheinend) aufhängt, bevor es was zu loggen gäbe.

Hat jemand auch schon die Erfahrung mit "distnoted" gemacht oder steh' ich damit alleine da?

Liebe Grüsse,
iPhill
 
Hallo iPhill,

seit heute habe ich das gleiche Problem mit meinem MacBook unter 10.11.6.

Bist Du schon weiter gekommen?

Liebe Grüße

Kiba
 
Hi, das muss irgendwas mit USB und/oder WD-Festplatten zu tun haben. Denn wenn solche Geräte angeschlossen sind, dann tritt das Problem teilweise auf, werden die Geräte brutal (ohne "Auswerfen") abgezogen, pendelt sich der Prozess nach wenigen Sekunden bis Minuten wieder ein. - Eine langzeitliche Lösung konnt' ich bisher nicht ausmachen.
 
Der Prozess ist Systeminterner benachrichtigungsseevice und wird tätig, wenn etwas schiefläuft, bei einem Bekannten war Skype verantwortlich, im Netz wurde damals als dass Problem auftrat auch gnu emacs als Verursacher genannt und eine Software für ein Headset.
Wenn der Prozess Amok läuft würde ich versuchen erst einmal mittels Trail & error prigramme zu schließen um den Verursacher zu finden. Und die Konsole solltest du auch überprüfen, warum die keinen Text ausgibt.
 
Kann es sein, dass zu dem Zeitpunkt gerade ein Time Machine Backup starten sollte? Das distnoted Problem habe ich auch schon länger. Es hilft bei mir nur, im Terminal "killall -9 distnoted" einzugeben. Leider komme ich oft nicht ins Terminal.
 
  • Gefällt mir
Reaktionen: Kibabalu und iPhill
Ich habe das genau exakt bis ins Detail genau gleiche wie von iphil beschriebene Problem auf meinem MacBook Pro seit dem update auf Mac OSX 10.11.6. Tatsächlich tritt es nicht auf, oder weniger, wenn keine Festplatten und keine Timemachine angehängt sind. Das Problem scheint mir gemäss dieses Threads klar im Zusammenhang mit dem update Mac OS X 10.11.6 zu sein. Da müsste doch langsam etwas von Apple kommen wenn mehrere User dieses Problem haben. Weiss jemand mehr?
Gruss
ust
 
Ich habe da schon einiges als Bugreport geschickt. Es ist in Arbeit heisst es.
 
Hab ich auch gemacht, schon von 2 verschiedenen System aus, bei denen das Problem auftritt. Ein Fall wurde geschlossen, da das Problem nicht identifiziert werden konnte (es folgte eine ausführliche Erklärung der (misslungenen) Analysen).
Der andere Fall ist momentan noch offen.
 
Hallo zusammen
Ich habe das Problem gelöst! Apple kennt das Problem ist aber zu faul es zu beheben. Angeblich soll es in Sierra gelöst sein. Zur Überbrückung bis zum Fix des Bug durch Apple gibt es ein Script, das Script scannt alle 60 Sekunden das System und sobald distnoted über 100% CPU beansprucht, wird der Prozess gekillt. Funzt bei mir perfekt.
Hier kommt die Erklärung und Gebrauchsanweisung:
Bei distnoted handelt es sich um den sogenannten "distributiv notification Service". Dieser sorgt in div. OSX-Versionen für Bauchschmerzen mit der CPU und in Folge auch mit dem Kühlsystem von MacBooks und MacBooks Pro.

Grundsätzlich ist es auch ein Service der nicht zwingend immer benötigt wird, gewisse Applikationen greifen aber darauf zu und starten diesen. Unter gewissen Situationen/Konstellationen kommt es dann zur erwähnten Problematik. Apple ist sich dieser Thematik bereits bewusst und hat "Linderung" versprochen..... Leider scheint die Thematik doch nicht so einfach zu sein.

Der momentan pragmatische Ansatz ist, den Prozess "distnoted" jeweils zu beenden bevor dieser Probleme machen kann.
Es gibt schon seit einiger Zeit ein Skript, welches nach dem Prozess sucht und diesen automatisch beendet falls dieser gestartet ist.

Findige User haben darauf einen Cron-Job erstellt, der dieses Script sporadisch startet. Bei gewissen hat es bei 1-2 x pro Tag gereicht, bei anderen war eine minütliche Auslösung notwendig um das Problem in den Griff zu kriegen. Dies hängt von den Applikationen ab die täglich verwendet werden, da div. davon den Service benötigen (als Bsp: Skype, iTunes usw.).
Dieser Script führt nicht nur den Kill-Befehl für distnoted aus sondern installiert auch gleich den CRON-Job:

#
# MWR Apr 2016
#

INSTALLCMD=bin/checkdistnoted
cd "$HOME"
[ ! -d bin ] && mkdir bin
[ -f $INSTALLCMD ] || {
cat > $INSTALLCMD <<-"!!"
#!/bin/sh
#
# check for runaway distnoted, kill if necessary
#
ps -reo '%cpu,uid,pid,command' |
awk -v UID=$UID '
/distnoted agent$/ && $1 >= 100.0 && $2 == UID {
# kill distnoted agent with >= 100% CPU and owned by me
system("kill -9 " $3)
}
'
!!
chmod +x $INSTALLCMD
echo installed $INSTALLCMD
}

INSTALLCRON="# check for runaway distnoted every minute:
* * * * * sh \"\$HOME/$INSTALLCMD\""
crontab -l | grep -q '$HOME'/$INSTALLCMD || {
crontab -l > mycron
echo "$INSTALLCRON" >> mycron
crontab mycron
rm mycron
echo updated crontab
}

Man muss dieses Script in einer Textdatei kopieren und dann als install_checkdistnoted.sh zum Beispiel auf dem Desktop (Schreibtisch) speichern. Um diesen dann zu aktivieren gibt man folgenden Befehl im Terminal ein:

cd Desktop
sh install_checkdistnoted.sh

Wenn man sich das Script etwas genauer anschaut dann prüft das Script zuerst wie hoch die Prozessorlast des distnoted-Services ist:

/distnoted agent$/ && $1 >= 100.0 && $2 == UID {
# kill distnoted agent with >= 100% CPU and owned by me
system("kill -9 " $3)
Solange sich dieser zwischen 1 und >= 100% bewegt passiert gar nichts, der Service läuft weiter (was ja nicht schlecht ist).
Sollte der Service grösser als 100% CPU Last benötigen wird er durch den kill -9 gelöscht.

Diese Prüfung erfolgt alle 60 Sekunden.
Zur Überprüfung ob der CronJob ausgeführt wird folgenden Befehl im Terminal eingeben:

crontab -l

Achtung ! Die Eingabe des Befehls ist crontab -l und nicht -1. Wenn Du folgendes Resultat erhältst dürfte das Problem mit dem "distnoted" Service vorläufig behoben sein:

# check for runaway distnoted every minute:
* * * * * sh "$HOME/bin/checkdistnoted"
Ich hoffe es funzt auch bei Euch. Folgt einfach der Gebrauchsanweisung
Wünsche gutes gelingen
ust
 

Anhänge

  • Script_distnoted.jpg
    Script_distnoted.jpg
    78 KB · Aufrufe: 216
  • Gefällt mir
Reaktionen: Gwadro
Ich habe vor 1 Monat ein Clean-Install gemacht und danach mit dem Migrationsassistenten die Daten rübergezogen. Seitdem habe ich das Problem nicht mehr gehabt. Vorher war es auch bei der jeweilen Sierra-Publicbeta vorhanden und trat ca. 1-2 mal am Tag auf, meistens im Zusammenhang mit einem starten wollenden Backup.
 
Zurück
Oben Unten