معلومات جي بنياد تي پرافٽ سرور سروس سان ڪم ڪرڻ لاءِ سادي هدايتون
مک معلومات جي بنياد تي لينڪس لاگ ڪيئن پڙهجن ۽ ان کي ڪٿي ڳولهيو وڃي

لينڪس لاگ ڪيئن پڙهجن ۽ ان کي ڪٿي ڳولهيو وڃي


جڏهن توهان کي پنهنجي سرور جي ڪارڪردگي سان ڪنهن به مسئلي کي منهن ڏيڻو پوي ٿو، ته پهرين شيءِ جيڪا توهان ڪرڻ چاهيو ٿا اها آهي پنهنجي لينڪس لاگز کي چيڪ ڪريو . سسٽم لاگ ۾، توهان آپريٽنگ سسٽم جي مختلف حصن جهڙوڪ ڪرنل يا مختلف خدمتن مان ڪجهه مددگار تشخيصي پيغام ڳولي سگهو ٿا، تنهنڪري توهان کي گهڻو ڪري اتي ناڪامي جو سبب ملندو.

لاگ ۾ هر پيغام آپريٽنگ سسٽم ۾ ڪجهه واقعن جي نتيجي ۾ پيدا ٿئي ٿو: صارف کان، اختيار ڏيڻ کان وٺي سروس بند ٿيڻ يا ايپليڪيشن ناڪامي تائين. انهن واقعن جون مختلف ترجيحون آهن ان تي منحصر آهي ته اهي ڪيترا نازڪ آهن. لينڪس ۾ هيٺيان قسم جا واقعا آهن:

  1. emerg - ناڪامي، سڀ کان وڌيڪ ترجيح؛
  2. alert - تڪڙي ڊيڄاريندڙ؛
  3. crit - نازڪ واقعو؛
  4. err - عام غلطي؛
  5. warn - عام ڊيڄاريندڙ؛
  6. notice - اطلاع؛
  7. info - معلوماتي پيغام؛
  8. debug - ڊيبگنگ ڄاڻ؛

هن وقت، لينڪس ۾ مکيه لاگ هارويسٽنگ سروسز rsyslog ۽ systemd-journald آهن . اهي گھڻن جديد ورڇ پيڪيجز سان گڏ وڃن ٿيون ۽ آزاديءَ سان ڪم ڪن ٿيون.

rsyslog

هن سروس جا لاگ عام ٽيڪسٽ فائلن جي صورت ۾ " /var/log/ " فولڊر ۾ موجود آهن. لاگ پيغام مختلف فائلن ۾ رکيا ويندا آهن جيڪي واقعي جي قسم تي منحصر هوندا آهن. مثال طور، " /var/log/auth.log " ۾ سسٽم ۾ استعمال ڪندڙن جي اختيار بابت معلومات شامل آهي، ۽ " /var/log/kern.log " ۾ ڪرنل پيغام شامل آهن. فائلن جا نالا ورهائڻ واري پيڪيجز ۾ مختلف ٿي سگهن ٿا، تنهن ڪري اچو ته ڪنفگ فائل تي نظر وجهون ته اهو خيال حاصل ڪري سگهجي ته " /etc/rsyslog.d/50-default.conf " ڪٿي آهي.

لينڪس لاگ ان ڪريو rsyslog

اهي قاعدا ڏيکارين ٿا ته ڪهڙي فائل ۾ هر قسم جا لاگ پيغام شامل آهن. کاٻي حصو هيٺ ڏنل شڪل ۾ پيغام جي قسم کي ڏيکاري ٿو " [ذريعو].[ترجيح] " ۽ ساڄي حصو لاگ فائل جو نالو ڏيکاري ٿو. پيغام جي قسم کي لکڻ دوران " * " ڪردار شامل ڪري سگهجي ٿو. ان جو مطلب آهي خالي قدر يا " ڪو به نه " جيڪو ان کي فهرست مان هٽائي ٿو. اچو ته پهرين ٻن قاعدن تي ويجهي نظر وجهون.

“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”

پهرين قاعدي جو مطلب آهي ته اختيار ڏيڻ واري ميڪانيزم مان حاصل ٿيندڙ سڀئي پيغام " /var/log/auth.log " فائل ۾ رڪارڊ ڪيا ويندا. سڀ اختيار ڏيڻ جون ڪوششون (ڪامياب ۽ نه ٻئي) هن فائل ۾ رجسٽر ڪيون وينديون. ٻيو قاعدو ظاهر ڪري ٿو ته اختيار ڏيڻ سان ڳنڍيل پيغامن کانسواءِ سڀئي پيغام " /var/log/syslog " فائل ۾ رڪارڊ ڪيا ويندا. اهي ٻئي فائلون عام طور تي سڀ کان وڌيڪ مشهور آهن. هيٺ ڏنل قاعدا ڪرنل لاگز " kern.* " ۽ ميل سروس لاگز " mail.* " کي ذخيرو ڪرڻ جو رستو بيان ڪن ٿا.

لاگ فائلون ڪنهن به ٽيڪسٽ ايڊيٽر جي مدد سان کوليون وينديون آهن، جهڙوڪ less ، cat ، tail . اچو ته " /var/log/auth.log " فائل کوليون.

less /var/log/auth.log
Запись в лог-файле Линукс о неудачной попытке авторизации SSH

فائل جي هر لائن ايپليڪيشن يا سروس مان موصول ٿيندڙ هڪ الڳ پيغام آهي. سڀني پيغامن جو ذريعو ڪنهن به هجي، انهن جو هڪ فارميٽ هوندو آهي ۽ 5 حصن تي مشتمل هوندو آهي. اچو ته اسڪرين شاٽ ۾ نمايان ٿيل پيغام کي مثال طور وٺون.

  1. پيغام جو ٽائيم اسٽيمپ - “12 فيبروري 06:18:33”
  2. ڪمپيوٽر جو نالو جنهن پيغام موڪليو - "vds"
  3. ان ايپليڪيشن يا سروس جو نالو جنهن پيغام موڪليو - "sshd"
  4. عمل جي سڃاڻپ - [653]
  5. پيغام جو متن - "188.19.42.165 پورٽ 2849 ssh2 کان ميهائل لاءِ قبول ٿيل پاسورڊ"

هي SSH سان ڪامياب ڪنيڪشن جي هڪ مثال هئي.

۽ هتي هڪ ناڪام لاگ ان ڪوشش ڪيئن نظر اچي ٿي:

لينڪس جي تاريخ

هي فائل ترقي يافته اجازتن سان ڪمانڊ پڻ رڪارڊ ڪري ٿي.

لينڪس کي استعمال ڪرڻ لاء استعمال ڪريو

اچو ته /var/log/syslog فائل کوليون.

اسڪرين شاٽ تي هڪ نمايان پيغام نيٽ ورڪ انٽرفيس جي بند ٿيڻ بابت پيغام آهي.

لوگو گھمڻ جو استعمال

ڊگھي ٽيڪسٽ فائلن ذريعي معلومات ڳولڻ لاءِ grep يوٽيلٽي استعمال ڪريو. توهان pptpd سروس مان حاصل ڪيل سڀئي پيغام " /var/log/syslog " فائل ۾ ڳولي سگهو ٿا .

grep 'pptpd' /var/log/syslog
فائيل “/etc/logrotate.d/rsyslog”

تشخيص دوران توهان tail يوٽيليٽي استعمال ڪري سگهو ٿا جيڪا فائلن جون آخري لائينون ڏيکاري سگهي ٿي. ڪمانڊ " tail -f /var/log/syslog " توهان کي حقيقي وقت ۾ لاگ رڪارڊنگ ڏسڻ جي اجازت ڏيندو.

سروس rsyslog تمام گهڻي لچڪدار ۽ طاقتور آهي. ان کي مقامي سسٽم ۽ انٽرپرائز سطح تي لاگ ڪٽڻ لاءِ استعمال ڪري سگهجي ٿو. توهان مڪمل دستاويز سرڪاري ويب سائيٽ https://www.rsyslog.com/ تي ڳولي سگهو ٿا.

لينڪس ۾ لاگ جي گردش

لاگ رڪارڊنگ مسلسل ٿي رهي آهي، تنهنڪري فائلن جو سائيز مسلسل وڌي رهيو آهي. گردش جو طريقو پراڻن لاگن جي خودڪار آرڪائيونگ ۽ نئين فائلن جي تخليق کي يقيني بڻائي ٿو. ضابطن تي منحصر ڪري، اهو روزانو، هفتيوار، مهيني يا سائيز جي حد سان ٿي سگهي ٿو. جيئن نوان لاگ ٺاهيا ويندا آهن، پراڻا صرف اي ميل ذريعي ختم ڪري سگهجن ٿا يا موڪلي سگهجن ٿا. لاگ جي گردش logrotate يوٽيلٽي ذريعي ڪئي ويندي آهي. توهان " /etc/logrotate.conf " فائل ۾ مکيه ترتيب ڳولي سگهو ٿا . فائلن جو مواد " /etc/logrotate.d/ " فولڊر ۾ پڻ پروسيس ڪيو ويندو آهي.

نوان قاعدا مکيه ڪنفگ فائل ۾ لاگ ان ٿي سگهن ٿا. بهرحال، " /etc/logrotate.d/ " ۾ هڪ الڳ فائل ٺاهڻ بهتر آهي . ڊفالٽ طور، هن ڊاريڪٽري ۾ ڪجھ فائلون آهن.

Настраиваем ротацию логов в Линукс

اچو ته فائل تي هڪ نظر وجهون " /etc/logrotate.d/rsyslog " جنهن ۾ rsyslog سروس جي لاگن لاءِ گردش جا قاعدا شامل آهن.

مثال вывода всех ошибок pppd

پهرين، قاعدي ۾ لاگ فائل جو رستو هجڻ گهرجي ۽ پوءِ سڀني هدايتن کي وکر بریکٹس ۾ وڃڻ گهرجي.

  • 7 XNUMXڻو - رکڻ لاءِ فائلن جو تعداد - 7
  • روزاني - هر روز هڪ نئين فائل ٺاهيو
  • دٻايو - پراڻين فائلن کي دٻايو ۽ محفوظ ڪريو
Учимся читать логи لينڪس

توهان اسڪرين شاٽ تي ڏسي سگهو ٿا ته " /var/log/ " فولڊر ۾ مکيه لاگ " syslog " ۽ 7 آرڪائيوز آهن، جيڪي ڪنفگ فائل ۾ قاعدن سان مطابقت رکن ٿا.

توهان " man logrotate " ڪمانڊ تي عمل ڪندي، دستي ۾ logrotate جي وڌيڪ تفصيلي وضاحت ڳولي سگهو ٿا.

لينڪس لاگ گڏ ڪرڻ - جرنلڊ

لاگ هارويسٽنگ سروس systemd-journald شروعاتي نظام systemd جو هڪ حصو آهي . لينڪس لاگ فائلون " /var/log/journal/ " ۾ هڪ خاص فارميٽ ۾ محفوظ ڪيون وينديون آهن ۽ journalctl يوٽيلٽي جي مدد سان کوليون وينديون آهن . رڪارڊ فارميٽ بلڪل rsyslog وانگر آهي.

ڪمانڊ journalctl بغير ڪنهن خاصيت جي سڀ رڪارڊ ڏيکاري ٿو پر اهو وڏن لاگن لاءِ مناسب ناهي. اچو ته هن يوٽيليٽي جي ڪجهه آپشنز تي نظر وجهون.

  • journalctl -b - آخري شروعات کان وٺي سڀ رڪارڊ ڏيکاريو
  • journalctl -S "2020-02-17 12:00" -U "2020-02-17 12:10" - هڪ خاص وقت جي اندر رڪارڊ ڏيکاريو
  • journalctl -u pptpd - ڪنهن خاص خدمت جا رڪارڊ ڏيکاريو
  • journalctl -k - ڪرنل پيغام ڏيکاريو
  • journalctl -p err - هن صورت ۾ هڪ خاص ترجيح جا پيغام ڏيکاريو، اعليٰ ترجيحي پيغام (crit، alert، emerg)
  • journalctl -f - حقيقي وقت ۾ پيغام ڏيکاريو

بهتر لچڪ لاءِ توهان انهن اختيارن کي گڏ ڪري سگهو ٿا. اچو ته pptpd سروس جون سڀ غلطيون ڏيکاريون.

journalctl -u pptpd -p err
آخري استعمال

جيڪڏهن توهان ايگزيڪيوٽو فائل جو رستو هڪ خاصيت طور بيان ڪندا ته يوٽيليٽي هن فائل پاران موڪليل سڀئي پيغام ڏيکاريندي. اچو ته 18 فيبروري 2020 تي 04:15 کان " /usr/bin/sudo " فائل پاران موڪليل سڀئي پيغام ڏيکاريون. حقيقت ۾، اهو سڀني حڪمن کي ڏيکاريندو جيڪي اعليٰ اجازتن سان عمل ۾ آندا ويا آهن.

journalctl -S "2020-02-18 04:15" /usr/bin/sudo
ڪمانڊو آخري

هيٺ ڏنل حڪم تي عمل ڪرڻ لاءِ لاگ فائلون ڪيتري ڊسڪ اسپيس وٺن ٿيون اهو معلوم ڪرڻ لاءِ

journalctl --disk-usage

لاگ فائل کي 1Gb تائين محدود ڪرڻ لاءِ هيٺ ڏنل حڪم تي عمل ڪريو

journalctl --vacuum-size=1G

بائنري فائلون کولڻ

هاڻي اچو ته " /var/log/ " فولڊر ۾ ڪجهه خاص فائلن تي نظر وجهون جتي سڀئي لاگ ان ڪوششون محفوظ ڪيون وينديون آهن. اهي فائلون بائنري آهن ۽ صرف خاص پروگرامن سان کوليون وينديون آهن.

/var/log/wtmp ۾ ڪامياب لاگ ان ڪوششن بابت معلومات شامل آهي. ان کي کولڻ لاءِ آخري يوٽيليٽي استعمال ڪريو.

آخري لاگ استعمال ڪريو

/var/log/btmp - سڀني ناڪام لاگ ان ڪوششن تي مشتمل آهي. ان کي جديد اجازتن سان lastb سان کوليو وڃي ٿو. Attribute -n فائل جي آخر کان ڏيکاريل لائينن جو تعداد بيان ڪري ٿو.

/var/log/lastlog - هر اڪائونٽ رڪارڊ لاءِ آخري لاگ ان عمل جو وقت شامل آهي. ان کي lastlog سان کوليو وڃي ٿو.

❮ پوئين مضمون لينڪس ٽيڪسٽ ايڊيٽرز
ايندڙ مضمون ❯ CentOS ۾ نيٽ ورڪ انٽرفيس کي ڪيئن ترتيب ڏيڻ

اسان کان VPS بابت پڇو

اسين ڏينهن يا رات جي ڪنهن به وقت توهان جي سوالن جا جواب ڏيڻ لاءِ هميشه تيار آهيون.