जब तपाईंले आफ्नो सर्भरको कार्यसम्पादनमा कुनै समस्याको सामना गर्नुहुन्छ, तपाईंले गर्न चाहनुभएको पहिलो कुरा भनेको आफ्नो लिनक्स लगहरू जाँच गर्नुहोस्। प्रणाली लगमा, तपाईंले कर्नेल वा विभिन्न सेवाहरू जस्ता अपरेटिङ सिस्टमका विभिन्न कम्पोनेन्टहरूबाट केही उपयोगी निदान सन्देशहरू फेला पार्न सक्नुहुन्छ, त्यसैले तपाईंले सम्भवतः त्यहाँ विफलताको कारण फेला पार्नुहुनेछ।
लगमा भएको प्रत्येक सन्देश अपरेटिङ सिस्टममा भएका निश्चित घटनाहरूको परिणामस्वरूप उत्पन्न हुन्छ: प्रयोगकर्ता, प्राधिकरणदेखि सेवा बन्द हुने वा अनुप्रयोग विफलतासम्म। यी घटनाहरूको प्राथमिकता तिनीहरू कति महत्वपूर्ण छन् भन्ने आधारमा फरक-फरक हुन्छन्। लिनक्समा निम्न प्रकारका घटनाहरू छन्:
emerg- असफलता, सर्वोच्च प्राथमिकता;alert- जरुरी चेतावनी;crit- महत्वपूर्ण घटना;err- सामान्य त्रुटि;warn- सामान्य चेतावनी;notice- सूचना;info- जानकारी सन्देश;debug- डिबगिङ जानकारी;
हाल, लिनक्समा मुख्य लग सङ्कलन सेवाहरू हुन् rsyslog र systemd-journald। तिनीहरू धेरैजसो आधुनिक वितरण प्याकेजहरूसँग जान्छन् र स्वतन्त्र रूपमा काम गर्छन्।
rsyslog
यस सेवाका लगहरू "मा अवस्थित छन्"/ var / लग /"साधारण पाठ फाइलहरूको रूपमा फोल्डर। लग सन्देशहरू घटनाको प्रकारमा निर्भर गर्दै फरक फाइलहरूमा राखिन्छन्। उदाहरणका लागि, "/var/log/auth.log"प्रणालीमा प्रयोगकर्ताहरूको अधिकार सम्बन्धी जानकारी समावेश गर्दछ, र"/var/log/kern.log"" मा कर्नेल सन्देशहरू छन्। वितरण प्याकेजहरूमा फाइलहरूको नाम फरक हुन सक्छ, त्यसैले "" कहाँ छ भन्ने कुरा बुझ्न कन्फिग फाइलमा एक नजर राखौं।/etc/rsyslog.d/50-default.conf"।
यी नियमहरूले कुन फाइलमा प्रत्येक प्रकारका लग सन्देशहरू छन् भनेर देखाउँछन्। बायाँ भागले निम्न फारममा सन्देशको प्रकार प्रदर्शन गर्दछ "[स्रोत]।[प्राथमिकता]"र दायाँ भागले लग फाइलको नाम देखाउँछ। सन्देशको प्रकार लेख्दा "*"क्यारेक्टर थप्न सकिन्छ। यसको अर्थ खाली मान वा "कुनै पनि"यसले यसलाई सूचीबाट हटाउँछ। आउनुहोस्, पहिलो दुई नियमहरूलाई नजिकबाट हेरौं।
“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”
पहिलो नियमको अर्थ प्राधिकरण संयन्त्रबाट प्राप्त सबै सन्देशहरू "" मा रेकर्ड गरिनेछ।/var/log/auth.log"फाइल। सबै प्राधिकरण प्रयासहरू (सफल र असफल दुवै) यस फाइलमा दर्ता गरिनेछन्। दोस्रो नियमले संकेत गर्दछ कि प्राधिकरणसँग जोडिएका बाहेक सबै सन्देशहरू "मा रेकर्ड गरिनेछन्।/ var / log / syslog"फाइल। यी दुई फाइलहरू सामान्यतया सबैभन्दा लोकप्रिय हुन्छन्। निम्न नियमहरूले कर्नेल लगहरू भण्डारण गर्ने मार्ग परिभाषित गर्दछ "केर्न।*"र मेल सेवा लगहरू"मेल।*"
लग फाइलहरू कुनै पनि टेक्स्ट एडिटरको मद्दतले खोल्न सकिन्छ, जस्तै थोरै, बिरालो, tail। "खोलौं"/var/log/auth.log"फाइल
less /var/log/auth.log
फाइलको प्रत्येक लाइन एप्लिकेसन वा सेवाबाट प्राप्त भएको छुट्टै सन्देश हो। स्रोत जस्तोसुकै भए पनि सबै सन्देशहरूको एउटै ढाँचा हुन्छ र यसमा ५ भागहरू हुन्छन्। उदाहरणको रूपमा स्क्रिनसटमा हाइलाइट गरिएको सन्देशलाई लिऔं।
- सन्देश टाइमस्ट्याम्प - “फेब्रुअरी १२ ०६:१८:३३”
- सन्देश पठाउने कम्प्युटरको नाम - “vds”
- सन्देश पठाउने अनुप्रयोग वा सेवाको नाम - “sshd”
- प्रक्रिया ID - [653]
- सन्देश पाठ - "१८८.१९.४२.१६५ पोर्ट २८४९ ssh188.19.42.165 बाट मिहेलको लागि पासवर्ड स्वीकृत"
यो SSH सँग सफल जडानको उदाहरण थियो।
अनि असफल लगइन प्रयास कस्तो देखिन्छ भनेर यहाँ छ:
यो फाइलले उन्नत अनुमतिहरू भएका आदेशहरू पनि रेकर्ड गर्दछ।
खोलौं / var / log / syslog फाइल
स्क्रिनसटमा हाइलाइट गरिएको सन्देश नेटवर्क इन्टरफेस बन्द भएको बारेमा सन्देश हो।
लामो टेक्स्ट फाइलहरू मार्फत जानकारी खोज्नको लागि प्रयोग गर्नुहोस् ग्रेप उपयोगिता। तपाईंले प्राप्त सबै सन्देशहरू फेला पार्न सक्नुहुन्छ pptpd "मा सेवा"/ var / log / syslog"फाइल।
grep 'pptpd' /var/log/syslog
निदानको क्रममा तपाईंले प्रयोग गर्न सक्नुहुन्छ tail फाइलहरूको धेरै अन्तिम लाइनहरू प्रदर्शन गर्न सक्ने उपयोगिता। आदेश "टेल -f / var / लग / syslog” ले तपाईंलाई वास्तविक समयमा लग रेकर्डिङ हेर्न दिनेछ।
सुबिधा rsyslog धेरै लचिलो र शक्तिशाली छ। यसलाई स्थानीय प्रणालीहरूमा साथै उद्यम स्तरमा लगहरू सङ्कलन गर्न प्रयोग गर्न सकिन्छ। तपाईंले आधिकारिक वेबसाइटमा पूर्ण कागजातहरू पाउन सक्नुहुन्छ। https://www.rsyslog.com/
Linux मा लगहरू घुमाउने तरिका
लग रेकर्डिङ निरन्तर भइरहेको छ, त्यसैले फाइलहरूको आकार निरन्तर बढ्दै जान्छ। रोटेशन मेकानिज्मले पुराना लगहरूको स्वचालित अभिलेख र नयाँ फाइलहरूको सिर्जना सुनिश्चित गर्दछ। नियमहरूमा निर्भर गर्दै, यो दैनिक, साप्ताहिक, मासिक वा आकार सीमा अनुसार हुन सक्छ। नयाँ लगहरू सिर्जना हुँदा, पुरानाहरू केवल मेटाउन वा इमेल मार्फत पठाउन सकिन्छ। लगहरू रोटेशन द्वारा गरिन्छ पाएको उपयोगिता। तपाईंले मुख्य कन्फिगरेसन "मा फेला पार्न सक्नुहुन्छ"/आदि/logrotate.conf"फाइल। फाइलहरूको सामग्री पनि "मा प्रशोधन गरिन्छ"/आदि/logrotate.d/"फोल्डर
नयाँ नियमहरू मुख्य कन्फिग फाइलमा लग इन गर्न सकिन्छ। यद्यपि, "" मा छुट्टै फाइल सिर्जना गर्नु उत्तम हुन्छ।/आदि/logrotate.d/"। पूर्वनिर्धारित रूपमा, यस डाइरेक्टरीमा केही फाइलहरू छन्।
फाइल हेरौं "/etc/logrotate.d/rsyslog" जसमा लगहरूको लागि घुमाउने नियमहरू छन् rsyslog सेवा।
पहिले, नियममा लग फाइलको मार्ग समावेश हुनुपर्छ र त्यसपछि सबै दिशानिर्देशहरू घुमाउरो कोष्ठकहरूमा जानुपर्छ।
- rot घुमाउनुहोस् - राख्नु पर्ने फाइलहरूको संख्या - ७
- दैनिक - हरेक दिन नयाँ फाइल सिर्जना गर्नुहोस्
- कम्प्रेस गर्नुहोस् - पुराना फाइलहरू कम्प्रेस र अभिलेख गर्नुहोस्
तपाईंले स्क्रिनसटमा देख्न सक्नुहुन्छ कि "/ var / लग /"त्यहाँ मुख्य लग फोल्डर छ"syslog” र ७ अभिलेखहरू, जुन कन्फिग फाइलमा भएका नियमहरूसँग मेल खान्छ।
तपाईंले logrotate को थप विस्तृत विवरण म्यानुअलमा पाउन सक्नुहुन्छ, "मानिस लग्रोटेट"आदेश"
लिनक्स लगहरू सङ्कलन गर्दै - जर्नल गरिएको
मुढा कटाई सेवा systemd-journald यो प्रारम्भिक प्रणालीको एक भाग हो systemd. Linux लग फाइलहरू "मा भण्डारण गरिएका छन्"/var/log/journal/"विशेष ढाँचामा र को मद्दतले खोल्न सकिन्छ" जर्नलकोटी उपयोगिता। रेकर्ड ढाँचा ठ्याक्कै उस्तै छ rsyslog.
आदेश जर्नलकोटी कुनै विशेषता बिना सबै रेकर्डहरू देखाउँछ तर यो ठूला लगहरूको लागि उपयुक्त छैन। यस उपयोगिताका केही विकल्पहरू हेरौं।
journalctl -b- अन्तिम सुरुवातदेखि सबै रेकर्डहरू देखाउनुहोस्journalctl -S "2020-02-17 12:00" -U "2020-02-17 12:10"- निश्चित समय अवधि भित्र रेकर्ड देखाउनुहोस्journalctl -u pptpd- निश्चित सेवाको रेकर्ड देखाउनुहोस्journalctl -k- कर्नेल सन्देशहरू देखाउनुहोस्journalctl -p err- यस अवस्थामा निश्चित प्राथमिकता, उच्च प्राथमिकताका सन्देशहरू देखाउनुहोस् (क्रिट्स, अलर्ट, इमर्ज)journalctl -f- वास्तविक समयमा सन्देशहरू देखाउनुहोस्
राम्रो लचकताको लागि तपाईंले यी विकल्पहरू संयोजन गर्न सक्नुहुन्छ। सबै त्रुटिहरू देखाउनुहोस् pptpd सेवा
journalctl -u pptpd -p err
यदि तपाईंले कार्यान्वयनयोग्य फाइलको मार्गलाई विशेषताको रूपमा निर्दिष्ट गर्नुभयो भने उपयोगिताले यस फाइलद्वारा पठाइएका सबै सन्देशहरू देखाउनेछ। फाइलद्वारा पठाइएका सबै सन्देशहरू देखाउनुहोस् “/usr/बिन/सुडो”फेब्रुअरी १८, २०२० मा ०४:१५ देखि। वास्तवमा, यसले उच्च अनुमतिहरू सहित कार्यान्वयन गरिएका सबै आदेशहरू देखाउनेछ।
journalctl -S "2020-02-18 04:15" /usr/bin/sudo
निम्न आदेश कार्यान्वयन गर्न लग फाइलहरूले कति डिस्क स्पेस लिन्छ भनेर पत्ता लगाउन
journalctl --disk-usage
लग फाइललाई १Gb मा सीमित गर्न निम्न आदेश कार्यान्वयन गर्नुहोस्
journalctl --vacuum-size=1G
बाइनरी फाइलहरू खोल्दै
अब “मा रहेका केही विशेष फाइलहरू हेरौं”/ var / लग /"फोल्डर जहाँ सबै लगइन प्रयासहरू भण्डारण गरिन्छन्। यी फाइलहरू बाइनरी हुन् र विशेष कार्यक्रमहरूद्वारा मात्र खोल्न सकिन्छ।
/var/log/wtmp सफल लगइन प्रयासहरूको बारेमा जानकारी समावेश गर्दछ। यसलाई खोल्नको लागि अन्तिम उपयोगिता प्रयोग गर्नुहोस्।
/var/log/btmp - सबै असफल लगइन प्रयासहरू समावेश गर्दछ। यसलाई उन्नत अनुमतिहरू सहित lastb मार्फत खोल्न सकिन्छ। विशेषता -n फाइलको अन्त्यबाट प्रदर्शित लाइनहरूको संख्या परिभाषित गर्दछ।
/var/log/lastlog - प्रत्येक खाता रेकर्डको लागि अन्तिम लगइन कार्यको समय समावेश गर्दछ। यसलाई खोल्न सकिन्छ लास्टलग