/ Tmp और / var / tmp में क्या अंतर है?


136

अधिकांश FHS सिस्टम पर, एक /tmpफ़ोल्डर के साथ-साथ एक /var/tmpफ़ोल्डर भी होता है। दोनों के बीच कार्यात्मक अंतर क्या है?


2
यहाँ सर्वर फॉल्ट पर एक समान प्रश्न दिया गया है: अंतर / tmp और / var / tmp के लिए सही उपयोग
pabouk

जवाबों:


115

/tmpएक छोटे जीवनकाल के साथ तेज (संभवतः छोटा) भंडारण के रूप में होता है कई सिस्टम /tmpबहुत तेजी से साफ करते हैं - कुछ प्रणालियों पर इसे रैम-डिस्क के रूप में भी माउंट किया जाता है। /var/tmpसामान्य रूप से एक भौतिक डिस्क पर स्थित है, बड़ा है और एक लंबे समय के लिए अस्थायी फ़ाइलों को पकड़ सकता है। कुछ सिस्टम भी साफ करते हैं /var/tmp, लेकिन कम बार।

यह भी ध्यान दें कि /var/tmpप्रारंभिक बूट-प्रक्रिया में उपलब्ध नहीं हो सकता है, जैसा कि /varऔर / या /var/tmpमाउंटपॉइंट हो सकता है। इस प्रकार यह थोड़ा अंतर है /binऔर इसके बीच अंतर है /usr/bin। पहला शुरुआती बूट के दौरान उपलब्ध है - बाद में सिस्टम ने सब कुछ माउंट किया है। इसलिए अधिकांश बूट-स्क्रिप्ट अस्थायी फ़ाइलों के लिए उपयोग करेंगे /tmpऔर नहीं /var/tmp

अस्थायी फ़ाइलों के लिए लिनक्स पर एक और (आगामी) स्थान है /dev/shm


4
मैं यह थोड़ा विडंबना है कि लगता है /binऔर /usr/binवास्तव में एक ही इन दिनों (सिमलिंक) कर रहे हैं। ;-)
फेलिक्स श्वार्ज़

2
@ फेलिक्स अभी तक सभी वितरणों पर नहीं है। लेकिन लिनक्स इस तरह से आगे बढ़ रहा है। संभवत: क्योंकि डिस्क बड़ी और बड़ी हो जाती हैं।
निल्स

27

/tmpहो सकता है, और कभी-कभी रिबूट पर साफ किया जाता है। /var/tmpरिबूट के बीच संरक्षित है।

FHS पर विकिपीडिया लेख देखें ।


1
/ tmp भी बाहर निकलने के बाद एक प्रक्रिया द्वारा बनाई गई फ़ाइलों को साफ कर सकता है!
ऑसविन

15

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

इन दिनों, अनुमतियों की /tmpतरह, डिफ़ॉल्ट रूप से अधिक सुरक्षा सेट की जाती है g+s,+t, लेकिन चालू नहीं होती है /var/tmp। इसके अतिरिक्त, /var/tmpरैम या स्वैप से शायद ही कभी माउंट किया जाता है।


मेरे डेबियन और फेडोरा सिस्टम पर, / tmp और / var / tmp में एक ही मोड है - a+rwx+t- और नहीं g+s
sourcejedi

12

POSIX बेस विनिर्देशन, अंक 7 ऑन / tmp :

निम्न निर्देशिका अनुरूप प्रणाली पर मौजूद होगी और वर्णित के रूप में उपयोग की जाएगी:

/ tmp

एक निर्देशिका को उन अनुप्रयोगों के लिए उपलब्ध कराया जाता है जिन्हें अस्थायी फ़ाइलों को बनाने के लिए जगह की आवश्यकता होती है। अनुप्रयोगों को इस निर्देशिका में फ़ाइलें बनाने की अनुमति दी जाएगी, लेकिन यह नहीं मानेंगे कि ऐसी फाइलें आवेदन के इनवोकेशन के बीच संरक्षित हैं।

फ़ाइल पदानुक्रम मानक 2.3 पर / tmp :

/ Tmp निर्देशिका प्रोग्राम हैं जो अस्थायी फ़ाइलों की आवश्यकता के लिए उपलब्ध कराया जाना चाहिए।

प्रोग्राम को यह नहीं मानना ​​चाहिए कि प्रोग्राम के इनवोकेशन के बीच किसी भी फाइल या डायरेक्टरी / tmp को संरक्षित किया गया है।

दलील

IEEE मानक P1003.2 (POSIX, भाग 2) उन आवश्यकताओं को बनाता है जो उपरोक्त अनुभाग के समान हैं।

यद्यपि / tmp में संग्रहीत डेटा को साइट-विशिष्ट तरीके से हटाया जा सकता है, लेकिन यह अनुशंसा की जाती है कि जब भी सिस्टम बूट किया जाता है, तो / tmp में स्थित फ़ाइलों और निर्देशिकाओं को हटा दिया जाए।

एफएचएस ने इस सिफारिश को ऐतिहासिक मिसाल और सामान्य अभ्यास के आधार पर जोड़ा, लेकिन इसे इसकी आवश्यकता नहीं थी क्योंकि सिस्टम प्रशासन इस मानक के दायरे में नहीं है।

POSIX / var / tmp निर्दिष्ट नहीं करता है । FHS हालांकि करता है :

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

सिस्टम बूट होने पर / var / tmp में स्थित फ़ाइलों और निर्देशिकाओं को हटाया नहीं जाना चाहिए। हालाँकि / var / tmp में संग्रहीत डेटा को आमतौर पर साइट-विशिष्ट तरीके से हटा दिया जाता है, यह अनुशंसा की जाती है कि हटाने / tmp से कम लगातार अंतराल पर हो ।


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