क्या मैं अपने मैकबुक को सभी बाहरी ड्राइव को अनमाउंट करने के लिए कॉन्फ़िगर कर सकता हूं जब मैं ढक्कन को बंद करता हूं?


10

मेरे पास एक नया 13 "मैकबुक प्रो रनिंग मेवरिक्स है। यह कंप्यूटर एक बाहरी यूएसबी ड्राइव से जुड़ा हुआ है, जिसका उपयोग मैं अपने टाइम मशीन बैकअप के लिए करता हूं और बाहरी स्टोरेज टाइम मशीन बैकअप के लिए प्रति दिन कुछ समय लगता है और ड्राइव ज्यादातर के लिए निष्क्रिय है दिन।

जब मैं मीटिंग के लिए सर्वर रूम में जा रहा हूं या दिन के अंत में घर जा रहा हूं, तो मैं निम्नलिखित करना चाहूंगा:

  1. जल्दी से मेरी मैकबुक पर ढक्कन बंद करो।
  2. मैक स्वचालित रूप से जितनी जल्दी हो सके सभी बाहरी ड्राइव को अनमाउंट करें, और यदि आवश्यक हो तो जबरन। मैं लाइट बंद करने के लिए कुछ सेकंड इंतजार करने को तैयार हूं।

जैसे ही मैं अपने मैक पर ढक्कन को बंद करता हूं, सभी बाहरी ड्राइवों को स्वचालित रूप से कंप्यूटर को हटाने का एक तरीका है?

वर्तमान में अगर मैं बाहरी ड्राइव को अनमाउंट करना भूल जाता हूं, तो मेरा मैक मुझे बाद में त्रुटि के साथ पीछा करता है "डिस्क को ठीक से बाहर नहीं निकाला गया था। यदि संभव हो, तो डिस्क को अनप्लग करने या इसे बंद करने से पहले हमेशा एक डिस्क को बाहर निकालें।"

मुझे पता है कि डिस्क इंटरफ़ेस को हटाने से पहले डिस्क को हमेशा साफ करना सबसे अच्छा अभ्यास है, लेकिन मैं एक स्वचालित समाधान की तलाश कर रहा हूं। मैं बहुत चिंतित नहीं हूं अगर एक टाइम मशीन बैकअप छवि बाधित या दूषित हो जाती है, जैसा कि अगले बाद के बैकअप में से एक काम करेगा और मुझे बैकअप से पुनर्स्थापित करने की आवश्यकता बहुत कम है। चूंकि फाइलसिस्टम एक जर्नलिंग फाइलसिस्टम है, इसलिए जर्नल पारदर्शी रूप से कई अन्य फाइलसिस्टम भ्रष्टाचार त्रुटियों की देखभाल करता है।


चूंकि आपके खाते से लॉगिंग सभी ड्राइव को अनमाउंट करता है, तो क्या केवल लॉग आउट करने के लिए एक महत्वपूर्ण नकारात्मक पहलू है? इसके अलावा, मेरा मानना ​​है कि ओएस सभी फाइलसिस्टम IO लिखता है, इसलिए नींद के दौरान इजेक्शन के साथ एक वास्तविक समस्या की संभावना मुझे काफी कम लगती है - जर्नलेड फाइलसिस्टम के लिए दोगुना।
bmike

जवाबों:


8

नींद पर स्क्रिप्ट चलाने वाले कई ऐप हैं:

  • स्लीपवॉकर - सरल अभी तक प्रभावी।
  • परिदृश्य - वेकेशन के बाद अन्य समय पर भी स्क्रिप्ट चला सकते हैं।
  • ControlPlane - अधिक अनुकूलन योग्य, आपको कई अलग-अलग घटनाओं के बाद स्क्रिप्ट चलाने देता है।

निम्नलिखित के रूप में एक बैश स्क्रिप्ट सभी निर्दिष्ट डिस्क को अनमाउंट करेगी:

VOLUMES="/Volumes/drive1 /Volumes/drive2 /Volumes/drive3"
for volume in $VOLUMES ; do [ -d $volume ] && umount -f $volume done

इसके अलावा सभी संस्करणों को अनमाउंट करने के लिए /:

umount -A

या अधिक सफाई से…

osascript -e 'tell application "Finder" to eject (every disk whose ejectable is true)'

6

एक अन्य विकल्प जेटसन (ऐप स्टोर के माध्यम से उपलब्ध) है - जो कि मैं अभी कुछ महीनों से उपयोग कर रहा हूं और इसमें कोई समस्या नहीं है। इसने हाल ही में नींद से जागने के बाद भी स्वचालित रूप से जुड़े डिस्क को हटाने का विकल्प प्राप्त किया।

नया v1.3.0 (केवल प्रत्यक्ष डाउनलोड - मुझे लगता है कि यह ऐप स्टोर के रास्ते में है) की लागत अधिक है और वे बताते हैं कि यह उनके FAQ में क्यों है।

अगर मैं इसे सही ढंग से पढ़ता हूं, तो कोई दो डॉलर के लिए ऐप स्टोर संस्करण खरीद सकता है और फिर मुफ्त में डायरेक्ट-डाउनलोड संस्करण में अपग्रेड कर सकता है, लेकिन मैंने इसकी पुष्टि नहीं की है या इसकी कोशिश नहीं की है।

बिल्कुल भी महंगा नहीं है, लेकिन नींद की तरह मुक्त विकल्प नहीं लगता है।


4

मैं @ grgarside के उत्तर पर विस्तार से बताऊंगा।

मैं SleepWatcher का उपयोग कर रहा हूं

  1. बंदरगाहों से स्थापित करें:

    sudo port install sleepwatcher
    
  2. पर /opt/local/share/doc/sleepwatcher/ReadMe.rtfऔर के माध्यम से मैनुअल पढ़ें man sleepwatcher। मैकवर्ल्ड के इस पुराने मैकिंट को पढ़ें: स्लीपवाचर सिस्टम के साथ एक अनिद्रा मैक का इलाज करें । के अनुसार Machint मैं बस करने के लिए कोड जोड़ सकते हैं ~/.sleepऔर ~/.wakeup, या वैश्विक फ़ाइलों के लिए /etc/rc.sleepऔर /etc/rc.wakeup

  3. निम्नलिखित कोड रखें ~/.sleep:

    osascript -e 'tell application "Finder" to eject (every disk whose ejectable is true)'
    
  4. स्लीपवॉच सक्रिय करें। बदलें <key>Disabled</key><true/>करने के लिए <key>Disabled</key><false/>

    sudo vim /Library/LaunchDaemons/org.macports.sleepwatcher.plist
    sudo launchctl load /Library/LaunchDaemons/org.macports.sleepwatcher.plist
    sudo launchctl list | grep sleepwatcher
    
  5. सत्यापित करें:

    ps aux |grep [s]leepwatcher
    root              421   0.0  0.0  2459568   1012   ??  Ss    2:45PM   0:00.00 /opt/local/bin/daemondo --label=sleepwatcher --start-cmd /opt/local/sbin/sleepwatcher --verbose --sleep /opt/local/etc/rc.sleep --wakeup /opt/local/etc/rc.wakeup ; --pid=exec
    root              422   0.0  0.0  2460656   1888   ??  S     2:45PM   0:00.17 /opt/local/sbin/sleepwatcher --verbose --sleep /opt/local/etc/rc.sleep --wakeup /opt/local/etc/rc.wakeup
    
  6. किया हुआ!


मैं इस उत्तर पर कुछ समीक्षा का उपयोग यह सुनिश्चित करने के लिए कर सकता हूं कि मैं उस .plistचीज को सही ढंग से सक्रिय कर रहा हूं ।
स्टीफन लासिवस्की

चरण-दर-चरण इसका अनुसरण किया, लेकिन यह मेरे लिए काम नहीं करता है। नींद के बाद मैं अपने बाहरी हार्ड-ड्राइव को अनप्लग कर देता हूं, मेरा मैकबुक 5,3 जाग जाता है और जब मैं ढक्कन खोलता हूं तो मुझे बिना इजाजत डिस्क त्रुटि मिलती है।
सारू लिंडस्टोक

यह मेरे लिए काम करता है, लेकिन कभी-कभी ही। यकीन नहीं है कि क्यों।
स्टीफन लासिवस्की

1
मैं अभी भी ML पर हूँ, इसलिए यह Mavericks विशिष्ट नहीं है, और मशीन के सक्रिय होने पर मुझे त्रुटियाँ नहीं मिलती हैं। मैंने देखा कि सोते समय कभी-कभी स्लीप स्क्रिप्ट निष्पादित हो जाती है, जैसे कि ऐसा करने के लिए पर्याप्त समय नहीं मिलता है जब यह सोने जा रहा होता है।
सरयू लिंडस्टोक 19

1
यहाँ भी एक अच्छा गाइड: damacy.net/post/9377132648/…
Dan
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.