QuickLook ने आपकी ड्राइव को बंधक बना रखा है

आपने कुछ फ़ाइलें देखीं, फ़ोल्डर बंद किया, और अब आपकी ड्राइव eject नहीं हो रही। इसकी वजह शायद QuickLook है। जानिए क्या हो रहा है और इसे कैसे ठीक करें।

(Updated )

आपने अपनी external ड्राइव पर कुछ फ़ाइलें कॉपी कीं। आपने Finder विंडो बंद कर दी। आप eject पर क्लिक करते हैं, और macOS मना कर देता है। आपने पाँच मिनट से ड्राइव को छुआ तक नहीं। आख़िर इसका इस्तेमाल कौन कर रहा है?

Activity Monitor में QuickLookUIService देखिए। पूरी संभावना है कि यही आपका दोषी है।

QuickLook क्या कर रहा है

QuickLook वह सिस्टम है जो macOS में फ़ाइल प्रीव्यू चलाता है। Finder में किसी फ़ाइल पर Space दबाइए और आपको एक प्रीव्यू विंडो मिलती है। column view में फ़ाइलें ब्राउज़ कीजिए और आपको थंबनेल दिखते हैं। कोई save dialog खोलिए और वहाँ फिर से वही प्रीव्यू मौजूद हैं। QuickLook हर जगह है।

जब आप कोई फ़ोल्डर ब्राउज़ करते हैं, तो QuickLook उन फ़ाइलों के लिए प्रीव्यू बनाना शुरू कर देता है जो उसे लगता है कि आप देखना चाहेंगे। यह फ़ाइलें पढ़ता है, थंबनेल निकालता है, और बाद में जल्दी एक्सेस के लिए उन्हें कैश कर लेता है। images, PDFs, videos और documents के लिए इसका मतलब है फ़ाइल खोलना और उसकी सामग्री को प्रोसेस करना।

समस्या यह है कि काम ख़त्म हो जाने के बाद QuickLook फ़ाइलों को छोड़ने में सुस्ती कर सकता है। आप किसी दूसरे फ़ोल्डर में चले गए। आपने Finder विंडो पूरी तरह बंद कर दी। पर QuickLookUIService ने अब भी आपकी external ड्राइव पर file handles खोल रखे हैं।

यह eject को क्यों रोकता है

जब तक किसी प्रोसेस की ड्राइव पर कोई फ़ाइल खुली रहती है, macOS आपको उसे eject नहीं करने देता। यह एक सुरक्षा फ़ीचर है। अगर कुछ सक्रिय रूप से पढ़ या लिख रहा है, तो eject करने से डेटा ख़राब हो सकता है या ऐप्लिकेशन क्रैश हो सकता है।

प्रक्रिया का नाम या खुली फ़ाइलों की सूची यह साबित नहीं करती कि लिखना बंद है।

नतीजा यह कि पाँच मिनट पहले झलक भर देखे गए प्रीव्यू की वजह से आप अपनी ड्राइव eject नहीं कर पाते।

इसे कैसे ठीक करें

काम सहेजें, कॉपी और बैकअप पूरा करें और ऐप्स को सामान्य तरीके से बंद करके फिर इजेक्ट करें।

फ़ोर्स क्विट या फ़ोर्स इजेक्ट से डेटा खो सकता है; Ejecta लिखने की सुरक्षा प्रमाणित नहीं करता।

अगर आप ज़्यादा सटीक होना चाहते हैं, तो पहले पुष्टि कर सकते हैं कि समस्या QuickLook ही है:

sudo lsof /Volumes/YourDriveName | grep -i quicklook

अगर आपको आउटपुट में QuickLookUIService दिखता है, तो यही आपका रोकने वाला है।

आप QuickLook का कैश भी रीसेट कर सकते हैं, जो कभी-कभी ज़िद्दी समस्याओं में मदद करता है:

qlmanage -r cache

यह थंबनेल कैश साफ़ कर देता है और QuickLook सिस्टम को फिर से चालू कर देता है।

videos सबसे बड़े दोषी क्यों हैं

QuickLook video फ़ाइलों को पकड़े रहने में ख़ास तौर पर ज़िद्दी है। जब आप कोई video प्रीव्यू करते हैं, तो QuickLook फ़ाइल खोलता है और इस उम्मीद में खुली रखता है कि आप स्क्रब करना या और देखना चाहेंगे। प्रीव्यू विंडो बंद करने के बाद भी file handle अक्सर बना रहता है।

अगर आपकी external ड्राइव पर video फ़ाइलें हैं और आपने उनमें से किसी का प्रीव्यू किया (जानबूझकर या column view में ब्राउज़ करते हुए अनजाने में), तो इस बात की पूरी संभावना है कि QuickLook eject को रोक रहा है।

यही समस्या बड़ी images और PDFs को भी कुछ हद तक प्रभावित करती है। दरअसल, हर वह फ़ाइल टाइप जिसमें QuickLook को प्रीव्यू बनाने के लिए असली मेहनत करनी पड़ती है।

समस्या से बचाव

QuickLook को आप macOS की बहुत सी कार्यक्षमता खोए बिना सचमुच बंद नहीं कर सकते। पर आप यह ज़रूर घटा सकते हैं कि यह external ड्राइव में कितनी दख़ल देता है।

external ड्राइव ब्राउज़ करते समय list या icon view पर जाएँ। column view चुनी हुई फ़ाइल के लिए QuickLook को अपने आप चालू कर देता है। list और icon view तब तक प्रीव्यू नहीं बनाते जब तक आप साफ़ तौर पर न माँगें।

external ड्राइव पर फ़ाइलें प्रीव्यू करने के लिए Space दबाने से बचें। अगर आपको कोई फ़ाइल जाँचनी है, तो QuickLook इस्तेमाल करने के बजाय उसे सीधे खोलें।

काम सहेजें, कॉपी और बैकअप पूरा करें और ऐप्स को सामान्य तरीके से बंद करके फिर इजेक्ट करें।

eject करने से पहले सभी Finder विंडो बंद करें। भले ही Finder विंडो अब आपकी external ड्राइव न दिखा रही हो, उसमें पहले के ब्राउज़िंग से बचे हुए QuickLook references हो सकते हैं।

इनमें से कोई भी बढ़िया समाधान नहीं है। ये एक ऐसी सिस्टम प्रोसेस के लिए जुगाड़ भर हैं जो अपने पीछे ठीक से सफ़ाई नहीं करती।

असली हल

QuickLook के eject रोकने में सबसे खीज दिलाने वाली बात यह है कि आपको पता ही नहीं चलता कि ऐसा हो रहा है। macOS आपको बताता है कि “कुछ” ड्राइव का इस्तेमाल कर रहा है। आप जो कुछ सोच सकते हैं, सब बंद कर देते हैं। फिर भी ड्राइव eject नहीं होती।

आपसे उम्मीद की जाती है कि या तो आप अंदाज़ा लगाएँ कि कौन सी अदृश्य बैकग्राउंड प्रोसेस दोषी है, या जाँच के लिए Terminal कमांड चलाना शुरू करें। ड्राइव अनप्लग करने जैसे रोज़मर्रा के काम के लिए यह बेतुका है।

Ejecta: Ejecta बिना समय-सीमित ट्रायल के मुफ़्त ड्राइव निदान देता है। भुगतान वाला लाइसेंस समर्थित ऐप्स के क्विट व इजेक्ट, सभी ड्राइव इजेक्ट करने और Time Machine नियंत्रण को खोलता है। सिस्टम प्रक्रियाओं में प्रतीक्षा, अनुमति या Mac बंद करना ज़रूरी हो सकता है। पहले काम सहेजें और ट्रांसफ़र पूरे करें।

QuickLook एक काम का फ़ीचर है जो कभी-कभार बेवजह की दिक़्क़तें खड़ी कर देता है। file handles छोड़ने में उसकी नाकामी से निपटने के लिए आपको Unix जासूस बनने की ज़रूरत नहीं होनी चाहिए।

Ejecta बिना समय-सीमित ट्रायल के मुफ़्त ड्राइव निदान देता है। भुगतान वाला लाइसेंस समर्थित ऐप्स के क्विट व इजेक्ट, सभी ड्राइव इजेक्ट करने और Time Machine नियंत्रण को खोलता है। सिस्टम प्रक्रियाओं में प्रतीक्षा, अनुमति या Mac बंद करना ज़रूरी हो सकता है। पहले काम सहेजें और ट्रांसफ़र पूरे करें।

अभी खरीदें - $29 $9.99