ඔබේ සේවාදායකයේ ක්රියාකාරිත්වය සම්බන්ධයෙන් ඔබට කිසියම් ගැටළුවක් ඇති වූ විට, ඔබ කළ යුතු පළමු දෙය නම් ඔබේ Linux ලොග් පරීක්ෂා කිරීමයි . පද්ධති ලොගය තුළ, කර්නලය හෝ විවිධ සේවාවන් වැනි මෙහෙයුම් පද්ධතියේ විවිධ සංරචක වලින් ඔබට ප්රයෝජනවත් රෝග විනිශ්චය පණිවිඩ කිහිපයක් සොයාගත හැකිය, එබැවින් ඔබට බොහෝ විට එහි අසාර්ථකත්වයට හේතුව සොයාගත හැකිය.
ලොගයේ ඇති සෑම පණිවිඩයක්ම ජනනය වන්නේ මෙහෙයුම් පද්ධතියේ ඇතැම් සිදුවීම්වල ප්රතිඵලයක් ලෙස ය: පරිශීලකයාගේ සිට, අවසරයේ සිට සේවා වසා දැමීම හෝ යෙදුම් අසාර්ථක වීම දක්වා. මෙම සිදුවීම් කෙතරම් තීරණාත්මකද යන්න මත පදනම්ව වෙනස් ප්රමුඛතා ඇත. ලිනක්ස් හි පහත දැක්වෙන ආකාරයේ සිදුවීම් තිබේ:
emerg- අසාර්ථකත්වය, ඉහළම ප්රමුඛතාවය;alert- හදිසි අනතුරු ඇඟවීම;crit- තීරණාත්මක සිදුවීම;err- සාමාන්ය දෝෂය;warn- සාමාන්ය අනතුරු ඇඟවීම;notice- දැනුම්දීම;info- තොරතුරු පණිවිඩය;debug- නිදොස් කිරීමේ තොරතුරු;
මේ මොහොතේ, Linux හි ප්රධාන ලොග් අස්වනු නෙලීමේ සේවාවන් වන්නේ rsyslog සහ systemd-journald ය . ඒවා බොහෝ නවීන බෙදාහැරීමේ පැකේජ සමඟ යන අතර ස්වාධීනව ක්රියා කරයි.
rsyslog
මෙම සේවාවේ ලොග් සාමාන්ය පෙළ ගොනු ආකාරයෙන් “ /var/log/ ” ෆෝල්ඩරයේ පිහිටා ඇත. සිදුවීම් වර්ගය අනුව ලොග් පණිවිඩ විවිධ ගොනු වල තබා ඇත. උදාහරණයක් ලෙස, “ /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 ” ගොනුවට සටහන් වන බවයි. මෙම ගොනු දෙක සාමාන්යයෙන් වඩාත්ම ජනප්රිය වේ. පහත දැක්වෙන නීති මගින් කර්නල් ලොග් “ kern.* ” සහ තැපැල් සේවා ලොග් “ mail.* ” ගබඩා කිරීමේ මාර්ගය නිර්වචනය කරයි .
less , cat , tail වැනි ඕනෑම පෙළ සංස්කාරකයක් භාවිතයෙන් ලොග් ගොනු විවෘත කළ හැකිය . අපි " /var/log/auth.log " ගොනුව විවෘත කරමු.
less /var/log/auth.log
ගොනුවේ සෑම පේළියක්ම යෙදුමෙන් හෝ සේවාවෙන් ලැබුණු වෙනම පණිවිඩයකි. ඒවායේ මූලාශ්රය නොසලකා සියලුම පණිවිඩ එක් ආකෘතියක් ඇති අතර කොටස් 5 කින් සමන්විත වේ. තිර රුවෙහි උද්දීපනය කර ඇති පණිවිඩය උදාහරණයක් ලෙස ගනිමු.
- පණිවිඩ වේලා මුද්රාව - “පෙබරවාරි 12 06:18:33”
- පණිවිඩය යැවූ පරිගණකයේ නම - “vds”
- පණිවිඩය යැවූ යෙදුමේ හෝ සේවාවේ නම - “sshd”
- ක්රියාවලි හැඳුනුම්පත - [653]
- පණිවිඩ පෙළ - “188.19.42.165 port 2849 ssh2 වෙතින් මිහයිල් සඳහා මුරපදය පිළිගෙන ඇත”
මෙය SSH වෙත සාර්ථක සම්බන්ධතාවයකට උදාහරණයක් විය.
අසාර්ථක පිවිසුම් උත්සාහයක් පෙනෙන්නේ මේ ආකාරයටයි:
මෙම ගොනුව උසස් අවසරයන් සහිත විධාන ද වාර්තා කරයි.
අපි /var/log/syslog ගොනුව විවෘත කරමු.
තිර රුවෙහි උද්දීපනය කර ඇති පණිවිඩයක් වන්නේ ජාල අතුරුමුහුණත වසා දැමීම පිළිබඳ පණිවිඩයයි.
දිගු පෙළ ගොනු හරහා තොරතුරු සෙවීම සඳහා grep උපයෝගීතාව භාවිතා කරන්න. ඔබට pptpd සේවාවෙන් ලැබෙන සියලුම පණිවිඩ “ /var/log/syslog ” ගොනුවෙන් සොයාගත හැකිය.
grep 'pptpd' /var/log/syslog
රෝග විනිශ්චය අතරතුර, ඔබට ගොනු වල අවසාන පේළි කිහිපයක් පෙන්විය හැකි tail උපයෝගීතාව භාවිතා කළ හැකිය. “ tail -f /var/log/syslog ” විධානය මඟින් ඔබට ලොග් පටිගත කිරීම තත්ය කාලීනව නැරඹීමට ඉඩ සලසයි.
rsyslog සේවාව ඉතා නම්යශීලී සහ බලවත් ය. එය දේශීය පද්ධතිවල මෙන්ම ව්යවසාය මට්ටමින් ලොග් අස්වැන්න නෙළීම සඳහා භාවිතා කළ හැකිය. ඔබට https://www.rsyslog.com/ නිල වෙබ් අඩවියෙන් සම්පූර්ණ ලියකියවිලි සොයාගත හැකිය.
ලිනක්ස් හි ලොග් භ්රමණය
ලොග් පටිගත කිරීම අඛණ්ඩව සිදුවෙමින් පවතින බැවින් ගොනු වල ප්රමාණය නිරන්තරයෙන් වර්ධනය වේ. භ්රමණ යාන්ත්රණය පැරණි ලොග් ස්වයංක්රීයව සංරක්ෂණය කිරීම සහ නව ගොනු නිර්මාණය කිරීම සහතික කරයි. නීති මත පදනම්ව, එය දිනපතා, සතිපතා, මාසිකව හෝ ප්රමාණයේ සීමාව අනුව සිදුවිය හැකිය. නව ලොග් නිර්මාණය කරන විට, පැරණි ඒවා මකා දැමිය හැකිය හෝ විද්යුත් තැපෑලෙන් යැවිය හැකිය. ලොග් භ්රමණය සිදු කරනු ලබන්නේ ලොග්රෝටේට් උපයෝගීතාවයෙනි. ඔබට “ /etc/logrotate.conf ” ගොනුවේ ප්රධාන වින්යාසය සොයාගත හැකිය . ගොනු අන්තර්ගතය “ /etc/logrotate.d/ ” ෆෝල්ඩරය තුළ ද සකසනු ලැබේ.
නව නීති ප්රධාන වින්යාස ගොනුවට ලොග් කළ හැක. කෙසේ වෙතත්, “ /etc/logrotate.d/ ” හි වෙනම ගොනුවක් සෑදීම වඩාත් සුදුසුය. පෙරනිමියෙන්, මෙම නාමාවලියෙහි ගොනු කිහිපයක් තිබේ.
rsyslog සේවාවේ ලොග් සඳහා භ්රමණ නීති අඩංගු " /etc/logrotate.d/rsyslog " ගොනුව දෙස බලමු.
පළමුව, රීතියේ ලොග් ගොනුවට යන මාර්ගය අඩංගු විය යුතු අතර පසුව වක්ර වරහන් තුළ සියලුම මාර්ගෝපදේශ යා යුතුය.
- කරකවන්න 7 - තබා ගත යුතු ගොනු ගණන - 7
- දිනපතා - සෑම දිනකම නව ගොනුවක් සාදන්න
- සම්පීඩනය කරන්න - පැරණි ගොනු සම්පීඩනය කර සංරක්ෂණය කරන්න
" /var/log/ " ෆෝල්ඩරයේ ප්රධාන ලොගය " syslog " සහ ලේඛනාගාර 7 ක් ඇති බව ඔබට තිර රුවෙහි දැකිය හැකිය , එය වින්යාස ගොනුවේ නීතිවලට අනුරූප වේ.
" man logrotate " විධානය ක්රියාත්මක කරමින්, logrotate පිළිබඳ වඩාත් සවිස්තරාත්මක විස්තරයක් අත්පොතෙන් ඔබට සොයාගත හැකිය.
ලිනක්ස් ලොග් එකතු කිරීම - journald
ලොග් අස්වනු නෙලීමේ සේවාව 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
ක්රියාත්මක කළ හැකි ගොනුවට යන මාර්ගය ගුණාංගයක් ලෙස ඔබ සඳහන් කළහොත්, උපයෝගීතාව මෙම ගොනුව මඟින් යවන ලද සියලුම පණිවිඩ පෙන්වනු ඇත. 2020 පෙබරවාරි 18 වන දින 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 සමඟ විවෘත කළ හැකිය.