Ukážeme vám, jak používat Logrotate ke správě protokolů na Ubuntu. Logrotate je nástroj používaný správci systému k usnadnění správy velkých souborů protokolu generovaných systémovými službami. Nejdůležitějšími funkcemi logrotate jsou automatická rotace protokolů, komprese protokolů, odstranění protokolů a zasílání souborů protokolu poštou. V tomto tutoriálu vám ukážeme, jak používat logrotate ke správě souborů protokolu generovaných službami běžícími na vašem Linux VPS.
1. Připojte se přes SSH a zkontrolujte, zda je nainstalován Logrotate
Než začneme, ujistěte se, že je na vašem serveru nainstalován logrotate. Připojte se k serveru přes SSH a zkontrolujte, zda je logrotate nainstalováno pomocí následujícího příkazu:
sudo dpkg -l | grep logrotate
2. Znovu synchronizujte index balíčků a upgradujte všechny balíčky
Pokud není nainstalován na vašem Ubuntu VPS, pomůžeme vám jej nainstalovat. Nejprve znovu synchronizujte index balíčků a upgradujte všechny balíčky aktuálně nainstalované v systému na nejnovější verzi pomocí příkazů níže:
sudo apt-get update sudo apt-get upgrade
3. Nainstalujte Logrotate
Jakmile správce balíčků dokončí aktualizaci, pokračujte a nainstalujte logrotate:
sudo apt-get install logrotate
4. Ověřte instalaci
Ověřte, zda byla instalace úspěšná:
sudo logrotate
Měli byste obdržet zprávu jako je následující:
logrotate 3.8.7 - Copyright (C) 1995-2001 Red Hat, Inc. This may be freely redistributed under the terms of the GNU Public License Usage: logrotate [-dfv?] [-d|--debug] [-f|--force] [-m|--mail=command] [-s|--state=statefile] [-v|--verbose] [--version] [-?|--help] [--usage] [OPTION...]
Hlavní konfigurační soubor pro logrotate je /etc/logrotate.conf
zatímco konfigurační soubory specifické pro aplikaci jsou uloženy v /etc/logrotate.d
adresář.
5. Možnosti konfigurace
V závislosti na tom, jaké služby jsou nainstalovány na vašem Ubuntu VPS, /etc/logrotate.d
adresář může obsahovat více či méně konfiguračních souborů. Pokud jste to ještě nezkontrolovali, nyní je čas uvést obsah tohoto adresáře a seznámit se se službami, pro které je logrotate nakonfigurováno. Jako příklad použijeme /etc/logrotate.d/dpkg
soubor, který vám ukáže některé z nejdůležitějších konfiguračních možností. Otevřete soubor pomocí textového editoru:
sudo nano /etc/logrotate.d/dpkg
Obsah konfiguračního souboru by měl být podobný níže uvedenému:
/var/log/dpkg.log { monthly rotate 12 compress delaycompress missingok notifempty create 644 root root } /var/log/alternatives.log { monthly rotate 12 compress delaycompress missingok notifempty create 644 root root }
Logrotate kontroluje /var/log/dpkg.log
a /var/log/alternatives.log
měsíčně. Doba rotace je specifikována pomocí monthly
volba. Další možnosti rotace jsou daily
, hourly
, weekly
a yearly
.
rotate
říká, kolikrát by se měly soubory protokolu otočit, než budou odstraněny nebo zaslány na konkrétní adresu. V tomto příkladu se soubory protokolu 12krát otočí. V případě, že rotate
je nastavena na 0, staré soubory protokolu jsou odstraněny, nikoli otočeny.
Další možností je compress
který určuje, že stará verze souborů protokolu by měla být komprimována. Alternativní možností je nocompress
a in lze použít v případech, kdy by staré verze souborů protokolu neměly být komprimovány.
delaycompress
určuje, že komprese předchozího souboru protokolu by měla být odložena na další cyklus rotace.
missingok
a notifempty
se používají k přeskočení rotace bez zobrazení chybové zprávy, pokud soubor protokolu chybí, a k přeskočení rotace, pokud je soubor protokolu prázdný.
create 644 root root
se používá k vytvoření souboru protokolu ihned po otočení pomocí specifického režimu, vlastníka a skupiny.
Další možností, která v tomto příkladu není uvedena a která se vám může hodit ve vašich vlastních konfiguracích, je size
. Tato možnost vám umožňuje nakonfigurovat logrotate tak, aby rotovalo soubory protokolu pouze v případě, že jsou větší než určitá velikost. Velikost lze zadat v bajtech, kilobajtech, megabajtech a gigabajtech. Proto size 100
, size 100k
, size 100M
a size 100G
jsou všechny platné.
Další údaje a možnosti konfigurace najdete na manuálové stránce logrotate.
man logrotate
Ve výchozím nastavení se logrotate spouští jako denní úloha cron. Podrobnosti o úloze cron naleznete v /etc/cron.daily/logrotate
. Úlohu cron pro logrotate můžete volně nastavit tak, aby se spouštěla každou hodinu, týden, rok nebo v určitou dobu a/nebo den.
Samozřejmě nemusíte používat Logrotate ke správě protokolů na Ubuntu, pokud používáte jednu z našich spravovaných hostingových služeb Ubuntu, v takovém případě můžete jednoduše požádat naše zkušené administrátory Linuxu, aby vám logrotate nakonfigurovali. Jsou k dispozici 24×7 a okamžitě se postarají o váš požadavek.
PS. Pokud se vám tento příspěvek líbil. on Používejte Logrotate ke správě protokolů na Ubuntu, sdílejte je se svými přáteli na sociálních sítích pomocí tlačítek vlevo nebo jednoduše zanechte odpověď níže. Děkuji.