30Jun

Ako zobraziť a zapísať do súborov systémových protokolov na Ubuntu

Linux zaznamenáva veľké množstvo udalostí na disk, kde sú väčšinou uložené v adresári /var/ v holom texte. Väčšina položiek denníka prechádza démonom systému logovania, syslogd a zapisuje sa do systémového denníka.

Ubuntu obsahuje niekoľko spôsobov zobrazovania týchto protokolov, či už graficky alebo z príkazového riadku. Môžete tiež napísať vlastné protokolové správy do systémového denníka - obzvlášť užitočné v skriptoch.

Zobrazenie protokolov Graficky

Ak chcete zobraziť súbory denníka pomocou ľahko použiteľnej grafickej aplikácie, otvorte aplikáciu Log File Viewer z vášho Dash.

Prehliadač protokolov súborov zobrazuje štandardne počet protokolov vrátane denníka systému( syslog), denníka správcu balíkov( dpkg.log), protokolu autentifikácie( auth.log) a logického protokolu servera( Xorg.0.log).Všetky denníky môžete zobraziť v jednom okne - po pridaní novej udalosti denníka sa automaticky zobrazí v okne a bude tučne označené.Môžete tiež stlačiť kombináciu klávesov Ctrl + F na vyhľadanie správ denníka alebo použiť filtrovanie na filtrovanie denníkov.

Ak máte iné súbory denníkov, ktoré chcete zobraziť - napríklad súbor denníka pre konkrétnu aplikáciu - môžete kliknúť na ponuku Súbor, vybrať Otvoriť a otvoriť súbor denníka. Zobrazí sa vedľa ostatných súborov denníka v zozname a bude monitorovaný a automaticky aktualizovaný, podobne ako ostatné protokoly.

Zápis do systémového denníka

logger pomáha rýchlo napísať správu do systémového denníka jedným jednoduchým príkazom. Napríklad, ak chcete napísať správu Hello World do vášho systémového denníka, použite nasledovný príkaz:

logger "Hello World"

Môžete tiež zadať ďalšie informácie - napríklad ak používate príkaz logger v rámci skriptu,môžete zadať názov skriptu:

logger -t ScriptName "Hello World"

Zobrazenie protokolov v termináli

Príkaz dmesg zobrazuje vyrovnávaciu pamäť pre správu jadra, ktoré je uložené v pamäti. Spustite tento príkaz a dostanete veľa výstupov.

Ak chcete filtrovať tento výstup a vyhľadávať správy, ktoré vás zaujímajú, môžete ho nakúpiť do grep :

dmesg |grep niečo

Môžete tiež napájať výstup z príkazu dmesg na menej , čo vám umožňuje posúvať sa správami vlastným tempom. Ak chcete ukončiť menej, stlačte tlačidlo Q .

dmesg |menej

Ak vyhľadávanie grepu prináša veľké množstvo výsledkov, môžete aj jeho výkon znížiť na menej:

dmesg |grep niečomenej

Okrem otvorenia súborov denníka umiestnených v /var/ sa môže prihlásiť akýkoľvek textový editor, môžete pomocou príkazu vytlačiť obsah protokolu( alebo iného súboru) do terminálu:

mačka /var/log/ syslog

Rovnako akopríkaz dmesg vyššie, bude to produkovať veľké množstvo výstupu. Môžete použiť grep a menej príkazy na prácu s výstupom:

grep niečo /var/log/ syslog

menej /var/log/ syslog

Ďalšie užitočné príkazy zahŕňajú hlavové a zadné príkazy.hlava vytlačí prvé n riadky v súbore, zatiaľ čo chvost vytlačí posledné n riadky v súbore - ak chcete zobraziť najnovšie denníky, príkaz ocasu je obzvlášť užitočný.

hlava -n 10 /var/log/ syslog

chvost -n 10 /var/log/ syslog

Niektoré aplikácie nemusia zapisovať do systémového denníka a môžu vytvárať vlastné súbory denníkov, ktoré môžete manipulovať rovnakým spôsobom - zvyčajne ich nájdete v /var/aj adresár denníka. Napríklad webový server Apache vytvorí adresár /var/log/ apache2 obsahujúci jeho protokoly.