मैं फ़ाइल सिस्टम मेटाडेटा कैशिंग के लिए अधिकांश RAM का उपयोग करने के लिए सिस्टम सेट करना चाहता हूं, लेकिन कैशिंग और प्रीफ़ेटिंग फ़ाइलों को पढ़ने / लिखने के लिए केवल एक यथोचित छोटी राशि। आदर्श रूप से मैं फ़ाइल सिस्टम को ब्राउज़ करने में सक्षम होना चाहता हूं (जितना कि यह रैम में फिट बैठता है) डिस्क को बिना स्पिन किए बिना जब तक मैं वास्तव में एक फ़ाइल नहीं खोलता।
यहाँ विवरण हैं:
मेरे पास घर का बना फाइल सर्वर है। यह LVM वॉल्यूम में 9TB के आसपास पाँच डिस्क है, लेकिन केवल 4GB RAM है। चूंकि सर्वर ज्यादा कुछ नहीं करता है, इसलिए फाइलों की सेवा करते हैं, ज्यादातर RAM का उपयोग कैशिंग के लिए किया जाता है। ("मुक्त" कैश के लिए इस्तेमाल किए जाने वाले 3.9 जी में से 3.4 जी रिपोर्ट। "
सर्वर मेरे बेडरूम में रहता है, और अगर सभी डिस्क कताई कर रहे हैं तो यह शांत होने पर कष्टप्रद होने के लिए पर्याप्त शोर करता है। (मेरा मतलब शोर नहीं है, बस कताई शोर है। डिस्क विभिन्न प्रकारों और मॉडलों के हैं, और मुझे लगता है कि रोटेशन की गति में मामूली अंतर हस्तक्षेप का कारण है। कोई भी डिस्क अपने आप शोर नहीं है, लेकिन अगर उनमें से कुछ एक साथ घूम रहे हैं। एक उप-हर्ट्ज़ अवधि के साथ एक मामूली शोर।) इसलिए मैंने अधिकांश समय डिस्क को नीचे स्पिन करने के लिए सर्वर को कॉन्फ़िगर किया।
बेशक, अगर मैं अपने फाइल मैनेजर में एक फ़ोल्डर खोलते हैं, तो डिस्क को खाली कर दिया जाता है, डिस्क के जो भी उस फ़ोल्डर में घूमता है, उसमें देरी होती है। बस यह कोई बड़ी बात नहीं है। लेकिन जहां मैं देखता हूं, उसके आधार पर, यह एक पंक्ति में कई बार हो सकता है, अगर LVM अलग-अलग डिस्क पर प्रत्येक सबफ़ोल्डर के लिए मेटाडेटा फैलाने के लिए हुआ।
मुझे संदेह है कि लिनक्स ज्यादातर फ़ाइल सामग्री के साथ अपने कैश को भरता है, और संभवतः पूर्वनिर्मित डेटा। चिकनी प्लेबैक सुनिश्चित करने के लिए कुछ एमबी से परे कैशिंग बहुत उपयोगी नहीं है; अगर मैं सिर्फ एक फिल्म देखता हूं तो शायद मैं इसे जल्द ही फिर कभी नहीं देखूंगा। प्रीफेटिंग, यदि ऐसा होता है, तो कुछ एमबी से अधिक के बाद, मेरे मामले में भी पूरी तरह से बेकार है ।
लेकिन किसी को लगता है कि 4GB को अधिकांश फ़ाइल-सिस्टम मेटाडेटा को कैश करने में सक्षम होना चाहिए, कम से कम उन हिस्सों को जो पहले से ही विज़िट किए गए थे, ताकि मैं डिस्क को स्पिन करने की आवश्यकता के बिना फ़ाइलों को ब्राउज़ कर सकूं अगर यह पता चला कि वे हैं सोया हुआ।
फ़ाइल खोलने पर अभी भी देरी होगी, लेकिन यह ठीक है। तुलना “क्लिक करें; प्रतीक्षा करें ; क्लिक करें; प्रतीक्षा करें ; क्लिक करें; प्रतीक्षा करें ; खेल; घड़ी "क्लिक" के साथ; क्लिक करें; क्लिक करें; खेल; प्रतीक्षा करें ; घड़ी"। पूर्व अविश्वसनीय रूप से निराशाजनक है; उत्तरार्द्ध लगभग अपेक्षित है।
टिप्पणियाँ:
यह बात करनी चाहिए, कर्नेल 3.2 है, ओएस डेबियन है, वॉल्यूम lvm2 है, और एफएस एक्स 4 है।
रात के दौरान स्पिन डाउन का एकमात्र कारण शोर है; सर्वर अन्यथा लगातार चल रहा है। (मैंने इसे कम-शक्ति के रूप में उचित रूप में बनाया है।) दिन के समय के आधार पर स्पिन-डाउन देरी विविध है।
हार्ड डिस्क केवल मीडिया के लिए हैं। ओएस एक अलग (छोटे) फ्लैश ड्राइव पर है। (जिसका अर्थ है कि कोई भी स्पिन-अप विलंब डेटा से आता है, न कि केवल इसलिए कि उसे कुछ
/usr
भी या जो भी चाहिए। मैं उस पर कुछ जीबी अतिरिक्त कर सकता हूं अगर यह मेरी समस्या से किसी तरह मदद करेगा।प्रदर्शन पर एक उचित प्रभाव कोई बड़ी बात नहीं है। वैसे भी डिस्क मेरे नेटवर्क से अधिक तेज़ हैं।