के लिए अच्छा फाइलसिस्टम / tmp?


31

मैं अपने विभाजन पर / tmp होने के बारे में सोच रहा हूँ ... इसे प्रारूपित करने के लिए एक अच्छा फाइल सिस्टम क्या होगा?

मेरे द्वारा पूछे जाने का कारण यह है क्योंकि डेटा / tmp में संग्रहीत किया जा रहा है, वह स्थायी नहीं है, इसलिए मुझे जर्नलिंग, फैंसी इंडेक्स या किसी भी चीज़ की आवश्यकता नहीं है।

जवाबों:


27

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


2
मेरे पास 2GB RAM है, इसलिए यह शायद एक विकल्प नहीं है।
नाथन उस्मान

2
वास्तव में यह भरपूर रैम होना चाहिए। / tmp आमतौर पर आपके सिस्टम के सामान्य उपयोग (जो कुछ भी है) के साथ ज्यादा इस्तेमाल नहीं किया जाता है
जोशी

3
tmpfs स्वैग का उपयोग करेगा, यदि उसे इसकी आवश्यकता है - तो आपका स्वैप स्थान / tmp के रूप में डबल ड्यूटी कर सकता है, अतिरिक्त स्थान आवंटित करने की आवश्यकता नहीं है।
gobiles

@ जॉर्ज आप अपने / tmp विभाजन को बनाने का कितना बड़ा इरादा रखेंगे?
मार्को Ceppi

1
@George जो कि /tmpमेरे डेस्कटॉप पर सबसे बड़ा विभाजन आकार है - मेरे डेस्कटॉप पर मैं सबसे अच्छा उपयोग करता है 12MB, हालांकि मेरे सर्वर पर /tmpबड़े पागल हो सकते हैं जब ग्राहक MySQL में बेवकूफ चीजें करते हैं और भाषाएं जो /tmpबहुत बड़ी हो जाती हैं। Tmpfs के साथ शानदार बात यह है कि यह सिर्फ 64 एमबी की रैम को दूर नहीं ले जाएगा, जो कि एक कठिन छत है। अधिक स्थान की आवश्यकता के रूप में tmpfs स्केल करेगा - इसलिए आप केवल tmpfs का उपभोग करते हैं जो उस समय की आवश्यकता होती है।
मार्को Ceppi

25

यहाँ कई अच्छे विकल्प हैं:

  1. tmpfs : एक फाइलसिस्टम है जो रैम में अपनी फाइलों को स्टोर करता है। इसका मतलब यह नहीं है कि फाइलसिस्टम आपके सभी रैम को खा जाएगा। इसके बजाय यह केवल वह राशि लेता है जिसकी उसे वास्तव में आवश्यकता होती है। आमतौर पर केवल कुछ एमबी की जरूरत होती है। यदि आप इसका उपयोग करेंगे, तो एक पंक्ति जोड़ें: जैसे none /tmp tmpfs size=64M,mode=1777 0 0आपके /etc/fstab। आप अपनी sizeपसंद के मान में बदल सकते हैं । यदि आप किसी बिंदु पर सोचते हैं कि यह बहुत कम है, तो आप mountआकार बढ़ाने के लिए उपयोग कर सकते हैं :mount -t tmpfs tmpfs /tmp -o size=128M,mode=1777,remount :। मौजूदा फ़ाइलों को हटाने के बिना आकार बढ़ा दिया जाएगा।
  2. ext2 / 3 : आपने अपने प्रश्न में कहा था कि आपको किसी फैंसी फीचर की आवश्यकता नहीं है। हालांकि मैं एक पत्रिका का उपयोग करने की सलाह दूंगा। क्योंकि यदि आप ext2 का उपयोग करते हैं और आपके पास काफी बड़ा है /tmp, तो इसकी जाँच करने में कुछ समय लगेगा। ext3 कई मामलों में तेजी से बूट करता है। इसलिए मैं पत्रिकाओं के उपयोग का सुझाव दूंगा।
  3. ext4 , reiserfs आदि: कुछ सॉफ़्टवेयर /tmpबड़ी मात्रा में छोटी फ़ाइलों को संग्रहीत करने के लिए उपयोग करते हैं। इसलिए कुछ मामलों में अधिक मुक्त ब्लॉक नहीं हैं और फाइलसिस्टम भरा हुआ है। ext4 और reiserfs फाइलों को एक अलग तरीके से स्टोर करते हैं। तो यह आपके लिए उन का उपयोग करने के लिए एक अच्छा विकल्प हो सकता है /tmp

यदि आपका कंप्यूटर लंबे समय तक चलता है, तो अप्रयुक्त फ़ाइलों को हटाना एक अच्छा विचार है /tmptmpreaperएक समाधान है जो आपके लिए ऐसा करता है।

हालांकि मेरी पहली पसंद का उपयोग किया जाएगा tmpfs


क्या सिस्टम का उपयोग करके / etc / fstab के साथ पहला विकल्प भी लागू होता है?
स्माइल 4 लीवर

1
@ Smile4ever Yes-- /etc/fstabका हिस्सा है util-linux, इसलिए यह किसी भी लिनक्स सिस्टम पर मौजूद होगा, भले ही इनिट सिस्टम का उपयोग किया जा रहा हो।
विलाप

7

यदि आप नहीं चाहते कि यह संभवतः रैम खाए, तो मैं इसे ext2 के रूप में चलाऊंगा । एक फाइल सिस्टम के लिए जर्नलिंग के छोटे प्रदर्शन को खाने का कोई कारण नहीं जिसका डेटा आप रिबूट के बारे में परवाह नहीं करते हैं।

दरअसल, खरोंच, जिसे आपको शायद ext4 का उपयोग करना चाहिए और इसकी पत्रिका को अक्षम करना चाहिए, यह ext2 से अधिक तेज होना चाहिए। इसे ext4 स्वरूपित करें, और इसे fstabमाउंट विकल्प के साथ चिपका दें data=writeback


6

उपयोग tmpfsकरना आपकी आवश्यकताओं के लिए ठीक होना चाहिए, बशर्ते कि आपके पास पर्याप्त रैम स्थापित हो

कहा जा रहा है ... कुछ है कि के लिए एक ramdisk का उपयोग करने के संबंध में विचार किया जाना चाहिए /tmp(यह एक पुराने पोस्ट से कहीं और लिया गया है ):

  • एक वास्तविक डिस्क क्षेत्र पर tmp होना चाहिए या मूल रूप से SWAP क्षेत्र (या tmpfs) पर लागू होना चाहिए?

जब इसका अत्यधिक उपयोग किया जाता है, तो यह एक प्रलोभन है - "हम रैम डिस्क में / tmp डालेंगे, यह एक्सेस को गति देगा, और जब सिस्टम रिबूट / शट डाउन होता है, तो सफाई करने के लिए कुछ भी नहीं है"। हालाँकि, यदि आप रैम डिस्क के रूप में टेम्प स्पेस को लागू करने की सोच रहे हैं, जिसे स्वैप किया जाएगा, तो मैं अन्य प्रोग्राम्स द्वारा आपके सिस्टम के स्वैप स्पेस के उपयोग के प्रभावों पर विचार करूंगा। अगर सिस्टम के सख्त होने पर "आपातकालीन अतिप्रवाह" के रूप में स्वैप होता है और सिस्टम को इसकी आवश्यकता होती है, तो आखिरी चीज जो आपको चाहिए वह है कि स्वैप की जगह को भगोने की प्रक्रिया से भरना / tmp द्वारा भस्म करना, मेमोरी का उपभोग करना, जिससे दबाव बनता है। VM उप-सिस्टम डिस्क पर स्वैप करने के लिए। स्वैप गतिविधि के बीच,seek()


5

विशिष्ट माउंट विकल्पों के साथ ext4 का उपयोग करना ठीक होना चाहिए। निम्नलिखित माउंट विकल्पों का उपयोग करें:

barrier=0 : Significantly improves file write operations in some scenarios
noatime : Don't update file last access time, you don't need this on /tmp files and it should help with write operations performance.

यह भी जोड़ें nodiratime
Weboide

noatime में
zvolkov

3

मैं ext4 से खुश हूं। आप कुछ माउंट विकल्पों के साथ खेल सकते हैं यदि आप इसे ट्विक करना पसंद करते हैं या यदि आपके पास बहुत सारे रैम हैं तो tmpfs का उपयोग करें।


2

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


0

मुझे लगता है कि tmpfs एक बुरा विकल्प हो सकता है क्योंकि आम तौर पर / tmp विश्व योग्य होता है इसलिए कोई भी इसे भर सकता है और यदि यह भरता है तो यह आपकी सारी मेमोरी ले लेगा और आपका सर्वर क्रॉल में धीमा हो जाएगा


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