Förhindrar viloläge
Andra namn: vad håller min Mac vaken, Preventing Sleep
Kort svar
Förhindrar viloläge är en kolumn på fliken Energi i Aktivitetskontroll som visar om en app just nu hindrar datorn från att gå i viloläge. Appar gör det med avsikt medan de spelar upp media, hämtar filer eller kör långa uppgifter.
Appar håller en Mac vaken genom en så kallad strömspärr (power assertion), en begäran till macOS om att skjuta upp viloläget. En videospelare gör det medan en film spelas upp, och en säkerhetskopiering eller hämtning kan göra det tills den är klar. De flesta appar släpper begäran när de är färdiga.
Om din Mac inte går i viloläge av sig själv, eller om skärmen förblir tänd, är kolumnen Förhindrar viloläge det första stället att titta på.
På den här sidan
Så hittar du vad som håller din Mac vaken
Öppna Aktivitetskontroll, klicka på fliken Energi och klicka på kolumnen Förhindrar viloläge för att sortera efter den. Appar som visar Ja håller datorn vaken.
För mer detaljer kör du pmset -g assertions i Terminal. Kommandot listar varje aktiv spärr och processen som äger den, vilket även omfattar bakgrundsprocesser.
Vad du kan göra åt det
Om appen har ett bra skäl, till exempel en pågående hämtning, låter du den bli klar. Om den inte har det släpper appen normalt sin begäran när du avslutar den. Webbläsarflikar som spelar upp media, även ljudlösa, är en vanlig orsak.
Så läser du pmset -g assertions
För ett svar på en rad kör du pmset -g och tittar på raden sleep. Om något håller datorn vaken slutar den med orden sleep prevented by och en lista med processnamn.
pmset -g assertions ger detaljerna. Den övre halvan är en sammanfattning av typerna av spärrar, och avsnittet Listed by owning process visar varje process, hur länge den har hållit sin spärr och ett namn som appen har gett den. De typer du oftast ser:
- PreventUserIdleSystemSleep: datorn går inte i viloläge av sig själv, men skärmen kan fortfarande stängas av.
- PreventUserIdleDisplaySleep: skärmen förblir tänd. Videospelare och presentationsappar använder den här.
- PreventSystemSleep: datorn hindras helt från att gå i viloläge.
caffeinate -s-varianten fungerar bara på nätström. - NoIdleSleepAssertion: ett annat namn som vissa appar använder när de hindrar datorn från att gå i viloläge vid inaktivitet.
- powerd håller en spärr som heter Prevent sleep while display is on: normalt medan du använder datorn.
När coreaudiod eller en annan systemprocess håller din Mac vaken
Ibland är ägaren i pmset -g assertions en systemprocess, som coreaudiod, som håller en spärr åt en annan app. Då har posten en rad där det står Created for PID följt av ett tal. Det talet är appen du letar efter.
- Kör
pmset -g assertionsoch leta upp raden Created for PID under systemprocessen. - Kör
ps -p <PID> -o comm=och byt ut <PID> mot talet för att skriva ut appens namn. - Stoppa det som appen gör med ljud, som en pausad video, ett öppet samtal eller en inspelning, eller avsluta appen.
- Kör
pmset -g assertionsigen för att bekräfta att posten är borta.
Vanliga orsaker till att en Mac inte går i viloläge
- En webbläsarflik eller app med ljud eller video öppet, även om det är pausat eller ljudlöst.
- En app för videosamtal som fortfarande har mikrofonen eller kameran öppen.
- Hämtningar, överföringar, molnsynkronisering och säkerhetskopieringar som inte är klara.
- Appar som läser från en skiva. Apples exempel är Musik som spelar upp låtar.
- Personer som använder tjänster som din Mac delar, som en ansluten skrivare eller delade filer.
- En aktiv terminalsession, som en fjärrinloggning. Inställningen ttyskeepawake i
pmsetförhindrar viloläge vid inaktivitet medan en sådan används. Körpmset -g | grep ttyskeepawakeför att kontrollera den, där 1 betyder på. - Ett
caffeinate-kommando eller ett verktyg för att hålla datorn vaken som du har startat och glömt bort.
Så ser du vad som väckte din Mac
Om din Mac går i viloläge men vaknar igen registrerar strömloggen varför. Kör pmset -g log | grep -e " Sleep " -e " Wake " -e " DarkWake " | tail -20 för att se de senaste övergångarna till och från viloläge. Texten efter due to anger orsaken, som locket, ett tangentbord eller en styrplatta, eller en schemalagd uppgift.
Rader med DarkWake är korta väckningar med skärmen avstängd, som macOS använder för bakgrundsuppgifter. Några sådana under natten är normalt.
Frågor som folk ställer
Vad betyder Förhindrar viloläge i Aktivitetskontroll?
Den visar om en app just nu hindrar din Mac från att gå i viloläge. Ja betyder att appen har bett macOS att hålla datorn vaken.
Hur ser jag vad som hindrar min Mac från att gå i viloläge?
Titta i kolumnen Förhindrar viloläge på fliken Energi i Aktivitetskontroll, eller kör pmset -g assertions i Terminal för att se varje process som håller datorn vaken.
Kan jag hålla min Mac vaken med avsikt?
Ja. Det inbyggda kommandot caffeinate håller datorn vaken medan det körs. Tryck på kontroll-C för att stoppa det.
Varför visas coreaudiod som att den förhindrar viloläge?
coreaudiod hanterar ljudet för alla appar, så den håller en spärr mot viloläge medan en app spelar upp eller spelar in ljud. Raden Created for PID i pmset -g assertions talar om vilken app det är.
Är det dåligt att powerd förhindrar viloläge?
Nej. powerd är processen för strömhantering i macOS, och dess spärr som heter Prevent sleep while display is on är normal medan du använder datorn.
Kan en Terminal-session hålla min Mac vaken?
Ja. När inställningen ttyskeepawake är på går macOS inte i viloläge vid inaktivitet medan en terminalsession, som en fjärrinloggning, är aktiv. En session räknas som inaktiv när den har varit overksam längre än vilotimern. Ett kommando som körs med caffeinate håller också datorn vaken tills det är klart.
Relaterat
Steg för steg: Varför går min Mac inte i viloläge.
Letar du efter något bättre än Aktivitetskontroll? Läs om de bästa alternativen till Aktivitetskontroll för Mac, eller bläddra bland alla begrepp i ordlistan.