{"code":"var Component=(()=>{var u=Object.create;var d=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var p=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var f=(i,n)=>()=>(n||i((n={exports:{}}).exports,n),n.exports),k=(i,n)=>{for(var t in n)d(i,t,{get:n[t],enumerable:!0})},a=(i,n,t,s)=>{if(n&&typeof n==\"object\"||typeof n==\"function\")for(let r of m(n))!b.call(i,r)&&r!==t&&d(i,r,{get:()=>n[r],enumerable:!(s=g(n,r))||s.enumerable});return i};var w=(i,n,t)=>(t=i!=null?u(p(i)):{},a(n||!i||!i.__esModule?d(t,\"default\",{value:i,enumerable:!0}):t,i)),S=i=>a(d({},\"__esModule\",{value:!0}),i);var l=f((C,h)=>{h.exports=_jsx_runtime});var z={};k(z,{default:()=>o});var e=w(l());function c(i){let n={a:\"a\",blockquote:\"blockquote\",code:\"code\",em:\"em\",h2:\"h2\",h3:\"h3\",img:\"img\",li:\"li\",p:\"p\",pre:\"pre\",span:\"span\",strong:\"strong\",table:\"table\",tbody:\"tbody\",td:\"td\",th:\"th\",thead:\"thead\",tr:\"tr\",ul:\"ul\",...i.components};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)(n.p,{children:[\"Ihr Mac wird warm, obwohl er nichts tut. Die Akkusch\\xE4tzung hat sich halbiert. Sie \\xF6ffnen die Aktivit\\xE4tsanzeige, sortieren nach CPU, und ganz oben steht ein Prozess, von dem Sie noch nie geh\\xF6rt haben \\u2014 \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" \\u2014 der bei 70 oder 80 Prozent verharrt. Oder es ist \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\". Oder, bei den am schlimmsten betroffenen Ger\\xE4ten, \",(0,e.jsx)(n.code,{children:\"accountsd\"}),\" bei 180 % mit \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" und \",(0,e.jsx)(n.code,{children:\"itunescloudd\"}),\" dahinter. Beenden bringt nichts, weil Sie die Prozesse gar nicht beenden k\\xF6nnen. Ein Neustart hilft f\\xFCr eine Stunde.\"]}),`\n`,(0,e.jsx)(n.p,{children:'Das passiert Mac-Nutzern seit macOS Tahoe 26.4 im M\\xE4rz, es passiert weiterhin unter 26.5 und 26.6, Apple hat es nicht best\\xE4tigt, und die zuverl\\xE4ssigste L\\xF6sung steht in keinem der \\u201EStarten Sie Ihren Mac neu / Setzen Sie den NVRAM zur\\xFCck\"-Artikel, die f\\xFCr die Suche ranken. Sie besteht darin, ein Widget zu entfernen.'}),`\n`,(0,e.jsxs)(n.p,{children:[\"Dieser Leitfaden erkl\\xE4rt, was \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" ist (wir haben hineingeschaut), warum ein Widget den Prozess in eine Schleife treibt, warum ein Quarant\\xE4ne-Flag auf einem Ordner, von dessen Existenz Sie nichts wussten, der andere Ausl\\xF6ser ist, und in welcher genauen Reihenfolge Sie die L\\xF6sungen ausprobieren sollten.\"]}),`\n`,(0,e.jsx)(n.p,{children:(0,e.jsx)(n.img,{alt:\"peopled verbraucht CPU unter macOS Tahoe in der Aktivit\\xE4tsanzeige\",src:\"/images/blog/peopled-contactsd-high-cpu-macos-tahoe-contacts-widget-callhistorydb-fix-2026/hero.webp\",width:\"1024\",height:\"541\"})}),`\n`,(0,e.jsx)(n.h2,{id:\"wichtigste-erkenntnisse\",children:\"Wichtigste Erkenntnisse\"}),`\n`,(0,e.jsxs)(n.ul,{children:[`\n`,(0,e.jsxs)(n.li,{children:[(0,e.jsxs)(n.strong,{children:[(0,e.jsx)(n.code,{children:\"peopled\"}),\" ist der Daemon hinter dem Kontakte-Widget.\"]}),\" Seine eigene Bin\\xE4rdatei enth\\xE4lt Klassen namens \",(0,e.jsx)(n.code,{children:\"WidgetSuggester\"}),\", \",(0,e.jsx)(n.code,{children:\"WidgetConfigurationReader\"}),\" und \",(0,e.jsx)(n.code,{children:\"CallHistoryFetcher\"}),\", und sein Sandbox-Profil gew\\xE4hrt ihm Zugriff auf Ihre Anrufverlaufsdatenbank. Diese Kombination ist die Schleife.\"]}),`\n`,(0,e.jsxs)(n.li,{children:[(0,e.jsx)(n.strong,{children:\"L\\xF6sung 1: Entfernen Sie jedes Kontakte-Widget\"}),\" \\u2014 vom Schreibtisch, aus der Mitteilungszentrale und aus dem Kontrollzentrum \\u2014 und starten Sie dann neu. Das hat die Mehrheit der \\xFCber 54 best\\xE4tigten Meldungen in Apples Community-Forum gel\\xF6st.\"]}),`\n`,(0,e.jsxs)(n.li,{children:[(0,e.jsxs)(n.strong,{children:[\"L\\xF6sung 2: Entfernen Sie das Quarant\\xE4ne-Flag auf \",(0,e.jsx)(n.code,{children:\"~/Library/Application Support/CallHistoryDB\"})]}),\" und beenden Sie \",(0,e.jsx)(n.code,{children:\"peopled\"}),\". Das ist die L\\xF6sung, wenn es kein Widget zu entfernen gibt; sie erfordert Festplattenvollzugriff f\\xFCr Terminal.\"]}),`\n`,(0,e.jsxs)(n.li,{children:[(0,e.jsx)(n.strong,{children:\"L\\xF6sung 3: Deaktivieren Sie iCloud-Kontakte und aktivieren Sie sie danach wieder.\"}),\" Funktioniert bei manchen, nicht bei allen, und kostet Sie die Synchronisierung, solange sie deaktiviert ist.\"]}),`\n`,(0,e.jsxs)(n.li,{children:[(0,e.jsxs)(n.strong,{children:[\"CPU-Spitzen von \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" bei einem Exchange- oder Google-Konto sind ein anderer, \\xE4lterer Fehler\"]}),\" mit demselben Symptom, aber einer anderen L\\xF6sung \\u2014 das Konto entfernen oder einen Client eines Drittanbieters verwenden.\"]}),`\n`,(0,e.jsxs)(n.li,{children:[(0,e.jsx)(n.strong,{children:\"Apple hat keine L\\xF6sung dokumentiert.\"}),\" In den Versionshinweisen zu 26.4.1, 26.5, 26.6 oder 26.6.x wird das Problem nirgends erw\\xE4hnt, und Meldungen zu 26.5 und sp\\xE4ter halten weiter an.\"]}),`\n`]}),`\n`,(0,e.jsx)(n.h2,{id:\"welcher-prozess-genau\",children:\"Welcher Prozess genau\"}),`\n`,(0,e.jsx)(n.p,{children:\"In diesen Meldungen tauchen drei Daemons auf, und sie sind nicht austauschbar. Sortieren Sie die Aktivit\\xE4tsanzeige nach % CPU und notieren Sie, welchen Sie vor sich haben.\"}),`\n`,(0,e.jsxs)(n.table,{children:[(0,e.jsx)(n.thead,{children:(0,e.jsxs)(n.tr,{children:[(0,e.jsx)(n.th,{children:\"Prozess\"}),(0,e.jsx)(n.th,{children:\"Wozu er geh\\xF6rt\"}),(0,e.jsx)(n.th,{children:\"Typische Meldung\"}),(0,e.jsx)(n.th,{children:\"Wahrscheinlichste Ursache\"})]})}),(0,e.jsxs)(n.tbody,{children:[(0,e.jsxs)(n.tr,{children:[(0,e.jsx)(n.td,{children:(0,e.jsx)(n.code,{children:\"peopled\"})}),(0,e.jsx)(n.td,{children:\"People-Framework \\u2014 Widget-Vorschl\\xE4ge, Familienfreigabe, Bildschirmzeit, Status\"}),(0,e.jsx)(n.td,{children:\"Anhaltend 70\\u201380 % seit 26.4\"}),(0,e.jsx)(n.td,{children:\"Kontakte-Widget + nicht lesbare CallHistoryDB\"})]}),(0,e.jsxs)(n.tr,{children:[(0,e.jsx)(n.td,{children:(0,e.jsx)(n.code,{children:\"contactsd\"})}),(0,e.jsx)(n.td,{children:\"Contacts-Framework \\u2014 die Adressbuchdatenbank und Synchronisierung\"}),(0,e.jsx)(n.td,{children:\"Spitzen bis 80 % alle 60\\u201390 s, oder anhaltend\"}),(0,e.jsx)(n.td,{children:\"Synchronisierungsschleife bei iCloud/Exchange/Google-Kontakten\"})]}),(0,e.jsxs)(n.tr,{children:[(0,e.jsx)(n.td,{children:(0,e.jsx)(n.code,{children:\"accountsd\"})}),(0,e.jsx)(n.td,{children:\"Accounts-Framework \\u2014 jedes angemeldete Konto\"}),(0,e.jsxs)(n.td,{children:[\"180 % zusammen mit \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" und \",(0,e.jsx)(n.code,{children:\"itunescloudd\"})]}),(0,e.jsx)(n.td,{children:\"Authentifizierungsschleife des Kontos; Abmelden hilft oft nicht\"})]})]})]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Wenn es \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" ist, beginnen Sie mit dem Abschnitt zum Widget. Wenn es allein \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" ist, springen Sie zum Abschnitt \\xFCber die Synchronisierungskonten. Wenn es alle drei sind, mit \",(0,e.jsx)(n.code,{children:\"accountsd\"}),\" obenauf, befinden Sie sich in der am wenigsten verstandenen Variante, und der entsprechende Abschnitt ist ehrlich dar\\xFCber, wie wenig bekannt ist.\"]}),`\n`,(0,e.jsxs)(n.h2,{id:\"was-peopled-tats\\xE4chlich-tut\",children:[\"Was \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" tats\\xE4chlich tut\"]}),`\n`,(0,e.jsx)(n.p,{children:'Der Name legt Kontakte nahe, und die Anleitungen, die ihn \\xFCberhaupt erw\\xE4hnen, beschreiben ihn als \\u201Everwaltet Kontaktdaten\". Das ist ungef\\xE4hr richtig und im Detail falsch, und dieser Unterschied ist der Grund, warum die L\\xF6sung ein Widget betrifft und keine Reparatur des Adressbuchs.'}),`\n`,(0,e.jsxs)(n.p,{children:[\"Wir haben den Daemon auf einem Mac unter 26.5.2 untersucht. Er befindet sich unter \",(0,e.jsx)(n.code,{children:\"/System/Library/PrivateFrameworks/People.framework/peopled\"}),\", und sein launchd-Job (\",(0,e.jsx)(n.code,{children:\"/System/Library/LaunchAgents/com.apple.peopled.plist\"}),\") verr\\xE4t, was ihn weckt. Er wird nicht beim Anmelden geladen \\u2014 \",(0,e.jsx)(n.code,{children:\"RunAtLoad\"}),\" ist auf false gesetzt. Er wird durch Ereignisse gestartet:\"]}),`\n`,(0,e.jsxs)(n.ul,{children:[`\n`,(0,e.jsxs)(n.li,{children:[\"Biome-Streams f\\xFCr \",(0,e.jsx)(n.code,{children:\"missedCall\"}),\", \",(0,e.jsx)(n.code,{children:\"unreadMessage\"}),\", \",(0,e.jsx)(n.code,{children:\"readMessage\"}),\", \",(0,e.jsx)(n.code,{children:\"location\"}),\", \",(0,e.jsx)(n.code,{children:\"dndAvailability\"}),\", \",(0,e.jsx)(n.code,{children:\"screenTimeRequest\"}),\", \",(0,e.jsx)(n.code,{children:\"askToBuyRequest\"}),\" und \",(0,e.jsx)(n.code,{children:\"childState\"})]}),`\n`,(0,e.jsxs)(n.li,{children:[\"Zwei Systembenachrichtigungen: \",(0,e.jsx)(n.code,{children:\"__ABDataBaseChangedByOtherProcessNotification\"}),\" (das Adressbuch hat sich ge\\xE4ndert) und \",(0,e.jsx)(n.code,{children:\"_CalDatabaseChangedNotification\"}),\" (der Kalender hat sich ge\\xE4ndert)\"]}),`\n`]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Jeder verpasste Anruf, jede Nachricht, jede Kontakt\\xE4nderung und jede Kalender\\xE4nderung weckt also \",(0,e.jsx)(n.code,{children:\"peopled\"}),\". Und was tut er, wenn er geweckt wird? Die Strings in seiner Bin\\xE4rdatei beantworten das unmittelbar. Unter den Swift-Klassennamen:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(n.code,{children:[(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"_TtC7peopled15WidgetSuggester\"})}),`\n`,(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"_TtC7peopled18CallHistoryFetcher\"})}),`\n`,(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"_TtC7peopled25WidgetConfigurationReader\"})})]})})}),`\n`,(0,e.jsx)(n.p,{children:\"und unter seinen Log-Nachrichtenvorlagen:\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(n.code,{children:[(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"Event triggered widget refresh: %{private}s, %s\"})}),`\n`,(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"Last widget suggestion date is older 24 hours, suggest widgets\"})}),`\n`,(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"Last widget suggestion date is within 24 hours, do not suggest widgets\"})}),`\n`,(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"error reading widgets configurations: %s\"})}),`\n`,(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"Failed to suggest widgets with error: %s\"})})]})})}),`\n`,(0,e.jsx)(n.p,{children:\"Er bindet das Contacts-Framework, das CallHistory-Framework und zwei Biome-Frameworks ein. Sein Zweck, soweit ihn der eigene Code beschreibt, besteht darin, zu entscheiden, welche Personen im Kontakte-Widget und in personenbezogenen Vorschl\\xE4gen angezeigt werden, wobei Ihre letzten Anrufe und Nachrichten als Signal dienen.\"}),`\n`,(0,e.jsx)(n.p,{children:\"Das erkl\\xE4rt, warum dieses Fehlerbild Sinn ergibt: ein Daemon, der durch jeden Anruf und jede Nachricht geweckt wird, dessen Aufgabe es ist, ein Widget zu aktualisieren, und der daf\\xFCr den Anrufverlauf lesen muss.\"}),`\n`,(0,e.jsx)(n.p,{children:(0,e.jsx)(n.img,{alt:\"Ein Blick in den peopled-Daemon unter macOS Tahoe\",src:\"/images/blog/peopled-contactsd-high-cpu-macos-tahoe-contacts-widget-callhistorydb-fix-2026/content-1.webp\",width:\"1024\",height:\"572\"})}),`\n`,(0,e.jsx)(n.h2,{id:\"warum-er-in-der-schleife-h\\xE4ngt\",children:\"Warum er in der Schleife h\\xE4ngt\"}),`\n`,(0,e.jsx)(n.p,{children:\"Legen Sie die Fragmente aus dem Community-Thread neben das, was die Bin\\xE4rdatei aussagt.\"}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.code,{children:\"peopled\"}),\" l\\xE4uft innerhalb einer Sandbox. Sein Profil unter \",(0,e.jsx)(n.code,{children:\"/System/Library/Sandbox/Profiles/com.apple.peopled.sb\"}),\" beginnt mit \",(0,e.jsx)(n.code,{children:\"(deny default)\"}),\" und \\xF6ffnet dann gezielt einzelne T\\xFCren. Zwei davon:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(n.code,{children:[(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:'(home-subpath \"/Library/CallHistoryDB/\")'})}),`\n`,(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:'(home-subpath \"/Library/Logs/CallHistory\")'})})]})})}),`\n`,(0,e.jsxs)(n.p,{children:[\"Er darf also \",(0,e.jsx)(n.code,{children:\"~/Library/Application Support/CallHistoryDB/\"}),\" lesen, wo macOS die Datenbank der \\xFCber Ihr iPhone via Continuity gef\\xFChrten und empfangenen Anrufe speichert. Dieser Ordner ist au\\xDFerdem durch TCC gesch\\xFCtzt \\u2014 auf unserem Mac liefert \",(0,e.jsx)(n.code,{children:\"ls\"}),\" darauf aus Terminal \",(0,e.jsx)(n.code,{children:\"Operation not permitted\"}),\", solange Terminal keinen Festplattenvollzugriff hat \\u2014, weshalb die unten genannten L\\xF6sungen diese Berechtigung ben\\xF6tigen.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Nun zu den Meldungen. Am 21. April zitierte ein Nutzer in \",(0,e.jsx)(n.a,{href:\"https://discussions.apple.com/thread/256271160\",children:\"Apples Community-Thread\"}),\" die Kernel-Meldung, die er in der Konsole fand, w\\xE4hrend \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" sich drehte:\"]}),`\n`,(0,e.jsxs)(n.blockquote,{children:[`\n`,(0,e.jsx)(n.p,{children:\"Sandbox: peopled \\u2026 deny(1) file-read-data ~/Library/Application Support/CallHistoryDB\"}),`\n`]}),`\n`,(0,e.jsx)(n.p,{children:\"Und am 20. Mai zitierte ein anderer:\"}),`\n`,(0,e.jsxs)(n.blockquote,{children:[`\n`,(0,e.jsx)(n.p,{children:\"failed to open /Users/[user]/Library/Application Support/CallHistoryDB: 1 (Operation not permitted)\"}),`\n`]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Die Deutung, die zu all dem passt: Ein Kontakte-Widget ist installiert, also wird \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" aufgefordert, es zu aktualisieren; die Aktualisierung bedeutet, den Anrufverlauf abzurufen; der Abruf wird verweigert \\u2014 weil der Ordner ein \",(0,e.jsx)(n.code,{children:\"com.apple.quarantine\"}),\"-Attribut erhalten hat, oder aus einem anderen Berechtigungsgrund, den die Meldungen nicht eingegrenzt haben \\u2014, die Aktualisierung schl\\xE4gt fehl, und das n\\xE4chste Ereignis (oder der erneute Versuch) l\\xF6st sie wieder aus. Ein Daemon, der nach einem verpassten Anruf eigentlich nur Millisekunden laufen sollte, l\\xE4uft stattdessen ununterbrochen.\"]}),`\n`,(0,e.jsx)(n.p,{children:'Wir m\\xF6chten pr\\xE4zise sagen, was hier gesichert ist und was nicht. Die Klassennamen, die Sandbox-Regeln und die Log-Meldungen sind direkt beobachtbar; wir haben sie gelesen. Dass die Schleife \\u201EWidget-Aktualisierung, verweigerter Lesezugriff, erneuter Versuch\" lautet, ist eine Schlussfolgerung, die zu jeder uns bekannten Meldung und zu beiden funktionierenden L\\xF6sungen passt. Apple hat den Mechanismus nicht best\\xE4tigt, und es k\\xF6nnte einen zweiten Ausl\\xF6ser geben \\u2014 ein Nutzer berichtet, dass die Schleife nach dem Neuordnen des Kontrollzentrums begann, obwohl \\xFCberhaupt kein Kontakte-Widget vorhanden war.'}),`\n`,(0,e.jsx)(n.h2,{id:\"erst-best\\xE4tigen-dann-etwas-\\xE4ndern\",children:\"Erst best\\xE4tigen, dann etwas \\xE4ndern\"}),`\n`,(0,e.jsx)(n.p,{children:\"Zwei Minuten Hinsehen ersparen eine Stunde Raten, und das Muster der CPU-Nutzung verr\\xE4t Ihnen, zu welcher L\\xF6sung Sie greifen sollten.\"}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Beobachten Sie das Muster.\"}),\" W\\xE4hlen Sie den Prozess in der Aktivit\\xE4tsanzeige aus und sehen Sie sich den CPU-Verlauf in der Fu\\xDFzeile des Fensters an, oder aus Terminal:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"top -stats pid,command,cpu,time -o cpu -n 5\"})})})})}),`\n`,(0,e.jsxs)(n.p,{children:[\"Ein \",(0,e.jsx)(n.code,{children:\"peopled\"}),\", das konstant bei 70\\u201380 % verharrt, ist die Widget-Schleife. Ein \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\", das ausschl\\xE4gt, auf null f\\xE4llt und eine Minute sp\\xE4ter erneut ausschl\\xE4gt, ist die Synchronisierungsschleife. Anhaltende CPU-Last auf allen drei Daemons gleichzeitig ist die Konten-Variante.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Pr\\xFCfen Sie, wie lange der Prozess schon l\\xE4uft.\"}),\" \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" lebt normalerweise nur Sekunden. Auf unserem (gesunden) Mac ist er seit 41 Tagen bei 0,0 % CPU resident \\u2014 resident, aber unt\\xE4tig, ist in Ordnung. Wonach Sie suchen, ist resident \",(0,e.jsx)(n.em,{children:\"und\"}),\" besch\\xE4ftigt:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:'ps -axo pid,etime,pcpu,comm | grep -E \"peopled|contactsd|accountsd\"'})})})})}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Suchen Sie nach der Verweigerung.\"}),\" Das ist der entscheidende Test. \\xD6ffnen Sie ein zweites Terminal-Fenster und lassen Sie sich das Log des Daemons live anzeigen, w\\xE4hrend er sich dreht:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:`log stream --predicate 'process == \"peopled\"' --info`})})})})}),`\n`,(0,e.jsx)(n.p,{children:\"und durchsuchen Sie im ersten Fenster die letzten paar Minuten nach der Sandbox-Zeile, die die Community-Meldungen zitieren:\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:`log show --last 10m --predicate 'eventMessage CONTAINS \"Sandbox: peopled\"'`})})})})}),`\n`,(0,e.jsxs)(n.p,{children:[\"Wenn Sie \",(0,e.jsx)(n.code,{children:\"deny(1) file-read-data\"}),\" gegen \",(0,e.jsx)(n.code,{children:\"CallHistoryDB\"}),\" sehen, haben Sie die CallHistoryDB-Variante, und L\\xF6sung 2 ist die, die funktionieren wird. Wenn Sie \",(0,e.jsx)(n.code,{children:\"Event triggered widget refresh\"}),\" wiederholt ohne Verweigerung sehen, beginnen Sie mit L\\xF6sung 1. Wenn das Log ruhig ist und die CPU-Last hoch, liegt die Schleife in Code, der auf der Standardebene nicht protokolliert wird; probieren Sie die L\\xF6sungen trotzdem der Reihe nach aus.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Beobachten Sie das Dateisystem, wenn Sie Gewissheit wollen.\"}),\" \",(0,e.jsx)(n.code,{children:\"fs_usage\"}),\" zeigt jede Dateioperation, die ein Prozess versucht, einschlie\\xDFlich der fehlgeschlagenen:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"sudo fs_usage -w -f filesys peopled\"})})})})}),`\n`,(0,e.jsxs)(n.p,{children:[\"Ein Bildschirm voller Zugriffsversuche auf \",(0,e.jsx)(n.code,{children:\"CallHistoryDB\"}),\", die Fehler zur\\xFCckgeben, ist die Schleife \\u2014 live sichtbar.\"]}),`\n`,(0,e.jsx)(n.h2,{id:\"l\\xF6sung-1-das-kontakte-widget-entfernen\",children:\"L\\xF6sung 1: Das Kontakte-Widget entfernen\"}),`\n`,(0,e.jsx)(n.p,{children:\"Das ist die L\\xF6sung mit den meisten Best\\xE4tigungen, und sie sollten Sie zuerst ausprobieren, weil sie reversibel ist und kein Terminal erfordert.\"}),`\n`,(0,e.jsx)(n.p,{children:\"Der Haken ist, dass es auf einem Tahoe-Mac drei Orte gibt, an denen ein Widget existieren kann, und es muss von allen dreien verschwinden.\"}),`\n`,(0,e.jsx)(n.h3,{id:\"schreibtisch\",children:\"Schreibtisch\"}),`\n`,(0,e.jsxs)(n.p,{children:[\"Klicken Sie bei gedr\\xFCckter Ctrl-Taste auf den Schreibtischhintergrund und w\\xE4hlen Sie \",(0,e.jsx)(n.strong,{children:\"Widgets bearbeiten\"}),\". Jedes Kontakte-Widget auf dem Schreibtisch zeigt beim Bearbeiten eine Entfernen-Schaltfl\\xE4che (das Minus in der Ecke); klicken Sie darauf. Alternativ klicken Sie bei gedr\\xFCckter Ctrl-Taste auf das Widget selbst und w\\xE4hlen \",(0,e.jsx)(n.strong,{children:\"Widget entfernen\"}),\". Klicken Sie auf \",(0,e.jsx)(n.strong,{children:\"Fertig\"}),\".\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"mitteilungszentrale\",children:\"Mitteilungszentrale\"}),`\n`,(0,e.jsxs)(n.p,{children:[\"Klicken Sie in der Men\\xFCleiste auf Datum und Uhrzeit, um die Mitteilungszentrale zu \\xF6ffnen, scrollen Sie nach unten und klicken Sie auf \",(0,e.jsx)(n.strong,{children:\"Widgets bearbeiten\"}),\". Entfernen Sie jedes dortige Kontakte-Widget auf dieselbe Weise \\u2014 Ctrl-Klick und \",(0,e.jsx)(n.strong,{children:\"Widget entfernen\"}),\", oder Option-Klick auf die Entfernen-Schaltfl\\xE4che.\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"kontrollzentrum\",children:\"Kontrollzentrum\"}),`\n`,(0,e.jsxs)(n.p,{children:[\"Diesen \\xFCbersehen die meisten, weil Tahoe Widgets ins Kontrollzentrum verschoben hat und die Anpassung nicht in den Systemeinstellungen liegt. Klicken Sie auf das Symbol des Kontrollzentrums in der Men\\xFCleiste, w\\xE4hlen Sie \",(0,e.jsx)(n.strong,{children:\"Steuerelemente bearbeiten\"}),\" und ziehen Sie jedes Kontakte-Element aus dem Kontrollzentrum heraus. Klicken Sie auf \",(0,e.jsx)(n.strong,{children:\"Fertig\"}),\".\"]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Dann \",(0,e.jsx)(n.strong,{children:\"starten Sie neu\"}),\" \\u2014 nicht nur abmelden. Mehrere best\\xE4tigte L\\xF6sungen im Thread merken an, dass die CPU-Last erst nach einem vollst\\xE4ndigen Neustart zur\\xFCckging.\"]}),`\n`,(0,e.jsx)(n.p,{children:\"Eine weitere Warnung aus demselben Thread, gemeldet am 31. Juli: Bei einigen Nutzern kehrte die Schleife zur\\xFCck, nachdem sie die Widget-Galerie erneut ge\\xF6ffnet hatten \\u2014 selbst ohne das Kontakte-Widget hinzuzuf\\xFCgen. Wenn Sie dieses Problem hatten, meiden Sie den Widget-Editor, bis Apple den Daemon repariert.\"}),`\n`,(0,e.jsx)(n.h2,{id:\"l\\xF6sung-2-das-quarant\\xE4ne-flag-auf-callhistorydb-entfernen\",children:\"L\\xF6sung 2: Das Quarant\\xE4ne-Flag auf CallHistoryDB entfernen\"}),`\n`,(0,e.jsx)(n.p,{children:'F\\xFCr Macs ohne jegliches Kontakte-Widget, oder bei denen das Entfernen nicht half, ist dies die L\\xF6sung, zu der die technisch detaillierteste Meldung im Thread am 20. Mai gelangte und die mindestens zwei weitere Nutzer best\\xE4tigten (\\u201Epeopled-Prozess liegt jetzt bei 0 % CPU-Verbrauch\", schrieb einer am 26. Juni).'}),`\n`,(0,e.jsx)(n.h3,{id:\"schritt-1-terminal-festplattenvollzugriff-gew\\xE4hren\",children:\"Schritt 1: Terminal Festplattenvollzugriff gew\\xE4hren\"}),`\n`,(0,e.jsxs)(n.p,{children:['Systemeinstellungen > Datenschutz & Sicherheit > Festplattenvollzugriff, Terminal hinzuf\\xFCgen und aktivieren. Ohne das schl\\xE4gt jeder der folgenden Befehle mit \\u201EOperation not permitted\" fehl \\u2014 was zuf\\xE4llig genau der Fehler ist, auf den auch ',(0,e.jsx)(n.code,{children:\"peopled\"}),\" st\\xF6\\xDFt. Starten Sie Terminal nach der Freigabe neu.\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"schritt-2-den-ordner-betrachten\",children:\"Schritt 2: Den Ordner betrachten\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:'ls -lan@ \"$HOME/Library/Application Support/CallHistoryDB\"'})})})})}),`\n`,(0,e.jsxs)(n.p,{children:[\"Die Option \",(0,e.jsx)(n.code,{children:\"@\"}),\" zeigt erweiterte Attribute. Wonach Sie suchen, ist \",(0,e.jsx)(n.code,{children:\"com.apple.quarantine\"}),\" auf dem Ordner oder auf den darin enthaltenen \",(0,e.jsx)(n.code,{children:\"CallHistory.storedata\"}),\"-Dateien. Quarant\\xE4ne ist das Flag, das macOS heruntergeladenen Dateien anh\\xE4ngt; auf einer Systemdatenbank hat es nichts verloren, und wie es dorthin gelangt, ist nicht bekannt \\u2014 eine Wiederherstellung aus einem Backup und eine Migration von einem anderen Mac sind die beiden plausiblen Wege.\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"schritt-3-es-entfernen\",children:\"Schritt 3: Es entfernen\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:'xattr -dr com.apple.quarantine \"$HOME/Library/Application Support/CallHistoryDB\"'})})})})}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.code,{children:\"-d\"}),\" l\\xF6scht das Attribut, \",(0,e.jsx)(n.code,{children:\"-r\"}),\" durchl\\xE4uft den Ordner rekursiv.\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"schritt-4-die-daemons-neu-starten\",children:\"Schritt 4: Die Daemons neu starten\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"sudo killall -9 peopled CallHistorySyncHelper\"})})})})}),`\n`,(0,e.jsx)(n.p,{children:\"Beide werden bei Bedarf neu gestartet. Beobachten Sie die Aktivit\\xE4tsanzeige einige Minuten lang.\"}),`\n`,(0,e.jsx)(n.h3,{id:\"falls-das-flag-zur\\xFCckkehrt\",children:\"Falls das Flag zur\\xFCckkehrt\"}),`\n`,(0,e.jsx)(n.p,{children:'Ein Nutzer im Thread berichtete am 17. Juli, dass die L\\xF6sung funktionierte, das Quarant\\xE4ne-Flag aber \\xFCber Nacht \\u201Ewieder auftauchte\". Wenn Ihnen das passiert, quarant\\xE4nisiert etwas den Ordner erneut, und die Kandidaten sind ein Backup- oder Synchronisierungstool, das ihn als neue Daten behandelt. Pr\\xFCfen Sie, was nachts l\\xE4uft. Alternativ, und deutlich robuster, bestand der Ansatz eines anderen Nutzers darin, die Datenbank zu l\\xF6schen und macOS sie neu erstellen zu lassen:'}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(n.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(n.code,{children:(0,e.jsx)(n.span,{className:\"line\",children:(0,e.jsx)(n.span,{children:\"rm -rf ~/Library/Application\\\\ Support/CallHistoryDB\"})})})})}),`\n`,(0,e.jsx)(n.p,{children:\"Sie verlieren die auf dem Mac gespeicherte Kopie Ihres Anrufverlaufs. Sie f\\xFCllt sich \\xFCber Continuity vom iPhone aus wieder auf. Das ist ein gr\\xF6\\xDFerer Hammer als das Entfernen eines Attributs, und wir w\\xFCrden zuerst das Attribut versuchen.\"}),`\n`,(0,e.jsx)(n.h2,{id:\"l\\xF6sung-3-icloud-kontakte-umschalten\",children:\"L\\xF6sung 3: iCloud-Kontakte umschalten\"}),`\n`,(0,e.jsx)(n.p,{children:\"Systemeinstellungen > [Ihr Name] > iCloud > In iCloud sichern > Kontakte, ausschalten. Eine Minute warten, die CPU beobachten. Sinkt sie, schalten Sie sie wieder ein und beobachten, ob sie unten bleibt.\"}),`\n`,(0,e.jsxs)(n.p,{children:[\"Das funktioniert bei einem Teil der Nutzer und ist der Standardrat in den \\xE4lteren Vorl\\xE4ufer-Threads, die Jahre zur\\xFCckreichen. Es hat auch einen Fehlerfall, auf den ein Nutzer am 11. Mai stie\\xDF: Der Schalter lie\\xDF sich \\xFCberhaupt nicht ausschalten. Falls Ihnen das passiert, melden Sie sich vollst\\xE4ndig von iCloud ab (behalten Sie bei Nachfrage eine Kopie der Daten), starten Sie neu und melden Sie sich wieder an. Beachten Sie, dass der Berichterstatter auf V2EX mit der \",(0,e.jsx)(n.code,{children:\"accountsd\"}),\"-Variante genau das versuchte und die CPU-Last nach dem Anmelden sofort zur\\xFCckkehrte.\"]}),`\n`,(0,e.jsx)(n.p,{children:(0,e.jsx)(n.img,{alt:\"Das Kontakte-Widget entfernen und die CallHistoryDB-Quarant\\xE4ne aufheben unter macOS Tahoe\",src:\"/images/blog/peopled-contactsd-high-cpu-macos-tahoe-contacts-widget-callhistorydb-fix-2026/content-2.webp\",width:\"1024\",height:\"572\"})}),`\n`,(0,e.jsxs)(n.h2,{id:\"wenn-es-contactsd-ist-und-sie-ein-exchange--oder-google-konto-haben\",children:[\"Wenn es \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" ist und Sie ein Exchange- oder Google-Konto haben\"]}),`\n`,(0,e.jsx)(n.p,{children:\"Dieser Fall existiert schon vor Tahoe und hat einen saubereren Mechanismus.\"}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.code,{children:\"contactsd\"}),\" ist der Daemon des Contacts-Frameworks: Er verwaltet die Adressbuchdatenbank und gleicht sie mit jedem Konto ab, das Kontakte synchronisiert. Er erledigt au\\xDFerdem planm\\xE4\\xDFig Aufr\\xE4umarbeiten \\u2014 sein launchd-Job registriert eine t\\xE4gliche \",(0,e.jsx)(n.code,{children:\"validate-cache\"}),\"-Aufgabe, die nur bei externer Stromversorgung ausgef\\xFChrt wird, w\\xE4hrend Sie inaktiv sind, sowie eine wiederkehrende \",(0,e.jsx)(n.code,{children:\"accounts.cleanup\"}),\"-Aktivit\\xE4t. Gelegentliche, kurze CPU-Last durch \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" ist normal.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Nicht normal ist eine Spitze etwa jede Minute. Ein Entwickler \",(0,e.jsx)(n.a,{href:\"https://developer.apple.com/forums/thread/809986\",children:\"dokumentierte genau das\"}),\" im Dezember 2025 in den Apple Developer Forums: Auf einem M1 Max unter Tahoe 26.1 trieb ein Office-365-Konto mit aktivierten Kontakten \",(0,e.jsx)(n.code,{children:\"AddressBookManager\"}),\" auf 81 % und \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" auf 22\\u201359 % in einem sich alle 60\\u201390 Sekunden wiederholenden Muster \\u2014 selbst mit auf dem Server geleertem Exchange-Kontakteordner, und reproduzierbar bei einer sauberen Neuinstallation. Dasselbe Konto und dieselben Daten zeigten dieses Verhalten weder auf einem M4-Mac noch unter iOS. Niemand von Apple antwortete.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Sein Workaround ist der, der funktioniert: das Exchange-Konto aus Systemeinstellungen > Internet-Accounts entfernen und, falls ben\\xF6tigt, Outlook verwenden, das nicht \\xFCber das Contacts-Framework l\\xE4uft. Eine Meldung im Community-Forum vom Februar mit \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" auf einem MacBook Pro (2024) unter 26.3 erhielt den entsprechenden Rat \\u2014 die Kontaktsynchronisierung von Exchange und Google stoppen und testen \\u2014 und wenn sowohl iCloud als auch ein Google-Konto Kontakte synchronisieren, zuerst Google ausschalten.\"]}),`\n`,(0,e.jsxs)(n.h2,{id:\"die-accountsd-variante\",children:[\"Die \",(0,e.jsx)(n.code,{children:\"accountsd\"}),\"-Variante\"]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Die schwerwiegendsten Meldungen \\u2014 \",(0,e.jsx)(n.code,{children:\"accountsd\"}),\" bei 180 % mit \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" und \",(0,e.jsx)(n.code,{children:\"itunescloudd\"}),\" im Schlepptau, auf einem MacBook Air M5 unter 26.5.2, \",(0,e.jsx)(n.a,{href:\"https://www.v2ex.com/t/1226043\",children:\"im Juli auf V2EX beschrieben\"}),\" \\u2014 haben keine best\\xE4tigte L\\xF6sung. Der Berichterstatter merkte an, dass es jeden Morgen zur selben Uhrzeit begann, was eher auf eine geplante Aufgabe als auf ein Widget-Ereignis hindeutet. Ab- und wieder anmelden half nicht.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Was wir erg\\xE4nzen k\\xF6nnen: \",(0,e.jsx)(n.code,{children:\"accountsd\"}),\" ist der Daemon des Accounts-Frameworks und wird immer dann aufgerufen, wenn irgendetwas eine Anmeldeinformation f\\xFCr ein angemeldetes Konto ben\\xF6tigt, und \",(0,e.jsx)(n.code,{children:\"itunescloudd\"}),\" ist der Bibliotheks-Daemon von iTunes Cloud (Apple Music / Store). Alle drei gleichzeitig bedeuten, dass irgendetwas wiederholt Kontoanmeldedaten anfordert und dabei scheitert. Wenn Sie diese Variante haben, lohnt es sich trotzdem, die obigen L\\xF6sungen der Reihe nach auszuprobieren, und wenn keine davon hilft, sollten Sie pr\\xFCfen, ob ein einzelnes Konto \\u2014 ein alter Google- oder Exchange-Login, ein abgelaufenes app-spezifisches Passwort \\u2014 die Authentifizierung unter Systemeinstellungen > Internet-Accounts scheitern l\\xE4sst. Entfernen Sie alles, was ein Warnsymbol zeigt.\"]}),`\n`,(0,e.jsx)(n.h2,{id:\"warum-tahoe-und-warum-ein-widget\",children:\"Warum Tahoe, und warum ein Widget\"}),`\n`,(0,e.jsx)(n.p,{children:\"Widgets gibt es auf dem Mac schon seit Jahren, daher ist die Frage berechtigt, warum das erst mit 26.4 begann. Zwei Dinge \\xE4nderten sich gleichzeitig.\"}),`\n`,(0,e.jsx)(n.p,{children:'Das Erste ist, wo Widgets leben. Tahoe hat Widgets zus\\xE4tzlich zum Schreibtisch und zur Mitteilungszentrale ins Kontrollzentrum gebracht, und ein Kontakte-Widget im Kontrollzentrum wird in einem anderen Rhythmus aktualisiert als eines auf dem Schreibtisch \\u2014 die eigenen Log-Vorlagen des Daemons unterscheiden einen t\\xE4glichen \\u201EWidgets vorschlagen\"-Durchlauf (\\u201ELast widget suggestion date is older 24 hours\") von ereignisgesteuerten Aktualisierungen (\\u201EEvent triggered widget refresh\"). Mehr Oberfl\\xE4chen, mehr Aktualisierungsanfragen, mehr Gelegenheiten f\\xFCr einen fehlgeschlagenen erneuten Versuch.'}),`\n`,(0,e.jsx)(n.p,{children:\"Das Zweite ist, dass die Fehlerbehandlung des Daemons offenbar erneut versucht, statt zur\\xFCckzuweichen. Das ist unsere Schlussfolgerung aus dem Verhalten, nicht etwas, das wir in der Bin\\xE4rdatei ablesen k\\xF6nnen, und es ist der eigentliche Fehler: Ein verweigerter Lesezugriff sollte einmal protokolliert und die Aktualisierung bis zum n\\xE4chsten echten Ereignis aufgegeben werden. Stattdessen wird sie erneut versucht, und die Ereignisse kommen weiter.\"}),`\n`,(0,e.jsx)(n.p,{children:\"Keines von beidem k\\xF6nnen Sie \\xE4ndern. Was Sie \\xE4ndern k\\xF6nnen, ist, ob das Widget existiert und ob der Lesezugriff verweigert wird \\u2014 genau das bewirken die drei L\\xF6sungen.\"}),`\n`,(0,e.jsx)(n.h2,{id:\"nachdem-es-behoben-ist\",children:\"Nachdem es behoben ist\"}),`\n`,(0,e.jsx)(n.p,{children:\"Ein paar Dinge halten es dauerhaft behoben.\"}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Lassen Sie den Festplattenvollzugriff von Terminal bestehen\"}),\", wenn Sie L\\xF6sung 2 verwendet haben, oder widerrufen Sie ihn bewusst \\u2014 beides ist in Ordnung, aber wissen Sie, wof\\xFCr Sie sich entschieden haben, denn Terminal mit Festplattenvollzugriff ist eine weitreichende Berechtigung.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Meiden Sie eine Weile die Widget-Galerie.\"}),\" Die Meldung vom 31. Juli im Thread ist eindeutig, dass bereits das \\xD6ffnen \\u2014 nicht das Hinzuf\\xFCgen \\u2014 die Schleife neu startete. Wenn Sie andere Widgets hinzuf\\xFCgen m\\xF6chten, tun Sie es und pr\\xFCfen Sie danach die Aktivit\\xE4tsanzeige.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Pr\\xFCfen Sie nach dem n\\xE4chsten macOS-Update erneut.\"}),\" Punkt-Updates haben bei manchen Nutzern die Standardelemente des Kontrollzentrums wieder hinzugef\\xFCgt, und ein still zur\\xFCckkehrendes Kontakte-Widget ist der wahrscheinlichste Grund, warum das Problem erneut auftritt.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Melden Sie das Problem.\"}),\" Feedback Assistant, Kategorie macOS, h\\xE4ngen Sie eine sysdiagnose an, die bei hoher CPU-Last aufgenommen wurde (\",(0,e.jsx)(n.code,{children:\"sudo sysdiagnose\"}),\" aus Terminal, oder Umschalt-Ctrl-Option-Befehl-Punkt), und f\\xFCgen Sie die Sandbox-Verweigerungszeile ein. F\\xFCnf Monate an Forum-Threads haben daran nichts bewegt; ein paar hundert Feedback-Meldungen mit derselben Log-Zeile k\\xF6nnten es.\"]}),`\n`,(0,e.jsx)(n.h2,{id:\"ist-es-schon-behoben\",children:\"Ist es schon behoben?\"}),`\n`,(0,e.jsxs)(n.p,{children:[\"Nein, soweit erkennbar. Wir haben Apples \",(0,e.jsx)(n.a,{href:\"https://support.apple.com/en-us/122868\",children:\"Versionshinweise zu Tahoe\"}),' gepr\\xFCft: 26.4.1 \\u201Eenth\\xE4lt Fehlerbehebungen\", 26.5 \\u201Eenth\\xE4lt Verbesserungen, Fehlerbehebungen und Sicherheitsupdates\", 26.6 optimiert den Spotlight-Index, und 26.6.1 sowie 26.6.2 sind Sicherheitsupdates. Keine erw\\xE4hnt Kontakte, Widgets oder CPU. Im Community-Thread halten die Meldungen unter 26.5 an (\\u201EThe issue still exists in Tahoe 26.5. Apple needs to fix this asap\", am 15. Mai) und reichen bis in den Juli. F\\xFCr 26.6.2, das am 17. August erschien, haben wir bislang weder in die eine noch in die andere Richtung eine Meldung gesehen.']}),`\n`,(0,e.jsxs)(n.p,{children:[\"Wenn Sie die macOS-27-Beta nutzen und dies gesehen haben oder nicht, verfolgen wir das in unserer \",(0,e.jsx)(n.a,{href:\"/blog/should-you-install-macos-27-golden-gate-developer-beta-known-issues-2026\",children:\"\\xDCbersicht der bekannten Beta-Probleme\"}),\".\"]}),`\n`,(0,e.jsx)(n.h2,{id:\"was-sie-sich-sparen-k\\xF6nnen\",children:\"Was Sie sich sparen k\\xF6nnen\"}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"NVRAM oder SMC zur\\xFCcksetzen.\"}),\" Keines von beidem hat etwas mit den Dateiberechtigungen eines Daemons im User-Space zu tun. \\xDCberspringen.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsxs)(n.strong,{children:[(0,e.jsx)(n.code,{children:\"tccutil reset All\"}),\".\"]}),\" Ein Nutzer probierte es aus; es half nicht, und es entzieht jeder App auf dem Mac s\\xE4mtliche Datenschutzberechtigungen, die Sie dann einen Nachmittag lang wieder neu vergeben. Es gibt keinen Grund zur Annahme, dass TCC die fehlerhafte Ebene ist \\u2014 die Verweigerung in den Logs stammt von der Sandbox, nicht von TCC.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.strong,{children:\"Sicherer Modus.\"}),\" Das Starten in den sicheren Modus und zur\\xFCck leert einige Caches und verschaffte einigen Nutzern vor\\xFCbergehend Erleichterung. Es ist ein Neustart mit Extraschritten und behebt nicht die Ursache.\"]}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsxs)(n.strong,{children:[(0,e.jsx)(n.code,{children:\"peopled\"}),\" mit \",(0,e.jsx)(n.code,{children:\"launchctl\"}),\" deaktivieren.\"]}),\" Sie k\\xF6nnen den Agenten per \",(0,e.jsx)(n.code,{children:\"launchctl disable\"}),' deaktivieren, und er wird keine CPU mehr verbrauchen, weil er nicht mehr l\\xE4uft. Er stoppt dann aber auch das Kontakte-Widget, Personenvorschl\\xE4ge, die \\u201EKaufanfrage\"-Mechanik der Bildschirmzeit und alles andere, was davon abh\\xE4ngt, und auf einem durch System Integrity Protection gesch\\xFCtzten Mac \\xFCbersteht die \\xC4nderung m\\xF6glicherweise kein Update. Nicht empfohlen, au\\xDFer als letztes diagnostisches Mittel.']}),`\n`,(0,e.jsx)(n.h2,{id:\"h\\xE4ufige-probleme-beheben\",children:\"H\\xE4ufige Probleme beheben\"}),`\n`,(0,e.jsxs)(n.h3,{id:\"die-aktivit\\xE4tsanzeige-zeigt-zwanzig-kopien-von-contactsd\",children:[\"Die Aktivit\\xE4tsanzeige zeigt zwanzig Kopien von \",(0,e.jsx)(n.code,{children:\"contactsd\"})]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Das haben wir selbst beim Schreiben beobachtet: ein Schwall von zwanzig \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\"-Prozessen mit fortlaufenden PIDs, alle Kinder von launchd, alle bei 0 % CPU, innerhalb einer Minute wieder verschwunden. Das ist launchd, das bei Bedarf pro Client eine eigene Instanz erzeugt, und das ist nicht der Fehler. Der Fehler ist ein einzelner Prozess mit hoher CPU-Last, der bestehen bleibt.\"]}),`\n`,(0,e.jsxs)(n.h3,{id:\"das-kontakte-widget-ist-weg-aber-peopled-liegt-weiterhin-bei-80-\",children:[\"Das Kontakte-Widget ist weg, aber \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" liegt weiterhin bei 80 %\"]}),`\n`,(0,e.jsx)(n.p,{children:\"Pr\\xFCfen Sie alle drei Orte \\u2014 Schreibtisch, Mitteilungszentrale, Kontrollzentrum \\u2014 und wechseln Sie dann zu L\\xF6sung 2. Wenn Sie nie ein Kontakte-Widget hatten, gehen Sie direkt zu L\\xF6sung 2.\"}),`\n`,(0,e.jsxs)(n.h3,{id:\"xattr-meldet-no-such-xattr-comapplequarantine\",children:[(0,e.jsx)(n.code,{children:\"xattr\"}),' meldet \\u201ENo such xattr: com.apple.quarantine\"']}),`\n`,(0,e.jsx)(n.p,{children:\"Der Ordner ist nicht unter Quarant\\xE4ne, also ist das nicht Ihr Ausl\\xF6ser. Probieren Sie L\\xF6sung 3, und pr\\xFCfen Sie, ob ein Exchange- oder Google-Konto Kontakte synchronisiert.\"}),`\n`,(0,e.jsxs)(n.h3,{id:\"ls-auf-callhistorydb-meldet-operation-not-permitted-selbst-mit-sudo\",children:[(0,e.jsx)(n.code,{children:\"ls\"}),' auf CallHistoryDB meldet \\u201EOperation not permitted\" selbst mit sudo']}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.code,{children:\"sudo\"}),\" umgeht TCC nicht. Terminal selbst braucht Festplattenvollzugriff, gew\\xE4hrt in den Systemeinstellungen, und muss anschlie\\xDFend neu gestartet werden.\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"es-kam-nach-einem-macos-update-zur\\xFCck\",children:\"Es kam nach einem macOS-Update zur\\xFCck\"}),`\n`,(0,e.jsx)(n.p,{children:\"Updates k\\xF6nnen das Widget dem Standardlayout des Kontrollzentrums wieder hinzuf\\xFCgen. Pr\\xFCfen Sie erneut die drei Orte.\"}),`\n`,(0,e.jsx)(n.h2,{id:\"faq\",children:\"FAQ\"}),`\n`,(0,e.jsxs)(n.h3,{id:\"ist-peopled-malware\",children:[\"Ist \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" Malware?\"]}),`\n`,(0,e.jsxs)(n.p,{children:[\"Nein. Es ist ein von Apple signierter Daemon unter \",(0,e.jsx)(n.code,{children:\"/System/Library/PrivateFrameworks/People.framework/peopled\"}),\" auf dem versiegelten Systemvolume. Ein Prozess mit diesem Namen, der von anderswo l\\xE4uft, w\\xE4re eine Untersuchung wert; dieser hier geh\\xF6rt Apple.\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"kann-ich-ihn-einfach-beenden\",children:\"Kann ich ihn einfach beenden?\"}),`\n`,(0,e.jsxs)(n.p,{children:[(0,e.jsx)(n.code,{children:\"sudo killall peopled\"}),\" stoppt ihn, bis ihn das n\\xE4chste Ereignis weckt \\u2014 auf einem aktiv genutzten Mac sind das Sekunden. N\\xFCtzlich ist das als Diagnose \\u2014 bleibt die CPU-Last nach dem Beenden niedrig, ist der Ausl\\xF6ser weg \\u2014, nicht als L\\xF6sung.\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"geht-durch-das-entfernen-des-widgets-etwas-verloren\",children:\"Geht durch das Entfernen des Widgets etwas verloren?\"}),`\n`,(0,e.jsxs)(n.p,{children:[\"Nur das Widget. Kontakte, Anrufverlauf und Vorschl\\xE4ge in Spotlight und Nachrichten funktionieren weiterhin; \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" l\\xE4uft weiterhin bei Bedarf. Er wird nur nicht mehr aufgefordert, etwas zu aktualisieren, das er nicht aktualisieren kann.\"]}),`\n`,(0,e.jsx)(n.h3,{id:\"warum-braucht-das-lesen-des-callhistorydb-ordners-festplattenvollzugriff\",children:\"Warum braucht das Lesen des CallHistoryDB-Ordners Festplattenvollzugriff?\"}),`\n`,(0,e.jsx)(n.p,{children:\"Er enth\\xE4lt Ihr Anrufprotokoll, das macOS als sensible pers\\xF6nliche Daten behandelt und wie Nachrichten und Mail mit TCC sch\\xFCtzt. Dieser Schutz ist der Grund, warum Terminal die Berechtigung ben\\xF6tigt, und auch, warum ein unerwartetes Quarant\\xE4ne-Flag darauf so st\\xF6rend wirkt: Der Daemon hat nur einen einzigen, schmalen, sandboxed Zugangsweg zu den Daten, und alles, was diesen Weg blockiert, blockiert ihn vollst\\xE4ndig.\"}),`\n`,(0,e.jsx)(n.h3,{id:\"wird-macos-27-das-beheben\",children:\"Wird macOS 27 das beheben?\"}),`\n`,(0,e.jsx)(n.p,{children:\"Unbekannt. Apple hat das Problem nicht best\\xE4tigt, und in den Beta-Versionshinweisen steht nichts dazu. Wenn der Mechanismus so ist, wie es die Indizien nahelegen, ist die L\\xF6sung klein \\u2014 einmal fehlschlagen und keine weiteren Versuche mehr \\u2014, und sie k\\xF6nnte in jedem Punkt-Update ankommen, ohne erw\\xE4hnt zu werden.\"}),`\n`,(0,e.jsx)(n.h2,{id:\"fazit\",children:\"Fazit\"}),`\n`,(0,e.jsx)(n.p,{children:\"Ein Mac, der hei\\xDF l\\xE4uft, ohne etwas zu tun, hat fast immer einen Prozess in einer Schleife, und die Schleife hat fast immer eine banale Ursache. In diesem Fall ist es ein Daemon, dessen Aufgabe es ist, ein Widget aktuell zu halten, der durch jeden Anruf und jede Nachricht geweckt wird und der die eine Datenbank nicht lesen kann, die er braucht. Entfernen Sie das Widget, und die Anfragen h\\xF6ren auf; korrigieren Sie die Berechtigungen des Ordners, und die Lesezugriffe gelingen. Beides durchbricht die Schleife.\"}),`\n`,(0,e.jsxs)(n.p,{children:[\"Wenn \",(0,e.jsx)(n.code,{children:\"peopled\"}),\" bei Ihnen ganz oben in der Aktivit\\xE4tsanzeige steht, arbeiten Sie die drei L\\xF6sungen der Reihe nach durch und starten Sie zwischendurch jeweils neu. Wenn es \",(0,e.jsx)(n.code,{children:\"contactsd\"}),\" mit einem Exchange- oder Google-Konto ist, entfernen Sie das Konto. Und wenn es alle drei sind, mit \",(0,e.jsx)(n.code,{children:\"accountsd\"}),\" an vorderster Stelle, probieren Sie alles Obige aus, entfernen Sie jedes Konto mit einer Warnung, und \\u2014 weil Apple dazu seit f\\xFCnf Monaten schweigt \\u2014 reichen Sie den Feedback-Bericht mit der Sandbox-Log-Zeile ein, der das Problem vielleicht endlich beheben l\\xE4sst.\"]}),`\n`,(0,e.jsx)(n.p,{children:(0,e.jsxs)(n.em,{children:[\"Weiterf\\xFChrende Lekt\\xFCre: \",(0,e.jsx)(n.a,{href:\"/blog/mac-hot-battery-drain-after-macos-26-6-spotlight-siri-index-rebuild-fix-2026\",children:\"Mac hei\\xDF und Akku leert sich nach macOS 26.6\"}),\", \",(0,e.jsx)(n.a,{href:\"/blog/windowserver-high-cpu-macos-tahoe-26-5-liquid-glass-multi-display-fix-2026\",children:\"WindowServer-CPU-Last unter 26.5 mit Liquid Glass\"}),\", \",(0,e.jsx)(n.a,{href:\"/blog/contacts-app-not-working-macos-tahoe-ghost-numbers-crashes-wont-save-fix-2026\",children:\"die Kontakte-App, die unter Tahoe nicht funktioniert\"}),\", \",(0,e.jsx)(n.a,{href:\"/blog/mac-activity-monitor-complete-guide-2025\",children:\"die Aktivit\\xE4tsanzeige von Grund auf\"}),\", und \",(0,e.jsx)(n.a,{href:\"/blog/macos-tahoe-widgets-customization-complete-guide-2025\",children:\"Widgets unter Tahoe anpassen\"}),\".\"]})})]})}function o(i={}){let{wrapper:n}=i.components||{};return n?(0,e.jsx)(n,{...i,children:(0,e.jsx)(c,{...i})}):c(i)}return S(z);})();\n;return Component;","toc":[{"title":"Wichtigste Erkenntnisse","url":"#wichtigste-erkenntnisse","depth":2},{"title":"Welcher Prozess genau","url":"#welcher-prozess-genau","depth":2},{"title":"Was peopled tatsächlich tut","url":"#was-peopled-tatsächlich-tut","depth":2},{"title":"Warum er in der Schleife hängt","url":"#warum-er-in-der-schleife-hängt","depth":2},{"title":"Erst bestätigen, dann etwas ändern","url":"#erst-bestätigen-dann-etwas-ändern","depth":2},{"title":"Lösung 1: Das Kontakte-Widget entfernen","url":"#lösung-1-das-kontakte-widget-entfernen","depth":2},{"title":"Schreibtisch","url":"#schreibtisch","depth":3},{"title":"Mitteilungszentrale","url":"#mitteilungszentrale","depth":3},{"title":"Kontrollzentrum","url":"#kontrollzentrum","depth":3},{"title":"Lösung 2: Das Quarantäne-Flag auf CallHistoryDB entfernen","url":"#lösung-2-das-quarantäne-flag-auf-callhistorydb-entfernen","depth":2},{"title":"Schritt 1: Terminal Festplattenvollzugriff gewähren","url":"#schritt-1-terminal-festplattenvollzugriff-gewähren","depth":3},{"title":"Schritt 2: Den Ordner betrachten","url":"#schritt-2-den-ordner-betrachten","depth":3},{"title":"Schritt 3: Es entfernen","url":"#schritt-3-es-entfernen","depth":3},{"title":"Schritt 4: Die Daemons neu starten","url":"#schritt-4-die-daemons-neu-starten","depth":3},{"title":"Falls das Flag zurückkehrt","url":"#falls-das-flag-zurückkehrt","depth":3},{"title":"Lösung 3: iCloud-Kontakte umschalten","url":"#lösung-3-icloud-kontakte-umschalten","depth":2},{"title":"Wenn es contactsd ist und Sie ein Exchange- oder Google-Konto haben","url":"#wenn-es-contactsd-ist-und-sie-ein-exchange--oder-google-konto-haben","depth":2},{"title":"Die accountsd-Variante","url":"#die-accountsd-variante","depth":2},{"title":"Warum Tahoe, und warum ein Widget","url":"#warum-tahoe-und-warum-ein-widget","depth":2},{"title":"Nachdem es behoben ist","url":"#nachdem-es-behoben-ist","depth":2},{"title":"Ist es schon behoben?","url":"#ist-es-schon-behoben","depth":2},{"title":"Was Sie sich sparen können","url":"#was-sie-sich-sparen-können","depth":2},{"title":"Häufige Probleme beheben","url":"#häufige-probleme-beheben","depth":2},{"title":"Die Aktivitätsanzeige zeigt zwanzig Kopien von contactsd","url":"#die-aktivitätsanzeige-zeigt-zwanzig-kopien-von-contactsd","depth":3},{"title":"Das Kontakte-Widget ist weg, aber peopled liegt weiterhin bei 80 %","url":"#das-kontakte-widget-ist-weg-aber-peopled-liegt-weiterhin-bei-80-","depth":3},{"title":"xattr meldet „No such xattr: com.apple.quarantine\"","url":"#xattr-meldet-no-such-xattr-comapplequarantine","depth":3},{"title":"ls auf CallHistoryDB meldet „Operation not permitted\" selbst mit sudo","url":"#ls-auf-callhistorydb-meldet-operation-not-permitted-selbst-mit-sudo","depth":3},{"title":"Es kam nach einem macOS-Update zurück","url":"#es-kam-nach-einem-macos-update-zurück","depth":3},{"title":"FAQ","url":"#faq","depth":2},{"title":"Ist peopled Malware?","url":"#ist-peopled-malware","depth":3},{"title":"Kann ich ihn einfach beenden?","url":"#kann-ich-ihn-einfach-beenden","depth":3},{"title":"Geht durch das Entfernen des Widgets etwas verloren?","url":"#geht-durch-das-entfernen-des-widgets-etwas-verloren","depth":3},{"title":"Warum braucht das Lesen des CallHistoryDB-Ordners Festplattenvollzugriff?","url":"#warum-braucht-das-lesen-des-callhistorydb-ordners-festplattenvollzugriff","depth":3},{"title":"Wird macOS 27 das beheben?","url":"#wird-macos-27-das-beheben","depth":3},{"title":"Fazit","url":"#fazit","depth":2}],"estimatedTime":20}