Funkce syslog je jedním z hlavních nástrojů pro správce systému. Zatímco zápis souborů protokolů se zajímavými událostmi je běžnou funkcí jakékoli aplikace, funkce protokolování v celém systému znamená, že se všemi protokoly lze v systému zacházet jako s jedním. Tím ale syslog nekončí. Pomocí těchto nástrojů může sysadmin centralizovat zpracování protokolů v datovém centru předáváním příchozích událostí z aplikací na centrální protokolovací servery, kde je lze zpracovávat ve velkém měřítku.
Centralizované protokolování je přehnané na domácím systému s několika počítači, ale má své výhody již kolem tuctu strojů. Například tucet desktopů, které odesílají všechny své protokolové soubory na centrální protokolový server, znamená, že je nemusí dlouhodobě ukládat, protokoly zaberou místo na disku na logserveru. Administrátor může kontrolovat problémy pouze na jednom místě (případně pomocí automatických reportů), protokoly lze bezpečně uchovat pomocí záloh, efektivněji ukládat pomocí silné komprese a neztratí se na selhání klienta nebo chyba uživatele.
V tomto tutoriálu se naučíte:
- Jak nainstalovat balíček rsyslog na RHEL 8 / CentOS 8.
- Jak ověřit úspěšnou instalaci.
- Jak spustit, zastavit a automaticky spustit službu rsyslog.
- Jak otestovat funkčnost syslog s loggerem.

Požadavky na software a použité konvence
Kategorie | Požadavky, konvence nebo použitá verze softwaru |
---|---|
Systém | RHEL 8 / CentOS 8 |
Software | rsyslog 8 |
Jiné | Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz. |
Konvence | # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel |
Jak nainstalovat syslog na RHEL 8 / CentOS 8 pokyny krok za krokem
Na RHEL 8 / CentOS 8 rsyslog
balíček by měl být nainstalován a spuštěn ve výchozím nastavení. Mohou nastat případy, kdy jej přesto budete muset nainstalovat, například balíček byl rozbit/smazán, vrátit se z jiné služby syslog atd.
rsyslog
je dosažitelný ze základních úložišť. Abyste mohli instalovat balíčky, musíte mít nastavená a dostupná úložiště Subscription Management. Když je to na místě, instalace je pouze jedendnf
příkaz pryč:# dnf install rsyslog -y
- Chcete-li ověřit úspěšnou instalaci, můžete zadat dotaz na
rpm
databáze pro balíček:# rpm -q rsyslog rsyslog-8.37.0-6.el8.x86_64
dnf
měl by také ukazovat stav „čas instalace“ vinfo
výstup pomocí--verbose
možnost:# dnf info rsyslog --verbose [...] Installed Packages Name : rsyslog Version : 8.37.0 Release : 6.el8 Arch : x86_64 Size : 2.2 M Source : rsyslog-8.37.0-6.el8.src.rpm Repo : @System [...] Install time : Thu Dec 27 12:24:35 2018 Installed by : [...]
A nakonec
systemd
by měl vědět o službě (neběží), což znamená, že soubory služby jsou na místě:# systemctl status rsyslog.service ● rsyslog.service - System Logging Service Loaded: loaded (/usr/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled) Active: inactive (dead) Docs: man:rsyslogd(8) http://www.rsyslog.com/doc/
- Pro spuštění, zastavení a zjištění stavu služby používáme
systemctl
. V posledním kroku jsme viděli stav právě nainstalované služby, v neaktivním stavu. Můžeme to spustit pomocí:# systemctl start rsyslog.service
A přestaňte s:
# systemctl stop rsyslog.service
Stav ukazoval, že služba je povolena při instalaci, což znamená, že se spustí automaticky při startu operačního systému. Tuto funkci automatického spuštění můžeme deaktivovat pomocí:
# systemctl disable rsyslog.service
A znovu jej povolte stejným způsobem:
# systemctl enable rsyslog.service
- Pro otestování, zda je služba funkční (tj. přijímá události syslog ze systému), můžeme použít
logger
:# echo "test message from user root" | logger
A podívejte se, jak je zpráva správně odeslaná do hlavního syslog souboru kontrolou posledních řádků
/var/log/messages
:# tail /var/log/messages [...] Dec 27 12:39:46 rhel8 rsyslogd[2636]: [origin software="rsyslogd" swVersion="8.37.0-6.el8" x-pid="2636" x-info="http://www.rsyslog.com"] start Dec 27 12:39:46 rhel8 systemd[1]: Started System Logging Service. Dec 27 12:41:56 rhel8 testuser[2668]: test message from user root
Kde
rhel8
je název hostitele laboratorního stroje,testuser
je původní uživatel, který přešel naroot
, PID naší relace a nakonec naše zpráva odecho
přesměrován nalogger
's STDIN.