यूनिक्स में, एक विशाल लॉग फ़ाइल के आकार को कम करने का सबसे अच्छा तरीका क्या है जिसे सक्रिय रूप से लिखा जा रहा है?


11

एक लिनक्स सर्वर पर, मैं एक लॉग फ़ाइल का आकार कम करना चाहता हूं जो कई जीबी बड़ी है। शीर्ष आधा काटना, या शायद पहली मिलियन लाइनें काम करेंगी।

जवाबों:


12

यह साक्षात्कार में काफी बार आता है ...

क्या आप प्रक्रियाओं को बाधित किए बिना फ़ाइल को छोटा करना चाहते हैं? क्या लॉग फ़ाइल में कोई भी जानकारी मूल्यवान है? यदि हां, तो मैं आमतौर पर एक साधारण बैश स्ट्रिंग के साथ फ़ाइल को "शून्य" करता हूं।

: > /var/log/badlogfile

यह उन स्थितियों में आता है जहां आपके पास एक ऐसा आवेदन हो सकता है जिसे नियंत्रित तरीके से फिर से शुरू नहीं किया जा सकता है। मान लीजिए कि यह एक वित्तीय ट्रेडिंग एप्लिकेशन है और कार्यक्रम को ट्रेडिंग दिवस के दौरान रोका या पुनरारंभ नहीं किया जा सकता है। हालाँकि, अनुप्रयोग बग के कारण लॉग फ़ाइल कुछ अश्लील दर पर बढ़ रहे हैं। ऊपर या नीचे की विधि का उपयोग करके लॉग फ़ाइलों को रद्दी करना सिस्टम को चालू रख सकता है।

इसे भी देखें: http://www.cyberciti.biz/faq/truncate-large-text-file-in-unix-linux/


1
क्या बृहदान्त्र संकेत देने वाला है, या क्या वह वास्तव में कमांड में जाता है?
फिल

बृहदान्त्र कमांड का हिस्सा है।
इविहित

आपको वास्तव में बृहदान्त्र की आवश्यकता नहीं है।
मिकाइब

यह एक सेशन नहीं है। यह आवश्यक नहीं है, लेकिन जब मैं सिफारिश करता हूं तो मैं इसे वहां रखना पसंद करता हूं।
ewwhite

यह मेरे लिए काम नहीं करता था, लॉग आकार में नहीं बदला। यह 0 पर चला गया, लेकिन फिर अपने पूरे आकार में वापस आ गया
यौलि

2

आप इसे लॉगोटेट में रख सकते हैं, फिर यह आसानी से नियंत्रण से बाहर नहीं होगा


अंतत: ऐसा होना चाहिए। मैं इस नौकरी में नया हूँ ...
फिल

1

यदि यह सक्रिय रूप से आपके लिए लिखा जा रहा है तो आपके पास वास्तव में बहुत कुछ नहीं है जो आप काट-छाँट कर सकते हैं। आपका एकमात्र विकल्प फ़ाइल को खाली करना है (आप इसे पहले कहीं और कॉपी कर सकते हैं।)

echo "" >/var/log/fileYouWantToEmpty

इस तरह फ़ाइल खाली हो जाती है, लेकिन फिर भी वही फ़ाइल / इनकोड होती है, इसलिए यह लॉगिंग करने वाले प्रोग्राम को बाधित नहीं करेगी।


0

आप बिल्ली / देव / नल> / वर / लॉग / भी आज़मा सकते हैं। लेकिन, मुझे कुछ पुराने संस्करणों में / dev / null लागू नहीं करने की चेतावनी देनी है ...


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