ext3 fsck समय बनाम विभाजन आकार


9

मैं एक बड़े पैमाने पर भंडारण खेत के लिए सेटअप कर रहा हूं, और महीने-लंबे फॉक्स की आवश्यकता से बचने के लिए, मेरी योजना भंडारण को कई छोटे फाइल सिस्टम में विभाजित करने की है (यह ठीक है, क्योंकि मेरे पास एक अच्छी तरह से बकेटेड फ़ाइल ट्री है , तो मैं आसानी से हो सकता है अलग फ़ाइल सिस्टम पर रखा 1/, 2/, 3/, 4/, आदि)।

मेरी मुश्किल यह है कि फाइलसिस्टम के लिए "उचित" आकार का कोई भी पता लगाने में, fsck समय को "उचित" रखने के लिए। जब तक मैं पूरी तरह से अवगत हूं कि किसी दिए गए आकार के लिए पूर्ण समय काफी हद तक हार्डवेयर पर निर्भर करेगा, मुझे अलग-अलग फाइलसिस्टम आकारों के साथ ext3 fsck समय के लिए वक्र के आकार का कोई भी विवरण नहीं मिल सकता है, और अन्य चर क्या हैं ( एक एकल निर्देशिका में फ़ाइलों से भरा एक फाइलसिस्टम एक पेड़ में हजारों निर्देशिकाओं में से प्रत्येक में 10 फाइलों के साथ एक से अधिक समय लेता है; बड़ी फाइलें बनाम छोटी फाइलें; पूर्ण फाइलसिस्टम बनाम खाली फाइल सिस्टम; और इसी तरह)।

क्या किसी के पास इस बारे में अच्छी तरह से शोध किए गए नंबरों के संदर्भ हैं? असफल होना, इन मुद्दों के बारे में किसी भी उपाख्यान को अपने स्वयं के प्रयोग को निर्देशित करने के लिए कम से कम मदद करनी चाहिए, यह आवश्यक होना चाहिए।

संपादित करें : स्पष्ट करने के लिए: फाइल सिस्टम की परवाह किए बिना, यदि मेटाडेटा के साथ कुछ गलत होता है, तो इसे जांचना होगा। चाहे समय-या माउंट-आधारित री-फ़ॉक्स सक्षम हैं या आवश्यक समस्या नहीं है, और केवल यही कारण है कि मैं विशेष रूप से ext3 के बारे में संख्याओं के लिए पूछ रहा हूं क्योंकि यह सबसे अधिक संभावना है कि फ़ाइल सिस्टम को चुना जाए। यदि आप एक ऐसे फाइल सिस्टम के बारे में जानते हैं, जिसमें विशेष रूप से तेज़ fsck प्रक्रिया है, तो मैं सुझाव के लिए खुला हूँ, लेकिन इसके लिए एक मजबूत विकल्प होने की आवश्यकता है (दावा है कि "filesystem X को कभी भी fscking की आवश्यकता नहीं है!" लंबाई में हंसी और व्युत्पन्न होगा) । मुझे बैकअप की आवश्यकता के बारे में भी पता है, और fsck की इच्छा बैकअप के लिए एक विकल्प नहीं है, हालाँकि बस फाइल सिस्टम को छोड़ना और बैकअप से पुनर्स्थापित करना जब यह glitches है, तो इसे fscking के बजाय, वास्तव में ऐसा लगता है,

जवाबों:


6

माथुर एट अल के एक पेपर के अनुसार (पी। 29), e2fsck समय एक निश्चित बिंदु के बाद एक फाइल सिस्टम पर इनोड की मात्रा के साथ रैखिक रूप से बढ़ता है। यदि ग्राफ़ को कुछ भी करना है, तो आप 10 मिलियन इनोड के फाइल सिस्टम के साथ अधिक प्रभावी हैं।

Ext4 पर स्विच करने से मदद मिलेगी - इस शर्त के तहत कि आपका फाइल सिस्टम ब्रिम पर लोड नहीं है, जहाँ प्रदर्शन लाभ (अप्रयुक्त चिह्नित चिन्हों की जाँच नहीं करने के कारण) का कोई प्रभाव नहीं पड़ता है।


उस संदर्भ के लिए धन्यवाद, मेरे लिए कुछ चीजों की पुष्टि करने में मदद की। मैंने अपने स्वयं के बेंचमार्किंग का भी प्रदर्शन किया, जिसने उस कागज में दिखाई गई रैखिक वृद्धि को बोर कर दिया।
Womble

2

मुझे लगता है कि आपको अपनी बेंचमार्किंग करनी होगी। Google पर एक त्वरित खोज ने कुछ भी प्रकट नहीं किया, सिवाय इसके कि ext4 fscks ext3 की तुलना में बहुत तेज़ है।

इसलिए, आपके द्वारा उपयोग किए जा रहे डिस्क आकार तक कुछ ext3 विभाजन, 100GB, 200GB इत्यादि बनाएं। फिर उन्हें डेटा से भरें। यदि आप उन डेटा का उपयोग कर सकते हैं जो आपके उत्पादन डेटा से मिलता-जुलता है, (फाइल प्रति निर्देशिका, फ़ाइल आकार वितरण, आदि) तो यह सबसे अच्छा होगा। ध्यान दें कि बस किसी अन्य पार्टीशन ओड बैकअप डिवाइस से फाइल कॉपी करने से वे डिस्क पर पूरी तरह से बिछे हुए और डीफ़्रैग्मेन्ट हो जाएंगे और इसलिए आपके परीक्षणों में बहुत सारे डिस्क हेड की कमी होगी जो कई बार लिखने / संशोधित / हटाने से आएंगे।

आपको समानांतर fscks के लिए कुछ विचार देने की भी आवश्यकता होगी। / Etc / fstab में फ़ील्ड के अंतिम जोड़े देखें। उसी भौतिक डिस्क पर विभाजन अनुक्रम में किया जाना चाहिए; एक ही नियंत्रक पर कई डिस्क समानांतर में किए जा सकते हैं, लेकिन ध्यान रखें कि नियंत्रक को अधिभार न दें और उन्हें धीमा करें।


0

http://lmgtfy.com/?q=fsck+benchmark

ऐसा लगता है कि ext4 फाइलसिस्टम पर fsck, ext3 की तुलना में काफी तेज है, साथ ही ext4 fsck की कुछ रिपोर्ट 10 या उससे भी अधिक बार ext3 की तुलना में तेज है।

उस खोज के दो काफी रोचक लेख हैं:

http://thunk.org/tytso/blog/2008/08/08/fast-ext4-fsck-times/ औरhttp://thunk.org/tytso/blog/2009/02/26/fast-ext4-fsck-times-revisited/


-1

क्या कोई कारण है कि जब आप रिबूट करते हैं तो आप उस फाइल सिस्टम का उपयोग नहीं कर सकते हैं जो समय या माउंट-काउंट आधारित फॉक्स पर बल नहीं देता है?

(समय-आधारित fscks वास्तव में मुझे बग करता है - लंबे समय तक सर्वर के लिए यह बहुत गारंटी देता है कि जब भी आप कर्नेल को अपग्रेड करते हैं, तो आपको एक पूर्ण fsck करना होगा)।

वैसे भी, XFS जर्नलिंग फाइलसिस्टम में से एक है जो एक fsck को बाध्य नहीं करता है। देखने लायक।


एक अन्य विकल्प नेक्सेंटा (ओपनओलेरिस कर्नेल, डेबियन यूजरलैंड) का उपयोग करना है, जो आपको ZFS देगा। <a href=" nexenta.org/"> http://www.nexenta.org/</A >
कैस

3
जब कोई फ़ाइल सिस्टम दूषित हो जाता है, तो इसकी परवाह किए बिना (एक्सटीएन, एक्सएफएस, जेडएफएस, जो भी हो), या क्या आपको समय / माउंट काउंट आधारित है, इसे एक फस्क की जरूरत है। मैं यह सुनिश्चित करना चाहता हूं कि एक भी दूषित फाइलसिस्टम fsck में अधिक समय न ले।
Womble

1
हां, यदि कोई भ्रष्ट हो गया है, तो निश्चित रूप से एक fsck को fsck की आवश्यकता होती है। XFS की तरह एफएस का उपयोग करने वालों को समाप्त नहीं किया जाएगा, न ही आपको कोशिश करनी चाहिए या यहां तक ​​कि चाहिए। मैंने ऐसा कुछ नहीं कहा, जिसकी अन्यथा यथोचित व्याख्या की जा सके। मेरा कहना यह था कि एक fsck को केवल इसलिए मजबूर करना क्योंकि यह पिछले कई दिनों से X या Y कई एमटीएस है क्योंकि अंतिम fsck अनावश्यक और कष्टप्रद है और संभवतः "कैरियर-लिमिटिंग" भी है, खासकर यदि आपके उपयोगकर्ता या आपकी कंपनी सर्वर आने का इंतजार कर रहे हैं वापस। आप उन अनावश्यक फॉक्स को समाप्त कर सकते हैं , और ऐसा करना एक अच्छी बात है।
कैस

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