मैं बड़े पैमाने पर 39.5GB / var / log / फ़ोल्डर से कैसे मुक्त कर सकता हूं?


46

मुझे बस डिफॉल्ट डिस्क एनालाइज़ेशन सॉफ्टवेयर (बाओबाब) से संदेश मिला कि मेरे पास हार्ड ड्राइव पर केवल 1GB बचा है। कुछ खोज के बाद, मैंने पाया कि /var/log/फ़ोल्डर इसका कारण है।

कुछ फ़ाइल / आकार /var/log/:

  • kern.log = 12.6 जीबी
  • ufw.log = 12.5 जीबी
  • kern.log.1 = 6.1 जीबी
  • ufw.log.1 = 6.0 जीबी

Et cetera et cetera। /var/logबहुत विशाल।

क्या मैं उन फ़ाइलों या संपूर्ण /var/logफ़ोल्डर को हटा सकता हूं ? या यह है कि उबंटू में कोई बड़ा नहीं?

जवाबों:


39

आपको संपूर्ण फ़ोल्डर नहीं निकालना चाहिए, लेकिन आप अपने सिस्टम को नुकसान पहुँचाए बिना "पुरानी-पैक" लॉग फ़ाइलों को हटा सकते हैं।

एक विशिष्ट होम उपयोगकर्ता के लिए, किसी भी लॉग फ़ाइल को हटाना सुरक्षित है, जिसमें एक .gz एक्सटेंशन है (जैसा कि आप चित्र में देख सकते हैं)।

ये संकुचित लॉग फ़ाइलें पुराने लॉग हैं जो संग्रहण स्थान को कम करने के लिए gzipped हैं, और एक औसत उपयोगकर्ता के रूप में, आपको उनकी आवश्यकता नहीं है।

.Gz extention का चयन करें


7
find / var / log -type f -name "* .gz" -exec rm -f {} \;
दीयाज

@diyism मैंने आपके कोड की कोशिश की, लेकिन ज्यादा मदद नहीं की। मेरा लॉग डीआईआर अभी भी
जीबी

1
find /var/log -type f -name "*.gz" -delete, मैंने संपीड़ित फ़ाइलों को हटा दिया और मैंने केवल 1 जीबी स्थान खाली कर दिया। 50 GB /dir और मेरी डिस्क के बाकी हिस्सों के लिए पर्याप्त नहीं है /home!
मुहम्मद गालबाना

मेरी माँ के PC में kern.log फ़ाइल 21 GB आकार की थी। लिनक्स कर्नेल में एक बड़ी kern.log समस्या को इंगित करती है या किसी चीज़ से निपटने में समस्याओं का सामना कर रही है। दोनों मामलों में, यह लिनक्स शेल टर्मिनल पर जाने और ( cat /var/log/kern.logया nano /var/log/kern.logजीयूआई में, जैसे कुछ gedit /var/log/kern.logया चलाने के लिए mousepad /var/log/kern.log) की सिफारिश की जाती है और जांच करें कि समस्या क्या हो सकती है। एक बार जब आपको पता चल जाता है कि क्या गलत है तो आप sudo rm /var/log/kern.log ; sudo telinit 6ऐसी (बड़ी) फ़ाइल को हटाने के लिए चला सकते हैं और ऑपरेटिंग सिस्टम को पुनः आरंभ कर सकते हैं।
यूरी सुकुपीरा

मेरे मामले में, यह केवल 15.7 एमबी 41 फाइलों को हटा देगा। यहां वास्तविक समस्याएं messages(7.7 जीबी), user.log(7.7 जीबी), syslog(4.1 जीबी) और syslog.1(3.5 जीबी) हैं। वे चार फाइलें 23 जीबी की हैं। उन्हें हटाने का कोई तरीका, या कम से कम उनके आकार को कम करना?
रॉड्रिगो

32

मैं संपूर्ण / var / लॉग फ़ोल्डर को नहीं हटाऊंगा - जो चीजों को तोड़ देगा।

आप लॉग को नष्ट कर सकते हैं जैसा कि @jrg सुझाव देता है - लेकिन जब तक कि लॉग फाइल (ज्यादातर syslogd) में लिखने वाली चीजें फिर से शुरू नहीं हो जाती हैं, जो वास्तव में आपको किसी भी डिस्क स्थान को पुनः प्राप्त नहीं करेगी, क्योंकि फाइलें नष्ट होने की स्थिति तक मौजूद रहेंगी। फाइलहैंडल बंद हो गए हैं।

बेहतर यह पता लगाना होगा कि लॉग क्यों नहीं घुमाए जा रहे हैं (और बाद में हटाए गए)। logrotate आपके लिए ऐसा करने वाला है, और मुझे संदेह है कि यह प्रत्येक रात नहीं चल रहा है जैसा कि यह होना चाहिए।

पहली बात मैं यह करूंगा:

sudo /etc/cron.daily/logrotate

यह लॉग फ़ाइलों को घुमाना चाहिए (इसलिए kern.log kern.log.1 हो जाता है); और फिर आप डिस्क स्थान खाली करने के लिए kern.log.1 आदि को हटा सकते हैं।

यदि अब तक सब कुछ अच्छा है, तो अगला सवाल यह है कि यह स्वचालित रूप से क्यों नहीं हो रहा है। यदि आप अपने कंप्यूटर को रात में बंद करते हैं, तो सुनिश्चित करें कि आपके पास एनाक्रॉन स्थापित है।


17

आपको लॉग को देखना चाहिए और देखना चाहिए कि उन्हें क्या लिखा जा रहा है। मेरा अनुमान ufw / iptables है (आप सभी नेटवर्क ट्रैफ़िक लॉग कर रहे हैं)।

ufw - जब आप सभी पैकेट लॉग करते हैं, तो आपको बड़े लॉग मिलेंगे। यदि आप लॉग की समीक्षा नहीं करने जा रहे हैं, तो लॉगिंग बंद करें। यदि आप अपने नेटवर्क की निगरानी करना चाहते हैं, तो स्नॉर्ट का उपयोग करें। स्नॉर्ट आपके द्वारा प्राप्त हजारों पैकेटों के माध्यम से फ़िल्टर करेगा और संभावित समस्याग्रस्त ट्रैफ़िक के लिए आपको सचेत करेगा।

मेरा अनुमान है कि ufw अपराधी है और आपको kern.log में एक बड़ा लॉग मिल रहा है क्योंकि आप वहां भी पैकेट लॉग कर रहे हैं।

कभी-कभी एक कर्नेल या हार्डवेयर समस्या होती है जो लॉग को भरती है। उस घटना में समस्या को ठीक करना या बग दर्ज करना सबसे अच्छा है, आपको ऐसा करने के लिए लॉग की समीक्षा करने की आवश्यकता होगी।

यदि आप समस्या को ठीक नहीं कर सकते हैं, तो आप अपने लॉग को न भरने के लिए syslog को कॉन्फ़िगर कर सकते हैं।

Http://manpages.ubuntu.com/manpages/precise/man5/syslog.conf.5.html देखें

यदि आप समस्या पर अधिक विवरण प्रदान करते हैं तो हम इसे बेहतर रूप से डीबग करने में मदद कर सकते हैं।


2
यह बहुत अच्छी बात है। यह पता लगाने के लायक है कि लॉग को केवल हटाने के बजाए उन पर क्या चढ़ा है। +1।
रिचवध

6

हटाना /var/logशायद एक बुरा विचार है, लेकिन व्यक्तिगत लॉगफाइल्स को हटाना ठीक होना चाहिए।

मेरे लैपटॉप पर, एक छोटी सी एसएसडी डिस्क के साथ, मैं निम्नलिखित बिंदुओं को जोड़कर माउंट पॉइंट्स के रूप में /var/log( /tmpऔर /var/tmp) सेट करता हूं :tmpfs/etc/fstab

temp        /tmp        tmpfs   rw,mode=1777    0   0
vartmp      /var/tmp    tmpfs   rw,mode=1777    0   0
varlog      /var/log    tmpfs   rw,mode=1777    0   0

इसका मतलब यह है कि उन निर्देशिकाओं में कुछ भी एक रिबूट से नहीं बचता है। जहाँ तक मैं बता सकता हूँ, यह सेटअप ठीक काम करता है। बेशक, मैं किसी भी समस्या के निदान के लिए पुराने लॉग को देखने की क्षमता खो देता हूं, लेकिन मैं यह मानता हूं कि कम डिस्क उपयोग के लिए एक निष्पक्ष व्यापार।

मेरे पास एकमात्र समस्या यह है कि कुछ प्रोग्राम (विशेष रूप से एपीटी) अपने लॉग इन को उपनिर्देशिका में लिखना चाहते /var/logहैं और यदि वे मौजूद नहीं हैं तो उन निर्देशिकाओं को बनाने के लिए पर्याप्त स्मार्ट नहीं हैं। निश्चित रूप से मेरे लिए उस विशेष समस्या mkdir /var/log/aptमें रेखा जोड़ना /etc/rc.local; केवल आपके द्वारा इंस्टॉल किए गए सॉफ़्टवेयर के आधार पर, आपको कुछ अन्य निर्देशिकाएं बनाने की आवश्यकता हो सकती है।

(एक और संभावना यह होगी कि एक साधारण tarसंग्रह बनाया जाए जिसमें केवल निर्देशिकाएं हों, और /var/logसभी आवश्यक निर्देशिकाओं को बनाने के लिए इसे स्टार्टअप में अनटार्ट करना है और एक ही बार में अपनी अनुमति निर्धारित करनी है।)


1
ufw समस्या थी जाहिर है मैं पूरी तरह से लॉगिंग सेट तो यह सब कुछ logde। मदद के लिए धन्यवाद :)
flex19899
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.