configd: Fixing High CPU Usage Problems met het configd Process in Mac OS X

configd is een systeemconfiguratie-daemon die achter Mac OS X draait, de meeste gebruikers zullen het OS X-proces in de achtergrond van hun Mac nooit zien of zien. Met dat gezegd, kan configd soms acteren en ongewone CPU-spikes en fanactiviteit veroorzaken waardoor je Mac klinkt als een windtunnel. Vreemd configdgedrag wordt gemakkelijk gediagnosticeerd door Activity Monitor te starten, te sorteren op de "% CPU" -optie en het 'configd' rootgebruiksproces te zien zitten aan de bovenkant, ergens tussen de 20-95% CPU in beslag nemend. Als dat gedrag een minuut of zo aanhoudt, is het meestal geen groot probleem, tijdelijke pieken kunnen normaal zijn, dus laat het gewoon lopen en negeer het, maar er zijn momenten waarop configd op onverklaarbare dwaalspoor kan gaan en er ongeveer 50% CPU-gebruik zal zitten of meer urenlang zonder duidelijke reden - dat is wat we hier willen oplossen.

Resolueer configd Hoog CPU-gebruik met Force Relaunch via Terminal

We gaan configd opnieuw starten door hem een ​​snelle trap in de broek te geven met behulp van het almachtige 'killall'-commando. Omdat configd een systeemproces is, wordt het onmiddellijk opnieuw gestart zodra het is gedood en in alle gevallen waarin configd gek wordt met processorgebruik, lost deze truc het probleem op.

Start Terminal (zit in / Applications / Utilities / as usual) en typ de volgende opdracht:

sudo killall configd

U moet een beheerderswachtwoord invoeren om de opdracht uit te voeren als supergebruiker, dus het prefix sudo. Het uitvoeren van de opdracht zonder sudo is niet effectief omdat het proces eigendom is van root (supergebruiker).

Als je de Activity Monitor open liet en gesorteerd op CPU, dan zul je zien dat 'configd' verdwijnt en als het opnieuw opstart, staat het niet langer bovenaan de lijst en verliest het niet langer buitensporige hoeveelheden CPU. Zoeken naar het proces zou het nu ergens tussen de 0% en 1% van de CPU moeten kosten.

Als je na het gebruik van de opdracht killall nog steeds problemen hebt met configd, ga je naar de onderkant van dit artikel voor meer informatie over het oplossen van problemen.

Omgaan met configd zonder Terminal

Als u niet vertrouwd bent met de opdrachtregel, zijn er twee andere opties:

  1. Sluit alle actieve Mac-applicaties die u handmatig kunt doen of door deze zelfgemaakte app te gebruiken om alles in OS X te stoppen
  2. Start de Mac opnieuw op

Het rebooten van de Mac heeft hetzelfde effect als het rechtstreeks beëindigen van het configd proces, hoewel het duidelijk een beetje meer opdringerig is voor je workflow. Het afsluiten van elke applicatie kan helpen als de vertrouwelijke fout wordt veroorzaakt door een fout gedrag van een app, meer daarover in een moment.

Diagnose van specifieke configd-problemen en leren over configd

Apple beschrijft officieel configd als volgt:

The configd daemon is responsible for many configuration aspects of the local system. configd maintains data reflecting the desired and current state of the system, provides notifications to applications when this data changes, and hosts a number of configuration agents in the form of loadable bundles.

Dat fragment is overgenomen van de manuele pagina op configd, die toegankelijk is door het volgende in de terminal te typen:

man configd

Je kunt dat rechtstreeks op je Mac lezen via de opdrachtregel of via internet via de koppeling Ontwikkelaarsbibliotheek hier.

Als je wilt proberen te achterhalen waarom configd gek werd in de eerste plaats, kun je op de volgende twee locaties rondkijken voor configd bundels en plist-bestanden, wat je misschien wat aanwijzingen kan geven over wat er mis gaat en waarom:

/System/Library/SystemConfiguration/
/Library/Preferences/SystemConfiguration/

Een andere optie is om ervoor te kiezen om configd opnieuw uit te voeren in de uitgebreide modus met de volgende opdracht:

sudo /usr/libexec/configd -v

Hiermee wordt uitgebreide informatie geëxporteerd naar de OS X-systeemconsole, die ook kan worden gelezen vanuit de Console-app of via de opdrachtregel. Het vergelijken van die informatie met wat is gevonden in de bovengenoemde systeemmappen kan erg handig zijn bij het diagnosticeren van een precieze oorzaak.

Algemene ervaring heeft aangetoond dat sommige apps en processen vaker problemen veroorzaken dan andere, waaronder mogelijk op Java en Java gebaseerde services zoals CrashPlan, bepaalde printers met onopgeloste afdrukfouten en onjuiste netwerkconfiguraties waarbij een netwerkverbinding herhaaldelijk wordt geprobeerd en falen. Dit is de reden waarom het stoppen met alle apps effectief is om het probleem op te lossen, omdat het de mislukte herhaling kan beëindigen waardoor configd uit de knoop gaat en in sommige gevallen waarbij het doden van configd het probleem niet oplost, kan het plistbestand van de boosdoener worden verwijderd het probleem voor eens en voor altijd. Uw individuele ervaringen en resultaten kunnen variëren.