भविष्य की हार्ड ड्राइव को अनुक्रमण से स्पॉटलाइट रोकें


6

मैवरिक्स का उपयोग करते हुए, मैं अपने प्राथमिक आंतरिक ड्राइव को छोड़कर सभी स्पॉटलाइट्स को स्पॉटलाइट को कैसे रोक सकता हूं? अपने काम में, मैं हर हफ्ते दर्जनों नए ड्राइव कनेक्ट करता हूं, और मैं नहीं चाहता कि .Spotlight-V100 फ़ोल्डर उन पर बनाया जाए।

मुझे पता है कि मैं प्रत्येक ड्राइव को स्पॉटलाइट गोपनीयता सूची में जोड़ सकता हूं, लेकिन यह केवल ड्राइव को कनेक्ट करने के बाद किया जा सकता है, और फिर .Splight-V100 फ़ोल्डर पहले ही बनाया जा चुका है।

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


USB पोर्ट को अक्षम करने जैसा कुछ?
रूस

जवाबों:


3

नामक एक फाइल

.metadata_never_index

किसी भी मात्रा के मूल में जगह अनुक्रमण व्यवहार को दबा देगा।

आप इस फाइल को अपने आप जनरेट कर सकते हैं

निम्न फ़ाइलों को रूट के रूप में बनाने की आवश्यकता है

निम्नलिखित शेल स्क्रिप्ट बनाएगी अपेक्षित फ़ाइल सक्रिय होनी चाहिए (30 दिन से कम) स्पॉटलाइट प्रविष्टि नहीं मिली।

/var/root/unindex.sh

इसे बनाने के लिए

sudo vi /var/root/unindex.sh

या अपने पसंदीदा पाठ संपादक का उपयोग करें

सामग्री होनी चाहिए

#!/bin/bash
# suppress spotlight indexing of new volumes
# pc 26-june-2014 v0.1
# v 0.2 27-june-2014 add mdutil

# get the last volume mounted

vol=$(df)
vol=${vol##*%}
echo $vol




# is this a volume that has been indexed in the past month

count=$(find ${vol}/.Spotlight-V100 -mtime -30 | wc -l )
[[ $count -gt 1 ]] && {

# then it remains so

logger -t unindex spotlight activity detected in last 30 days
exit 0
}

# else create index supression file
logger -t unindex creating ${vol}/.metadata_never_index
touch ${vol}/.metadata_never_index
# and stop spotlight indexing the drive
logger -t unindex mdutil -i off /Volumes/${vol}
mdutil -i off /Volumes/${vol}

सुनिश्चित करें कि इसे निष्पादित किया जा सकता है ...

sudo chmod a+x /var/root/unindex.sh

अब लॉन्च के लिए एक प्रविष्टि जोड़ें, फ़ाइल बनाएं

/Library/LaunchDaemons/org.misctools.unindex.plist

इसे बनाने के लिए

sudo vi /Library/LaunchDaemons/org.misctools.unindex.plist

सामग्री के साथ

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>org.misctools.unindex</string>
    <key>ProgramArguments</key>
    <array>
        <string>/var/root/unindex.sh</string>
    </array>
    <key>RunAtLoad</key>
    <false/>
    <key>StartOnMount</key>
    <true/>
</dict>
</plist>

अब नौकरी को सक्रिय करें

sudo launchctl load /Library/LaunchDaemons/org.misctools.unindex.plist

हर बार जब आप एक डिस्क को माउंट करते हैं, तो यह लॉन्च हो जाएगा, 'unindex' द्वारा फिल्माए गए संदेशों के लिए कंसोल में देखें, क्योंकि यह आपकी मशीन से होने वाली क्रियाएं हैं

 26/06/2014 09:02:35.824 unindex[1362]: creating /Volumes/hfs/.metadata_never_index

बहुत अच्छी तरह से जवाब, धन्यवाद। मैं इसे कल एक कोशिश दूँगा। मुझे StartOnMount सुविधा के बारे में पता नहीं था। क्या आप सुनिश्चित हैं कि स्पॉटलाइट अनुक्रमण शुरू करने से पहले यह स्क्रिप्ट पर्याप्त तेज़ी से चलेगी?
इलियट

इसने एक ड्राइव पर काम किया, लेकिन दूसरे पर नहीं। सिसोग्लॉग, अनइंडेक्स शुरू होने से ठीक पहले काम करने वाली स्पॉटलाइट दिखाता है। Jun 26 19:33:00 macpro mds[12724]: (Normal) Volume: volume:0x7fa145816800 ********** Bootstrapped Creating a default store:3 SpotLoc:/Volumes/B025_0626AI/.Spotlight-V100 SpotVerLoc:/Volumes/B025_0626AI/.Spotlight-V100/Store-V1 occlude:0 /Volumes/B025_0626AI Jun 26 19:33:00 macpro unindex[13367]: creating /Volumes/B025_0626AI/.metadata_never_index
इलियट

ऐसा लगता है कि यह ड्राइव पर बिना स्पॉटलाइट फोल्डर के
फेल

यह यादृच्छिक प्रतीत होता है। मैंने आज लगभग एक दर्जन ड्राइव की कोशिश की है, जिनमें से कोई भी एक स्पॉटलाइट फ़ोल्डर नहीं है। उनमें से आधे के लिए, आपकी स्क्रिप्ट पहले चलती है, जबकि अन्य आधे पहले स्पॉटलाइट चलाते हैं।
इलियट

1
ठीक है, मैंने mdutil के njboots सुझाव का उपयोग स्पष्ट रूप से स्पॉटलाइट इंडेक्सिंग वॉल्यूम को रोकने के लिए किया है। स्पॉटलाइट और माउंट इवेंट एसिंक्रोनस रूप से चलाए जाते हैं, इसलिए यह यादृच्छिक है जो पहले में मिलता है। संपादन unindex.sh फ़ाइल में है।
धान कैरोल

2

कमांड लाइन टूल mdutil का उपयोग करें ।

उदाहरण के लिए, मान लें कि आप "LEAVE_ME_BE" नाम के HFS + जर्नल से कनेक्ट होते हैं

वॉल्यूम के इंडेक्सिंग को अक्षम करने के लिए निम्न कमांड का उपयोग करें। यदि स्वामित्व सक्षम है, sudoतो आवश्यक हो सकता है:

sudo mdutil -i off /Volumes/LEAVE_ME_BE

सभी जुड़े संस्करणों की अनुक्रमण स्थिति की जाँच करें:

mdutil -s /Volumes/*

आगे के विकल्पों के लिए ऊपर दिए गए मैन पेज को पढ़ें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.