Ubrzajte proces isključivanja u OS X

Kada isključite svoj Mac, OS X će pokušati čisto zatvoriti programe i pozadinske usluge; međutim, u nekim okolnostima to može potrajati iznimno dugo, tako da sustav čeka nekoliko minuta prije nego se konačno ugasi. Ponekad je to sustav koji čeka interakciju kao što je spremanje dokumenta, ali u drugim slučajevima to je zbog toga što su pozadinske usluge prestale reagirati i sustav čeka unaprijed određenu količinu vremena prije nego što ih prisili na prekid.

Općenito, OS X treba samo nekoliko sekundi da se ugasi, tako da ako vaš sustav dosljedno uzima dugo vremena, to ukazuje na problem koji treba riješiti. Ponekad to može biti problematični periferni uređaj ili dva, ili može biti iz neke neispravne konfiguracije vašeg sustava. U tim slučajevima trebali biste pokušati neke osnovne postupke rješavanja problema kako biste otkrili i riješili problem.

Međutim, ako se redovito susrećete s dugotrajnim isključenjima, ali u više slučajnim intervalima, oni mogu biti situacijski i mogu biti uzrokovani sustavom koji na nekim pozadinskim procesima čeka da izađe.

Prema zadanim postavkama, sustav će čekati da se pozadinski procesi završe sami, ali ako ne, onda će takve procese poslati signal ubijanja nakon 20 sekundi, a ako ti procesi istječu u različitim intervalima, to može produžiti gašenje do broj minuta.

Stoga, za neke pozadinske procese koji imaju tendenciju da spuste slušalicu više od drugih, jednostavno mijenjanje tog zadanog vremena od 20 sekundi na nižu vrijednost uzrokovat će izlazak sustava iz tih procesa ranije. Iako prisiljavanje procesa na prestanak rada nije najbolja praksa, sustav se već priprema za to tijekom zatvaranja. Opet, OS X dopušta samo proces 20-sekundnom prozoru za izlaz u, i tada će sustav nasilno ubiti proces.

Pozadinske usluge koje se čine kao uobičajeni krivci u takvim vremenskim ograničenjima su one koje obrađuju interprocesnu komunikaciju, upravljanje provjerom autentičnosti i aktivnost diskovnih i mrežnih resursa. U OS X to uključuje sljedeće:

  • AppleEvents - To omogućuje procesima da komuniciraju sa i naredbe jedni druge (i je osnova za AppleScript). Može se oduzeti prekidima u međuprocesnoj komunikaciji (na primjer, ako je jedan proces prisiljen prestati s upravljanjem događajima).
  • securityd - Ovime se upravlja pristupom ključevima i drugim sigurnosnim ovlaštenjima, a može i čekati prekid rada ako korisnik čeka interakciju s nekim zahtjevom za provjeru autentičnosti.
  • mDNSResponder - Upravlja višestrukim DNS akcijama, uključujući automatsko otkrivanje mrežnih poslužitelja i usluga. To može potrajati od problema s konfiguracijom lokalne mreže.
  • diskarbitrationd - Disk arbitrator nadzire montažu i pristupačnost lokalnih datotečnih sustava, te može izostati s greške u pogonima koji se koriste, ili ako pogon prelazi u offline ili u stanje mirovanja i traje neko vrijeme da se probudi.
  • Apple ID autentifikacija - upravlja provjerom vašeg Apple ID-a za razne usluge; svibanj vrijeme iz lošeg pristupa mreži ili nedostatak odgovora od Appleovih poslužitelja.

Upravljanje vremenskim ograničenjima tih procesa obavlja se pokretanjem procesa pokretanja sustava, koji drži 20-sekundno vremensko ograničenje za procese. Upućivanjem lansera na skraćivanje tog razdoblja čak i za polovicu, možete značajno ubrzati zatvaranja koja zaostaju zbog tih procesa.

Da biste promijenili vremenska ograničenja, morat ćete izmijeniti datoteke demona za pokretanje koje sustav koristi za te usluge, stoga prvo provjerite imate li sigurnosnu kopiju sustava, a zatim pokrenite sljedeće naredbe koje možete kopirati i zalijepiti (svaka naredba je dvije linije) u uslužni program OS X Terminal (u mapi Applications> Utilities):

sudo defaults napisati / Sustav / Knjižnica / PokrenutiDemoni / c \ t

om.apple.coreservices.appleevents ExitTimeOut -int 5

sudo defaults napisati / Sustav / Knjižnica / PokrenutiDemoni / c \ t

om.apple.securityd ExitTimeOut -int 5

sudo defaults napisati / Sustav / Knjižnica / PokrenutiDemoni / c \ t

om.apple.mDNSResponder ExitTimeOut -int 5

sudo defaults napisati / Sustav / Knjižnica / PokrenutiDemoni / c \ t

om.apple.diskarbitrationd ExitTimeOut -int 5

sudo defaults pisati / Sustav / Knjižnica / LaunchAgents / com. \ t

apple.coreservices.appleid.authentication ExitTimeOut -int 5

U gore navedenim naredbama vrijednost timeout postavljena je na "5", što znači da će sustav čekati 5 sekundi prije nego što ubije proces tijekom gašenja, ali to možete promijeniti na bilo koji cijeli broj veći od nule (vrijednost nula onemogućuje timeout, tako da će čekati neograničeno). Imajte na umu da su to "sudo" naredbe, što znači da kada pokrenete prvu morate dati svoju administratorsku lozinku (koja se neće pojaviti na terminalu kada se to od vas zatraži), ali tada neće trebati dati lozinku za naredne naredbe.,

Zalijepite oba retka svake naredbe gore navedene u Terminal, mijenjajući vrijednost 5 na drugi broj, ako želite (možete pokrenuti naredbe u bilo kojem trenutku s različitim vrijednostima). Kada završite, ponovo pokrenite računalo, a zatim provjerite poboljšava li to vrijeme isključivanja.

Da biste poništili ove radnje, možete ponovno pokrenuti naredbe, ali s vrijednošću od 20, ili možete pokrenuti sljedeće naredbe za uklanjanje unosa postavki "ExitTimeOut", koji po defaultu nije uključen u ove demone pokretanja i skripte agenta:

sudo defaults izbrisati / System / Library / LaunchDeemons / c \ t

om.apple.coreservices.appleevents ExitTimeOut

sudo defaults izbrisati / System / Library / LaunchDeemons / c \ t

om.apple.securityd ExitTimeOut

sudo defaults izbrisati / System / Library / LaunchDeemons / c \ t

om.apple.mDNSResponder ExitTimeOut

sudo defaults izbrisati / System / Library / LaunchDeemons / c \ t

om.apple.diskarbitrationd ExitTimeOut

sudo defaults izbrisati / System / Library / LaunchAgents / com

.apple.coreservices.appleid.authentication ExitTimeOut


 

Ostavite Komentar