{"id":1497,"date":"2026-05-15T17:50:37","date_gmt":"2026-05-15T17:50:37","guid":{"rendered":"https:\/\/sudoit.pl\/?p=1497"},"modified":"2026-05-15T17:50:38","modified_gmt":"2026-05-15T17:50:38","slug":"obsluga-logow-w-systemie-w-linux","status":"publish","type":"post","link":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/","title":{"rendered":"Obs\u0142uga log\u00f3w w systemie w Linux"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Po skonfigurowaniu adresacji IP, routingu, DNS i DHCP przychodzi moment, w kt\u00f3rym sama znajomo\u015b\u0107 konfiguracji przestaje wystarcza\u0107. W praktyce r\u00f3wnie wa\u017cne staje si\u0119 to, \u017ceby umie\u0107 sprawdzi\u0107, <strong>co w\u0142a\u015bciwie dzieje si\u0119 w systemie<\/strong>, gdy us\u0142uga nie startuje, klient nie dostaje odpowiedzi albo serwer odrzuca zapytania. I w\u0142a\u015bnie tutaj do gry wchodz\u0105 <strong>logi<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Logi rejestruj\u0105 zdarzenia zwi\u0105zane z dzia\u0142aniem systemu, us\u0142ug, proces\u00f3w i u\u017cytkownik\u00f3w. To one cz\u0119sto jako pierwsze pokazuj\u0105, dlaczego co\u015b nie dzia\u0142a tak, jak powinno. Dzi\u0119ki nim mo\u017cna sprawdzi\u0107, czy us\u0142uga uruchomi\u0142a si\u0119 poprawnie, czy klient po\u0142\u0105czy\u0142 si\u0119 z serwerem, czy system odrzuci\u0142 zapytanie albo czy pojawi\u0142 si\u0119 problem z uprawnieniami lub konfiguracj\u0105.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"797\" src=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/04\/diagram_sieci-1-1024x797.png\" alt=\"\" class=\"wp-image-1397\" srcset=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/04\/diagram_sieci-1-1024x797.png 1024w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/04\/diagram_sieci-1-300x233.png 300w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/04\/diagram_sieci-1-768x598.png 768w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/04\/diagram_sieci-1-585x455.png 585w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/04\/diagram_sieci-1.png 1077w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">W tym artykule wykorzystam to samo \u015brodowisko laboratoryjne, kt\u00f3re zosta\u0142o zbudowane wcze\u015bniej w serii. Nie b\u0119d\u0119 tu od nowa opisywa\u0142 konfiguracji sieci, routingu i us\u0142ug, poniewa\u017c te elementy zosta\u0142y ju\u017c om\u00f3wione we wcze\u015bniejszych wpisach. Zak\u0142adam, \u017ce \u015brodowisko jest gotowe i hosty potrafi\u0105 si\u0119 ze sob\u0105 komunikowa\u0107. Skupimy si\u0119 natomiast na tym, <strong>jak przegl\u0105da\u0107, filtrowa\u0107, rozdziela\u0107 i centralizowa\u0107 logi<\/strong>, wykorzystuj\u0105c narz\u0119dzia takie jak <strong>rsyslog<\/strong>, <strong>journalctl<\/strong> i <strong>logrotate<\/strong>.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Narz\u0119dzia do rejestrowania log\u00f3w<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Zanim przejdziemy do cz\u0119\u015bci praktycznej om\u00f3wmy sobie kwestie teoretyczne zwi\u0105zane z logami. W systemie Linux dost\u0119pnych jest kilka narz\u0119dzi do zarz\u0105dzania i analizowania log\u00f3w. Cz\u0119\u015b\u0107 z nich odpowiada za bie\u017c\u0105ce zbieranie komunikat\u00f3w, cz\u0119\u015b\u0107 za ich przegl\u0105danie, a cz\u0119\u015b\u0107 za porz\u0105dkowanie i archiwizacj\u0119.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W klasycznych systemach Linux wiele log\u00f3w trafia do katalogu:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/log<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Warto jednak pami\u0119ta\u0107, \u017ce wsp\u00f3\u0142czesne dystrybucje cz\u0119sto korzystaj\u0105 r\u00f3wnolegle z <strong>journald<\/strong>, kt\u00f3ry przechowuje logi we w\u0142asnym formacie binarnym i udost\u0119pnia je przez polecenie <strong>journalctl<\/strong>.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Syslog i Rsyslog<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Syslog<\/strong> to klasyczny mechanizm rejestrowania log\u00f3w w systemach Unix i Linux. Jego zadaniem jest przyjmowanie komunikat\u00f3w od us\u0142ug, proces\u00f3w i j\u0105dra systemu, a nast\u0119pnie zapisywanie ich do odpowiednich plik\u00f3w.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Rsyslog<\/strong> to rozwini\u0119cie klasycznego sysloga. Oferuje wi\u0119cej mo\u017cliwo\u015bci, takich jak:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>filtrowanie komunikat\u00f3w wed\u0142ug \u017ar\u00f3d\u0142a i priorytetu,<\/li>\n\n\n\n<li>zapisywanie log\u00f3w do r\u00f3\u017cnych plik\u00f3w,<\/li>\n\n\n\n<li>przesy\u0142anie log\u00f3w przez sie\u0107,<\/li>\n\n\n\n<li>tworzenie w\u0142asnych szablon\u00f3w plik\u00f3w docelowych.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">W systemie Debian <strong>rsyslog<\/strong> zwykle trzeba doinstalowa\u0107 r\u0119cznie:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt install rsyslog<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Najwa\u017cniejszym plikiem konfiguracyjnym jest:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/rsyslog.conf<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To w\u0142a\u015bnie tam definiuje si\u0119 regu\u0142y m\u00f3wi\u0105ce:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>jakie logi maj\u0105 by\u0107 zbierane,<\/li>\n\n\n\n<li>z jakich us\u0142ug,<\/li>\n\n\n\n<li>z jakim priorytetem,<\/li>\n\n\n\n<li>i gdzie maj\u0105 zosta\u0107 zapisane.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">journald i journalctl<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">W systemach korzystaj\u0105cych z <strong>systemd<\/strong> bardzo wa\u017cnym elementem obs\u0142ugi log\u00f3w jest <strong>journald<\/strong>. To us\u0142uga, kt\u00f3ra zbiera logi systemowe i przechowuje je w ustrukturyzowanej formie. Dzi\u0119ki temu logi mo\u017cna p\u00f3\u017aniej wygodnie filtrowa\u0107 po:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>us\u0142udze,<\/li>\n\n\n\n<li>czasie,<\/li>\n\n\n\n<li>priorytecie,<\/li>\n\n\n\n<li>procesie,<\/li>\n\n\n\n<li>uruchomieniu systemu,<\/li>\n\n\n\n<li>oraz wielu innych polach.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Do przegl\u0105dania tych danych s\u0142u\u017cy polecenie:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To bardzo wygodne narz\u0119dzie administracyjne, bo pozwala szybko sprawdzi\u0107, co dzia\u0142o si\u0119 z konkretn\u0105 us\u0142ug\u0105, bez r\u0119cznego przeszukiwania wielu plik\u00f3w w <strong>\/var\/log<\/strong>.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">logrotate<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Logrotate<\/strong> to narz\u0119dzie odpowiedzialne za <strong>rotacj\u0119 log\u00f3w<\/strong>, czyli:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>zamykanie bie\u017c\u0105cych plik\u00f3w log\u00f3w,<\/li>\n\n\n\n<li>tworzenie nowych,<\/li>\n\n\n\n<li>kompresowanie starszych,<\/li>\n\n\n\n<li>oraz usuwanie archiw\u00f3w po okre\u015blonym czasie.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Bez takiego mechanizmu logi ros\u0142yby w niesko\u0144czono\u015b\u0107 i z czasem zacz\u0119\u0142yby zajmowa\u0107 zbyt du\u017co miejsca na dysku.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">G\u0142\u00f3wny plik konfiguracyjny logrotate to:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/logrotate.conf<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Dodatkowe konfiguracje dla konkretnych us\u0142ug umieszcza si\u0119 zwykle w katalogu:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/logrotate.d<\/code><\/pre>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Priorytety log\u00f3w<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">W systemie Linux logi s\u0105 kategoryzowane tak\u017ce wed\u0142ug poziom\u00f3w wa\u017cno\u015bci. Dzi\u0119ki temu administrator mo\u017ce szybciej odr\u00f3\u017cni\u0107 zwyk\u0142e komunikaty informacyjne od sytuacji krytycznych.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Rsyslog definiuje osiem poziom\u00f3w priorytetu, od najwy\u017cszego do najni\u017cszego:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Emergency (0)<\/strong> \u2013 system jest bezu\u017cyteczny. To sytuacje krytyczne, kt\u00f3re mog\u0105 oznacza\u0107 ca\u0142kowit\u0105 awari\u0119 systemu.<\/li>\n\n\n\n<li><strong>Alert (1)<\/strong> \u2013 wymagane natychmiastowe dzia\u0142anie. Przyk\u0142ad: powa\u017cne uszkodzenie us\u0142ugi lub bazy danych.<\/li>\n\n\n\n<li><strong>Critical (2)<\/strong> \u2013 obejmuje powa\u017cne b\u0142\u0119dy wp\u0142ywaj\u0105ce na stabilno\u015b\u0107 systemu takie jak zatrzymanie serwera DNS, problemy sprz\u0119towe lub przepe\u0142nienie krytycznej partycji.<\/li>\n\n\n\n<li><strong>Error (3)<\/strong> \u2013 to typowe b\u0142\u0119dy administracyjne, na przyk\u0142ad nieudane uruchomienie us\u0142ugi lub b\u0142\u0119dna konfiguracja.<\/li>\n\n\n\n<li><strong>Warning (4)<\/strong> \u2013 ostrze\u017cenia, kt\u00f3re mog\u0105 w przysz\u0142o\u015bci przerodzi\u0107 si\u0119 w powa\u017cniejszy problem, na przyk\u0142ad ma\u0142a ilo\u015b\u0107 wolnego miejsca na dysku.<\/li>\n\n\n\n<li><strong>Notice (5)<\/strong> \u2013 zdarzenia normalne, na przyk\u0142ad restart us\u0142ugi.<\/li>\n\n\n\n<li><strong>Informational (6)<\/strong> \u2013 og\u00f3lne informacje o pracy systemu i us\u0142ug, takie jak udane logowanie u\u017cytkownika.<\/li>\n\n\n\n<li><strong>Debug (7)<\/strong> \u2013 bardzo szczeg\u00f3\u0142owe komunikaty przydatne podczas debugowania.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Sk\u0142adnia pliku \/etc\/rsyslog.conf<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Plik <strong>rsyslog.conf<\/strong> jest oparty na prostym mechanizmie regu\u0142. Ka\u017cda linia sk\u0142ada si\u0119 z dw\u00f3ch podstawowych cz\u0119\u015bci:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>selektora<\/strong><\/li>\n\n\n\n<li><strong>akcji<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Selektor okre\u015bla, <strong>jakie logi nas interesuj\u0105<\/strong>, a akcja m\u00f3wi, <strong>co z nimi zrobi\u0107<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Najcz\u0119\u015bciej selektor ma format:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>FACILITY.PRIORITY<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em>FACILITY &#8211;<\/em> Okre\u015bla podsystem lub us\u0142ug\u0119, z kt\u00f3rej pochodzi dane zdarzenie w logach. Przyk\u0142adowo ftp, kern, cron itp.<\/li>\n\n\n\n<li><em>PRIORITY &#8211;<\/em> Wskazuje na priorytet danego zdarzenia. Mo\u017ce przyjmowa\u0107 jedn\u0105 z 7 warto\u015bci, kt\u00f3re wymieni\u0142em wcze\u015bniej. Dla przypomnienia s\u0105 to: debug\u00a0(7),\u00a0info (6),\u00a0notice\u00a0(5),\u00a0warning\u00a0(4),\u00a0err\u00a0(3),\u00a0crit\u00a0(2),\u00a0alert\u00a0(1), oraz\u00a0emerg\u00a0(0).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">To w\u0142a\u015bnie na tej podstawie mo\u017cesz filtrowa\u0107 logi mniej lub bardziej istotne.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Znaki specjalne u\u017cywane w selektorach<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">W regu\u0142ach <strong>rsyslog<\/strong> mo\u017cna u\u017cywa\u0107 kilku znak\u00f3w specjalnych, kt\u00f3re u\u0142atwiaj\u0105 bardziej precyzyjne filtrowanie log\u00f3w.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Gwiazdka &#8211; *<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Gwiazdka oznacza \u201ewszystko\u201d i mo\u017ce odnosi\u0107 si\u0119 zar\u00f3wno do facility, jak i priority.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Na przyk\u0142ad:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>*.* \/var\/log\/wszystko.log<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">oznacza: zapisuj wszystkie logi ze wszystkich \u017ar\u00f3de\u0142.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Znak r\u00f3wno\u015bci &#8211; =<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">S\u0142u\u017cy do logowania <strong>tylko jednego, konkretnego poziomu priorytetu<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Przyk\u0142ad:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mail.=err \/var\/log\/mail.err<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ta regu\u0142a zapisuje tylko logi us\u0142ugi pocztowej o priorytecie <code>err<\/code> i zapisuje je do pliku mail.err.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Wykrzyknik &#8211; !<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">S\u0142u\u017cy do wykluczania okre\u015blonego priorytetu.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Przyk\u0142ad:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>auth.!err \/var\/log\/auth.log<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ta regu\u0142a zapisuje wszystkie logi z uwierzytelniania opr\u00f3cz tych o poziomie <code>err<\/code>.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Przecinek &#8211; ,<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Przecinek jest u\u017cywany do grupowania log\u00f3w, kt\u00f3rym odpowiada ten sam priorytet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Przyk\u0142ad:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mail,ftp.* \/var\/log\/maillog<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Oznacza to: zapisuj wszystkie logi z us\u0142ug <code>mail<\/code> i <code>ftp<\/code> do jednego pliku.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">\u015arednik &#8211; ;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Pozwala grupowa\u0107 kilka r\u00f3\u017cnych selektor\u00f3w w jednej linii.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Przyk\u0142ad:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>*.=info;*.=notice \/var\/log\/info-notice.log<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Taki wpis zapisze logi o priorytetach <code>info<\/code> i <code>notice<\/code> ze wszystkich us\u0142ug.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Rozdzielanie log\u00f3w na poszczeg\u00f3lne pliki<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Jedn\u0105 z zalet <strong>rsyslog<\/strong> jest mo\u017cliwo\u015b\u0107 bardzo prostego rozdzielania log\u00f3w do osobnych plik\u00f3w. Dzi\u0119ki temu nie trzeba przeszukiwa\u0107 ogromnych, wsp\u00f3lnych dziennik\u00f3w, gdy interesuj\u0105 nas tylko logi jednej us\u0142ugi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W naszym przyk\u0142adzie rozdzielimy logi zwi\u0105zane z us\u0142ug\u0105 <strong>cron<\/strong>. Edytujemy plik:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/rsyslog.conf<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">i dopisujemy na ko\u0144cu w\u0142asn\u0105 regu\u0142\u0119 kieruj\u0105c\u0105 wa\u017cniejsze komunikaty crona od priorytetu info do warning z wykluczeniem priorytetu error, do pliku \/var\/log\/cron-wazne.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"456\" src=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/rsyslog-1024x456.png\" alt=\"\" class=\"wp-image-1500\" srcset=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/rsyslog-1024x456.png 1024w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/rsyslog-300x133.png 300w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/rsyslog-768x342.png 768w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/rsyslog-585x260.png 585w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/rsyslog.png 1027w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Po zapisaniu zmian restartujemy us\u0142ug\u0119:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl restart rsyslog<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Aby sprawdzi\u0107, czy konfiguracja dzia\u0142a, mo\u017cemy wygenerowa\u0107 zdarzenie zwi\u0105zane z us\u0142ug\u0105 <strong>cron<\/strong>, na przyk\u0142ad przez jej restart:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl restart cron<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Je\u015bli wszystko zosta\u0142o ustawione poprawnie, w katalogu <strong>\/var\/log<\/strong> powinien pojawi\u0107 si\u0119 odpowiedni plik z logami crona.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"165\" src=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/cron_logs-1024x165.png\" alt=\"\" class=\"wp-image-1501\" srcset=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/cron_logs-1024x165.png 1024w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/cron_logs-300x48.png 300w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/cron_logs-768x124.png 768w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/cron_logs-585x94.png 585w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/cron_logs.png 1147w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Rotowanie log\u00f3w za pomoc\u0105 narz\u0119dzia logrotate<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Samo gromadzenie log\u00f3w nie wystarczy. Z czasem pliki dziennika mog\u0105 sta\u0107 si\u0119 bardzo du\u017ce, dlatego trzeba zadba\u0107 o ich rotacj\u0119.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W tym celu utworzymy w\u0142asny plik konfiguracyjny dla logrotate<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>touch \/etc\/logrotate.d\/cron<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Plik ten b\u0119dzie zawiera\u0142 konfiguracj\u0119 rotowania log\u00f3w z utworzonego wcze\u015bniej pliku <strong>cron-logs<\/strong>. Wklejamy do niego odpowiedni\u0105 konfiguracj\u0119.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/log\/cron-logs {  \ndaily  \ncreate 0664 root root  \nrotate 20  \ncompress  \n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Nale\u017cy jeszcze nada\u0107 odpowiednie uprawnienia dla pliku<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod 644 \/etc\/logrotate.d\/cron  \nchown root:root \/etc\/logrotate.d\/cron<\/code><\/pre>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Co oznaczaj\u0105 te opcje?<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>daily<\/strong> \u2013 log b\u0119dzie rotowany codziennie<\/li>\n\n\n\n<li><strong>create 0664 root root<\/strong> \u2013 po rotacji zostanie utworzony nowy plik logu z uprawnieniami <code>0664<\/code>, w\u0142a\u015bcicielem <code>root<\/code> i grup\u0105 <code>root<\/code><\/li>\n\n\n\n<li><strong>rotate 20<\/strong> \u2013 system zachowa maksymalnie 20 poprzednich archiw\u00f3w logu<\/li>\n\n\n\n<li><strong>compress<\/strong> \u2013 starsze logi b\u0119d\u0105 kompresowane, zwykle do plik\u00f3w <code>.gz<\/code><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">W praktyce oznacza to, \u017ce plik <code>cron-logs<\/code> b\u0119dzie codziennie zamykany, a jego starsze wersje b\u0119d\u0105 przechowywane w formie archiw\u00f3w. Dzi\u0119ki temu bie\u017c\u0105cy log pozostanie czytelny i niewielki, a starsze wpisy nadal b\u0119dzie mo\u017cna odtworzy\u0107 w razie potrzeby.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Normalnie trzeba by\u0142oby poczeka\u0107 do kolejnego dnia, \u017ceby sprawdzi\u0107 dzia\u0142anie tej konfiguracji, ale logrotate pozwala wymusi\u0107 rotacj\u0119 r\u0119cznie:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>logrotate -vf \/etc\/logrotate.d\/cron<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Je\u015bli wykonasz to polecenie kilka razy, powiniene\u015b zobaczy\u0107 w katalogu <strong>\/var\/log<\/strong> kolejne zrotowane i skompresowane wersje pliku <strong>cron-logs<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"902\" height=\"203\" src=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logrotate.png\" alt=\"\" class=\"wp-image-1502\" srcset=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logrotate.png 902w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logrotate-300x68.png 300w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logrotate-768x173.png 768w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logrotate-585x132.png 585w\" sizes=\"auto, (max-width: 902px) 100vw, 902px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">To bardzo wygodne, bo pozwala od razu sprawdzi\u0107, czy konfiguracja rotacji dzia\u0142a poprawnie, bez czekania na up\u0142yw czasu.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Konfiguracja kolektora log\u00f3w z wykorzystaniem rsyslog<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Jedn\u0105 z bardzo praktycznych funkcji <strong>rsyslog<\/strong> jest mo\u017cliwo\u015b\u0107 <strong>centralizacji log\u00f3w<\/strong>. Dzi\u0119ki temu logi z kilku system\u00f3w mog\u0105 trafia\u0107 do jednego miejsca. To wygodne w wi\u0119kszych \u015brodowiskach, ale bardzo dobrze sprawdza si\u0119 te\u017c w domowym labie, bo pozwala prze\u0107wiczy\u0107 architektur\u0119 podobn\u0105 do tej spotykanej w prawdziwych sieciach.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W naszym \u015brodowisku:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Debian<\/strong> b\u0119dzie pe\u0142ni\u0142 rol\u0119 <strong>centralnego kolektora log\u00f3w<\/strong><\/li>\n\n\n\n<li><strong>CentOS<\/strong> i <strong>Ubuntu<\/strong> b\u0119d\u0105 wysy\u0142a\u0142y do niego zdarzenia<\/li>\n<\/ul>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Konfiguracja kolektora na Debianie<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Na Debianie, kt\u00f3ry b\u0119dzie odbiera\u0142 logi, edytujemy plik:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/rsyslog.conf<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">i odkomentowujemy linie odpowiedzialne za odbieranie log\u00f3w po sieci.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1023\" height=\"582\" src=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow.png\" alt=\"\" class=\"wp-image-1503\" srcset=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow.png 1023w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow-300x171.png 300w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow-768x437.png 768w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow-585x333.png 585w\" sizes=\"auto, (max-width: 1023px) 100vw, 1023px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Dodatkowo tworzymy nowy szablon, kt\u00f3ry b\u0119dzie u\u017cywany do odbierania zdalnie log\u00f3w z serwera CentOS.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$template FromIp,\"\/var\/log\/%FROMHOST-IP%.log\"  \n*.* ?FromIp  \n&amp; ~<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Dzi\u0119ki temu logi z poszczeg\u00f3lnych system\u00f3w nie b\u0119d\u0105 miesza\u0142y si\u0119 w jednym pliku, tylko zostan\u0105 zapisane osobno wed\u0142ug adresu IP nadawcy.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Po zapisaniu zmian restartujemy us\u0142ug\u0119:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl restart rsyslog<\/code><\/pre>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Konfiguracja klient\u00f3w \u2013 CentOS i Ubuntu<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"912\" height=\"662\" src=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow_z_ubuntu.png\" alt=\"\" class=\"wp-image-1504\" srcset=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow_z_ubuntu.png 912w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow_z_ubuntu-300x218.png 300w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow_z_ubuntu-768x557.png 768w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/kolektor_logow_z_ubuntu-585x425.png 585w\" sizes=\"auto, (max-width: 912px) 100vw, 912px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Na systemie <strong>CentOS<\/strong>, kt\u00f3ry b\u0119dzie wysy\u0142a\u0107 logi do Debiana, edytujemy plik <strong>\/etc\/rsyslog.conf<\/strong> i dopisujemy w nim lini\u0119:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>*.* @@172.16.10.1:514<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Podw\u00f3jny znak <strong>@@<\/strong> oznacza wysy\u0142anie log\u00f3w po <strong>TCP<\/strong>.<br>Je\u015bli u\u017cy\u0142by\u015b pojedynczego <strong>@<\/strong>, logi by\u0142yby wysy\u0142ane po <strong>UDP<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To samo mo\u017cesz zrobi\u0107 tak\u017ce na <strong>Ubuntu<\/strong>, je\u015bli chcesz, aby r\u00f3wnie\u017c ten host przesy\u0142a\u0142 swoje zdarzenia do Debiana.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Po zapisaniu konfiguracji restartujemy us\u0142ug\u0119:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl restart rsyslog<\/code><\/pre>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Test wysy\u0142ania log\u00f3w<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Aby wygenerowa\u0107 testowy wpis, mo\u017cemy u\u017cy\u0107 polecenia:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>logger \"test dzia\u0142ania syslogu\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Je\u015bli wszystko dzia\u0142a poprawnie, na Debianie w katalogu <strong>\/var\/log<\/strong> powinien pojawi\u0107 si\u0119 plik zwi\u0105zany z adresem IP nadawcy, a w nim zapisany r\u00f3wnie\u017c nasz testowy komunikat.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"689\" src=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_z_ubuntu-1024x689.png\" alt=\"\" class=\"wp-image-1505\" srcset=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_z_ubuntu-1024x689.png 1024w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_z_ubuntu-300x202.png 300w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_z_ubuntu-768x517.png 768w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_z_ubuntu-1170x788.png 1170w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_z_ubuntu-585x394.png 585w, https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_z_ubuntu.png 1172w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Wykorzystanie narz\u0119dzia journald do obs\u0142ugi log\u00f3w<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Obok klasycznych plik\u00f3w log\u00f3w bardzo wa\u017cnym \u017ar\u00f3d\u0142em informacji w nowoczesnych systemach Linux jest <strong>journald<\/strong>. To w\u0142a\u015bnie tam trafia wiele log\u00f3w us\u0142ug uruchamianych przez systemd.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Podstawowym poleceniem u\u017cywanym do wy\u015bwietlania dziennik\u00f3w jest:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Domy\u015blne wywo\u0142anie poka\u017ce ca\u0142y dost\u0119pny dziennik od najstarszego zdarzenia do najnowszego. Przy du\u017cej liczbie wpis\u00f3w nie zawsze jest to wygodne, dlatego warto zna\u0107 kilka praktycznych filtr\u00f3w.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Logi od najnowszych<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Aby wy\u015bwietli\u0107 logi od najnowszych do najstarszych:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -r<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Ostatnie wpisy<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Aby ograniczy\u0107 liczb\u0119 wy\u015bwietlanych log\u00f3w:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -n 20<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To bardzo przydatne, gdy chcesz zobaczy\u0107 tylko ko\u0144c\u00f3wk\u0119 dziennika.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Filtrowanie po czasie<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Mo\u017cesz ograniczy\u0107 logi do okre\u015blonego czasu, na przyk\u0142ad:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl --since \"25 minutes ago\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To bardzo wygodne przy diagnozowaniu \u015bwie\u017cego problemu.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Filtrowanie po us\u0142udze<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Jedn\u0105 z najpraktyczniejszych funkcji <strong>journalctl<\/strong> jest mo\u017cliwo\u015b\u0107 ograniczenia log\u00f3w do konkretnej us\u0142ugi.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -u networking  \njournalctl _COMM=cron  \njournalctl -u sshd -f<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Dzi\u0119ki temu mo\u017cesz \u0142atwo sprawdzi\u0107:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>logi us\u0142ugi sieciowej,<\/li>\n\n\n\n<li>logi crona,<\/li>\n\n\n\n<li>albo \u015bledzi\u0107 na \u017cywo logi sshd<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">W naszym \u015brodowisku bardzo przydatne by\u0142yby te\u017c polecenia filtruj\u0105ce logi z us\u0142ug, kt\u00f3re konfigurowali\u015bmy.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -u bind9  \njournalctl -u isc-dhcp-server  \njournalctl -u ssh<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Tryb \u015bledzenia log\u00f3w<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Dodanie prze\u0142\u0105cznika <strong>-f<\/strong> dzia\u0142a podobnie do <strong>tail -f<\/strong> i pozwala \u015bledzi\u0107 nowe wpisy na bie\u017c\u0105co.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -u sshd -f<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To bardzo przydatne podczas testowania po\u0142\u0105cze\u0144 i restart\u00f3w us\u0142ug.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Szczeg\u00f3\u0142owy widok wpisu<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Je\u015bli chcesz zobaczy\u0107 pe\u0142n\u0105 struktur\u0119 logu, mo\u017cesz u\u017cy\u0107 formatu <strong>verbose<\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -o verbose -n 1<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To poka\u017ce wszystkie pola danego wpisu, co bywa bardzo pomocne podczas dok\u0142adniejszej analizy.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Logi z konkretnego uruchomienia systemu<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Journald pozwala te\u017c przegl\u0105da\u0107 logi z poszczeg\u00f3lnych start\u00f3w systemu:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl --list-boots  \njournalctl -b -0<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To przydaje si\u0119 wtedy, gdy chcesz sprawdzi\u0107, co dzia\u0142o si\u0119 od ostatniego restartu.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Filtrowanie po priorytecie<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Mo\u017cesz te\u017c ograniczy\u0107 logi do okre\u015blonego poziomu wa\u017cno\u015bci, na przyk\u0142ad tylko do b\u0142\u0119d\u00f3w:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -p err<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To pozwala pomin\u0105\u0107 mniej istotne wpisy i szybciej znale\u017a\u0107 realny problem.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Zarz\u0105dzanie miejscem zajmowanym przez journald<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Dziennik systemd te\u017c z czasem potrafi urosn\u0105\u0107. Warto wi\u0119c zna\u0107 podstawowe polecenia do zarz\u0105dzania jego rozmiarem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sprawdzenie zaj\u0119to\u015bci:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl --disk-usage<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Usuni\u0119cie starych log\u00f3w tak, aby dziennik zajmowa\u0142 maksymalnie 1 GB:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl --vacuum-size=1G<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Usuni\u0119cie log\u00f3w starszych ni\u017c rok:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl --vacuum-time=1years<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To przydatne zw\u0142aszcza na serwerach i maszynach testowych, gdzie logi potrafi\u0105 gromadzi\u0107 si\u0119 przez d\u0142ugi czas.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Podsumowanie<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Logi to jeden z najwa\u017cniejszych element\u00f3w codziennej administracji Linuxem. To w\u0142a\u015bnie one pozwalaj\u0105 zrozumie\u0107, co naprawd\u0119 dzieje si\u0119 w systemie, gdy us\u0142uga nie dzia\u0142a tak, jak powinna. Dzi\u0119ki nim mo\u017cna nie tylko diagnozowa\u0107 b\u0142\u0119dy, ale te\u017c lepiej monitorowa\u0107 stan us\u0142ug, porz\u0105dkowa\u0107 zdarzenia i centralizowa\u0107 informacje z wielu host\u00f3w.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Po skonfigurowaniu adresacji IP, routingu, DNS i DHCP przychodzi moment, w kt\u00f3rym sama znajomo\u015b\u0107 konfiguracji przestaje wystarcza\u0107. W praktyce r\u00f3wnie wa\u017cne&hellip;<\/p>\n","protected":false},"author":3,"featured_media":1498,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[26],"tags":[32],"class_list":["post-1497","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux","tag-linux"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Obs\u0142uga log\u00f3w w systemie w Linux - SudoIT<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Obs\u0142uga log\u00f3w w systemie w Linux - SudoIT\" \/>\n<meta property=\"og:description\" content=\"Po skonfigurowaniu adresacji IP, routingu, DNS i DHCP przychodzi moment, w kt\u00f3rym sama znajomo\u015b\u0107 konfiguracji przestaje wystarcza\u0107. W praktyce r\u00f3wnie wa\u017cne&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/\" \/>\n<meta property=\"og:site_name\" content=\"SudoIT\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-15T17:50:37+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-15T17:50:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_w_linuxie-1024x683.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"683\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Patryk\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Patryk\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/\"},\"author\":{\"name\":\"Patryk\",\"@id\":\"https:\\\/\\\/sudoit.pl\\\/#\\\/schema\\\/person\\\/62b95033a7a8937fbb692e81d5e0b8bd\"},\"headline\":\"Obs\u0142uga log\u00f3w w systemie w Linux\",\"datePublished\":\"2026-05-15T17:50:37+00:00\",\"dateModified\":\"2026-05-15T17:50:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/\"},\"wordCount\":2150,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sudoit.pl\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/logi_w_linuxie.png\",\"keywords\":[\"linux\"],\"articleSection\":[\"Linux\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/\",\"url\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/\",\"name\":\"Obs\u0142uga log\u00f3w w systemie w Linux - SudoIT\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sudoit.pl\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sudoit.pl\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/logi_w_linuxie.png\",\"datePublished\":\"2026-05-15T17:50:37+00:00\",\"dateModified\":\"2026-05-15T17:50:38+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/sudoit.pl\\\/#\\\/schema\\\/person\\\/62b95033a7a8937fbb692e81d5e0b8bd\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/#primaryimage\",\"url\":\"https:\\\/\\\/sudoit.pl\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/logi_w_linuxie.png\",\"contentUrl\":\"https:\\\/\\\/sudoit.pl\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/logi_w_linuxie.png\",\"width\":1536,\"height\":1024},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/2026\\\/05\\\/15\\\/obsluga-logow-w-systemie-w-linux\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/sudoit.pl\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Obs\u0142uga log\u00f3w w systemie w Linux\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/sudoit.pl\\\/#website\",\"url\":\"https:\\\/\\\/sudoit.pl\\\/\",\"name\":\"SudoIT\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/sudoit.pl\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/sudoit.pl\\\/#\\\/schema\\\/person\\\/62b95033a7a8937fbb692e81d5e0b8bd\",\"name\":\"Patryk\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d933a3eef1e4f0026a85747cca61f1ae9043bf2753554c0427f1a2dc8ca46096?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d933a3eef1e4f0026a85747cca61f1ae9043bf2753554c0427f1a2dc8ca46096?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d933a3eef1e4f0026a85747cca61f1ae9043bf2753554c0427f1a2dc8ca46096?s=96&d=mm&r=g\",\"caption\":\"Patryk\"},\"url\":\"https:\\\/\\\/sudoit.pl\\\/index.php\\\/author\\\/patryk\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Obs\u0142uga log\u00f3w w systemie w Linux - SudoIT","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/","og_locale":"en_US","og_type":"article","og_title":"Obs\u0142uga log\u00f3w w systemie w Linux - SudoIT","og_description":"Po skonfigurowaniu adresacji IP, routingu, DNS i DHCP przychodzi moment, w kt\u00f3rym sama znajomo\u015b\u0107 konfiguracji przestaje wystarcza\u0107. W praktyce r\u00f3wnie wa\u017cne&hellip;","og_url":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/","og_site_name":"SudoIT","article_published_time":"2026-05-15T17:50:37+00:00","article_modified_time":"2026-05-15T17:50:38+00:00","og_image":[{"width":1024,"height":683,"url":"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_w_linuxie-1024x683.png","type":"image\/png"}],"author":"Patryk","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Patryk","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/#article","isPartOf":{"@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/"},"author":{"name":"Patryk","@id":"https:\/\/sudoit.pl\/#\/schema\/person\/62b95033a7a8937fbb692e81d5e0b8bd"},"headline":"Obs\u0142uga log\u00f3w w systemie w Linux","datePublished":"2026-05-15T17:50:37+00:00","dateModified":"2026-05-15T17:50:38+00:00","mainEntityOfPage":{"@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/"},"wordCount":2150,"commentCount":0,"image":{"@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/#primaryimage"},"thumbnailUrl":"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_w_linuxie.png","keywords":["linux"],"articleSection":["Linux"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/","url":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/","name":"Obs\u0142uga log\u00f3w w systemie w Linux - SudoIT","isPartOf":{"@id":"https:\/\/sudoit.pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/#primaryimage"},"image":{"@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/#primaryimage"},"thumbnailUrl":"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_w_linuxie.png","datePublished":"2026-05-15T17:50:37+00:00","dateModified":"2026-05-15T17:50:38+00:00","author":{"@id":"https:\/\/sudoit.pl\/#\/schema\/person\/62b95033a7a8937fbb692e81d5e0b8bd"},"breadcrumb":{"@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/#primaryimage","url":"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_w_linuxie.png","contentUrl":"https:\/\/sudoit.pl\/wp-content\/uploads\/2026\/05\/logi_w_linuxie.png","width":1536,"height":1024},{"@type":"BreadcrumbList","@id":"https:\/\/sudoit.pl\/index.php\/2026\/05\/15\/obsluga-logow-w-systemie-w-linux\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/sudoit.pl\/"},{"@type":"ListItem","position":2,"name":"Obs\u0142uga log\u00f3w w systemie w Linux"}]},{"@type":"WebSite","@id":"https:\/\/sudoit.pl\/#website","url":"https:\/\/sudoit.pl\/","name":"SudoIT","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sudoit.pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/sudoit.pl\/#\/schema\/person\/62b95033a7a8937fbb692e81d5e0b8bd","name":"Patryk","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d933a3eef1e4f0026a85747cca61f1ae9043bf2753554c0427f1a2dc8ca46096?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d933a3eef1e4f0026a85747cca61f1ae9043bf2753554c0427f1a2dc8ca46096?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d933a3eef1e4f0026a85747cca61f1ae9043bf2753554c0427f1a2dc8ca46096?s=96&d=mm&r=g","caption":"Patryk"},"url":"https:\/\/sudoit.pl\/index.php\/author\/patryk\/"}]}},"_links":{"self":[{"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/posts\/1497","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/comments?post=1497"}],"version-history":[{"count":2,"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/posts\/1497\/revisions"}],"predecessor-version":[{"id":1506,"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/posts\/1497\/revisions\/1506"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/media\/1498"}],"wp:attachment":[{"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/media?parent=1497"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/categories?post=1497"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sudoit.pl\/index.php\/wp-json\/wp\/v2\/tags?post=1497"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}