OS X'te kapatma işlemini hızlandırın

Mac'inizi kapattığınızda, OS X programlardan ve arka plan hizmetlerinden temiz bir şekilde çıkmaya çalışır; ancak, bazı koşullar altında bu durum oldukça uzun zaman alabilir, böylece sistem sonunda kapanmadan önce dakikalarca bekler. Bazen bu, bir belgeyi kaydetme gibi bir etkileşimi bekleyen sistemdir, ancak diğer zamanlarda arka plan servislerinin yanıt vermeyi bırakması ve sistemin bırakmaya zorlamadan önce önceden belirlenmiş bir süre beklemesidir.

Genel olarak OS X'in kapatılması sadece birkaç saniye sürmelidir, bu nedenle sisteminiz sürekli olarak uzun sürüyorsa, çözülmesi gereken bir sorun ortaya çıkar. Bazen bu basit bir problemli çevre cihazı olabilir veya iki olabilir veya sisteminizin hatalı bir şekilde yapılandırılmasından kaynaklanabilir. Bu gibi durumlarda, sorunu tanımlayıp düzeltmek için bazı temel sorun giderme prosedürlerini denemelisiniz.

Bununla birlikte, düzenli olarak ancak daha rastgele aralıklarla uzun süreli kapatmalarla karşılaşırsanız, bunlar durumsal olabilir ve bazı arka plan işlemlerinin çıkmasını bekleyen sistemin neden olabilir.

Varsayılan olarak, sistem arka plan işlemlerinin kendi başlarına sona ermesini bekleyecek, ancak o zaman olmasa bile bu tür işlemlere 20 saniye sonra bir ölüm sinyali gönderecek ve bu işlemler farklı aralıklarla zaman aşımına uğrarsa, bu bir kapanmayı uzatabilir. dakika sayısı.

Bu nedenle, diğerlerinden daha fazla takılma eğiliminde olan bazı arka plan işlemleri için, bu varsayılan 20 saniyelik süreyi daha düşük bir değere değiştirmek, sistemin bu işlemlerden daha erken çıkmasına neden olacaktır. İşlemleri sonlandırmak için zorlamak en iyi yöntem olmasa da, sistem kapanma sırasında bunu yapmak için şimdiden vites yükseltiyor. Yine, OS X, işlemin sadece 20 saniyelik bir pencerenin içeri girmesine izin verir ve sistem zorla işlemi öldürür.

Bu tür zaman aşımlarında en çok suçlanan görünen arka plan hizmetleri, süreçler arası iletişimi, kimlik doğrulama yönetimini ve disk ve ağ kaynağı etkinliğini idare eden servislerdir. OS X'te bunlar aşağıdakileri içerir:

  • AppleEvents - Bu, işlemlerin birbirleriyle iletişim kurmasını ve komut vermesini sağlar (ve AppleScript'in temelidir). Süreçler arası iletişimdeki kesintilerden dolayı zaman aşımına uğrayabilir (örneğin, bir olay olaylar yönetilirken çıkmak zorunda kalırsa).
  • securityd - Bu, anahtarlıklara ve diğer güvenlik yetkilerine erişimi yönetir ve bazı kimlik doğrulama istekleri için kullanıcı etkileşimi bekleniyorsa zaman aşımına uğrayabilir.
  • mDNSResponder - Ağ sunucularının ve servislerin otomatik keşfi dahil olmak üzere çok noktaya yayın DNS eylemlerini yönetir. Bu, yerel ağ yapılandırmasıyla ilgili sorunların zaman aşımına uğrayabilir.
  • diskarbitrationd - Disk hakemi, yerel dosya sistemlerinin montajını ve erişilebilirliğini izler ve kullanılan sürücülerdeki bir hatadan veya bir sürücünün çevrimdışı duruma geçmesi veya uyku moduna girmesi ve uyanması biraz zaman alabilir.
  • Apple kimliği doğrulaması - çeşitli hizmetler için Apple Kimliğinizin doğrulamasını yönetir; zayıf ağ erişiminden veya Apple'ın sunucularından gelen yanıtların yetersizliğinden dolayı zaman aşımına uğrayabilir.

Bu işlemlerin zaman aşımlarının yönetimi, işlemler için 20 saniyelik varsayılan zaman aşımını tutan sistem başlatıcısı işleminin başlatılmasıyla yapılır. Başlatıcıya bu süreyi yarı yarıya bile kısaltmasını söyleyerek, bu işlemler nedeniyle gecikmeli olan kapanmaları önemli ölçüde hızlandırabilirsiniz.

Zaman aşımlarını değiştirmek için, sistemin bu servisler için kullandığı başlatma daemon dosyalarını değiştirmeniz gerekecektir, bu nedenle önce sisteminizi yedeklediğinizden emin olun ve ardından kopyalayıp yapıştırabileceğiniz aşağıdaki komutları çalıştırın (her komut iki satır) OS X Terminal yardımcı programına (Uygulamalar> Yardımcı Programlar klasöründe):

sudo varsayılanları yazmak / System / Library / LaunchDaemons / c \

om.apple.coreservices.appleevents ExitTimeOut -int 5

sudo varsayılanları yazmak / System / Library / LaunchDaemons / c \

om.apple.securityd ExitTimeOut -int 5

sudo varsayılanları yazmak / System / Library / LaunchDaemons / c \

om.apple.mDNSResponder ExitTimeOut -int 5

sudo varsayılanları yazmak / System / Library / LaunchDaemons / c \

om.apple.diskarbitrationd ExitTimeOut -int 5

sudo default'lar write / System / Library / LaunchAgents / com. \

apple.coreservices.appleid.authentication ExitTimeOut -int 5

Yukarıda yazıldığı gibi bu komutlarda, zaman aşımı değeri "5" olarak ayarlanmıştır, yani sistem kapatma sırasında bir işlemi öldürmeden önce 5 saniye bekleyecektir, ancak bunu sıfırdan büyük herhangi bir tamsayı değerine değiştirebilirsiniz (sıfır değeri zaman aşımı, bu yüzden süresiz beklerdi). Bunların "sudo" komutları olduğuna dikkat edin, yani ilkini çalıştırdığınızda, yönetici şifrenizi (istendiğinde Terminalde gösterilmeyecek) sağlamanız gerekecek, ancak daha sonra komutlar için şifre vermeniz gerekmeyecektir. .

Yukarıda verilen her komutun her iki satırını da Terminal'e yapıştırın, isterseniz 5'in değerini başka bir numaraya değiştirin (komutları istediğiniz zaman farklı değerlerle tekrar çalıştırabilirsiniz). İşiniz bittiğinde, bilgisayarınızı yeniden başlatın ve bunun kapanma sürenizi iyileştirip iyileştirmediğine bakın.

Bu eylemleri geri almak için, komutları tekrar çalıştırabilir, ancak 20 değeriyle çalıştırabilir veya varsayılan olarak bu çalıştırma arka planında ve aracı komut dosyalarında bulunmayan "ExitTimeOut" ayarları girişini kaldırmak için aşağıdaki komutları çalıştırabilirsiniz:

sudo varsayılanları silmek / System / Library / LaunchDaemons / c \

om.apple.coreservices.appleevents ExitTimeOut

sudo varsayılanları silmek / System / Library / LaunchDaemons / c \

om.apple.securityd ExitTimeOut

sudo varsayılanları silmek / System / Library / LaunchDaemons / c \

om.apple.mDNSResponder ExitTimeOut

sudo varsayılanları silmek / System / Library / LaunchDaemons / c \

om.apple.diskarbitrationd ExitTimeOut

sudo varsayılanları silmek / System / Library / LaunchAgents / com \

.apple.coreservices.appleid.authentication ExitTimeOut


 

Yorumunuzu Bırakın