होस्ट को रिबूट किए बिना डिस्क मुक्त आकार अपडेट करना


23

मैं इस पर LVM2 के साथ RHEL4 का उपयोग करता हूं। कई बार GB से अधिक बड़ी फ़ाइलों को हटाने के बाद भी, dfकमांड का उपयोग करते समय विभाजन का आकार अपडेट नहीं हो रहा है ।

-bash-3.00$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/sys-root  3.9G  1.4G  2.3G  39% /
/dev/cciss/c0d0p1     251M   19M  219M   8% /boot
/dev/mapper/sys-home  250G  125G  113G  53% /home
/dev/mapper/sys-tmp   3.9G   41M  3.7G   2% /tmp
/dev/mapper/sys-var   3.9G  3.6G   98M  98% /var

लेकिन जब मैं डु का उपयोग करके जांच करता हूं तो यह उचित आकार दिखाता है

-bash-3.00$ sudo du -sh /var/
 179M   /var/

आप देख सकते हैं कि df आउटपुट 3.6Gb होने के लिए / var विभाजन दिखाता है, लेकिन डु दिखाता है कि इसका सिर्फ 179Mb है।

अब समस्या यह है कि न तो सिंक या पार्टप्रॉब जानकारी को अपडेट नहीं कर रहा है। लेकिन निश्चित रूप से मेजबान को रिबूट करने से समस्या हल हो जाएगी। लेकिन जैसा कि यह एक उत्पादन सर्वर है मैं इसे रिबूट नहीं कर सकता। क्या कोई तरीका है जिससे मैं होस्ट को रिबूट किए बिना डिस्क जानकारी को मैन्युअल रूप से अपडेट कर सकता हूं?


1
आपके पास शायद नष्ट हो चुकी फाइलें हैं (यानी ऐसी प्रक्रियाएं जो हटाई गई फाइलों पर चल रही हैं)। कुछ lsofपता करने की कोशिश करो । विभाजन तालिका में प्रयुक्त / उपलब्ध को संग्रहीत नहीं किया जाता है, partprobe (या किसी भी प्रकार का विभाजन फिर से पढ़ा जाता है) बिल्कुल भी मदद नहीं करेगा।
Mat

जवाबों:


28

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

यह देखने के लिए कि क्या आपके पास किसी फ़ाइल सिस्टम पर कोई भी हटाई गई फ़ाइल नहीं है, इन कमांडों में से एक को चलाएँ, जहाँ /mount/pointआरोह बिंदु ( /varआपके मामले में) है:

lsof +L1 /mount/point

खुले, बिना स्कैन की गई फाइलों पर यह लेख इसे कुछ और समझाने में मदद करता है।


2
मैं लॉग हटा रहा था, लेकिन dfजब तक मैंने सर्वर प्रक्रियाओं को फिर से शुरू नहीं किया, तब तक कोई मुक्त स्थान नहीं दिखा। धन्यवाद!
fet

बेहतर कॉल lsof के साथ 'lsof + L1' जो डिलीट की गई फाइलों को दिखाता है। एक संपादित सुझाव दिया
नूनो परेरा

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