Ubuntu

Logrotate Ubuntu-zelfstudie

Logrotate Ubuntu-zelfstudie

Logrotate gebruiken op Ubuntu

Logrotate is een systeemhulpprogramma dat wordt gebruikt om logbestanden op Ubuntu te beheren. Wanneer een groot aantal servers door een systeem wordt afgehandeld, wordt een groot aantal logbestanden gegenereerd die enorme schijfruimte in beslag nemen. Logrotate wordt gebruikt om logbestanden automatisch te roteren, comprimeren of verwijderen om schijfruimte te besparen. Enkele functies van Logrotate worden hier genoemd:

In deze zelfstudie leert u hoe u deze tool kunt gebruiken op Ubuntu 17.10.

Logrotate-versie controleren

Logrotate is standaard geïnstalleerd op Ubuntu. Voer de volgende opdracht uit om te controleren of deze is geïnstalleerd of niet:. Hier is de versie van Logrotate: 3.11.0.

$ logroteren

Configuratiebestanden logroteren

De configuratie-informatie van Logrotate wordt op twee plaatsen opgeslagen. Een daarvan is het hoofdconfiguratiebestand dat zich bevindt in /etc/logrotate.conf. Het bevat standaardinstellingen en gebruik omvatten statement om configuratie-informatie van een andere locatie op te halen.  Een andere plaats is een map die alle configuratiebestanden voor services en toepassingen bevat en zich bevindt in /etc/logrotate.d. Wanneer een nieuw pakket in het systeem wordt geïnstalleerd, wordt de logboekrotatie-informatie voor dat pakket op deze locatie opgeslagen.

Open logrotate.conf vanaf de terminal.

$ nano /etc/logrotate.conf

De volgende inhoud wordt getoond:. U kunt logbestanden elk uur, dagelijks, wekelijks, maandelijks en jaarlijks roteren. Hier betekent wekelijks dat logbestanden wekelijks worden geconfigureerd. De volgende regel geeft aan dat logbestanden eigendom zijn van root- en syslog-groepsgebruikers. Rotate 4 geeft aan dat Logrotate 4 weken back-up van logbestanden zal bewaren en lege logbestanden zullen worden aangemaakt na het roteren van oude logbestanden. Als u rotatie 0 instelt, worden alle oude logbestanden verwijderd.  Als je logbestanden wilt comprimeren, verwijder dan de commentaarregel van de compressie door het hash-symbool te verwijderen.

Als u de map van opent /etc/logrotate.d dan verschijnt de volgende lijst met andere logrotate configuratiebestanden.

$ ls /etc/logrotate.d

Voer de opdracht uit om het apache2-configuratiebestand te openen. Er zijn veel soorten regels die worden gebruikt voor configuratie-instellingen. Sommigen van hen worden hier uitgelegd. missingok geeft aan dat er geen foutmelding wordt geschreven als het logbestand ontbreekt en op de hoogte stellen geeft aan dat als het logbestand leeg is, het niet zal roteren. Maak 644 root root wordt gebruikt om logbestanden direct na de rotatie aan te maken, als rootgebruiker en gebruikersgroep root met specifieke machtigingsmodus.

$ nano /etc/logrotate.d/apache2

Een voorbeeldconfiguratiebestand maken

Stel dat u een configuratiebestand wilt maken op de locatie  /home/ubuntu/logrotate.conf waar de instellingen voor logrotate worden ingesteld als: logbestanden roteren maandelijks, roteren 10 keer, comprimeren, weglaten foutmelding als een logbestand ontbreekt en logbestand maken na het verwijderen van oude. Open een willekeurige editor, voeg de volgende instellingen toe en sla het bestand op. Hier, ubuntu is ingelogd gebruikersnaam.

/home/Ubuntu/logs/*.log
maandelijks
missingok
roteren 10
samenpersen
creëren

Voer de volgende opdracht uit om een ​​logbestand met de naam te maken mijnlog.log en in eerste instantie is het logbestand leeg.

$ nano mijnlog.log

Voer de opdracht logrotate uit om te controleren of de logboekvermeldingen zijn gemaakt of niet.

$ logrotate /home/ubuntu/logrotate.conf --state /home/ubuntu/logrotate-state --verbose

De volgende uitvoer verschijnt na het voor de eerste keer uitvoeren van de bovenstaande opdracht:.

Nu open logrotate-status bestand om te zien wat er in het bestand is toegevoegd. Aangezien er nog geen logbestanden zijn gegenereerd, zal de volgende uitvoer verschijnen:.

$ nano home/ubuntu/logrotate-state

Voer de volgende opdracht uit om het logbestand krachtig te roteren:. Maar er zal hier geen verandering verschijnen volgens de vorige uitvoer omdat het rotatie-interval is ingesteld op maandelijks en de tijdsperiode hier niet wordt overschreden.

$ logrotate /home/ubuntu/logrotate.conf --state /home/ubuntu/logrotate-state
--uitgebreid --kracht

Er zijn veel andere logrotate-opties beschikbaar om logbestanden te configureren. U krijgt de lijst met logrotate-opties na het uitvoeren van de volgende opdracht:

$ man logrotate

Enkele andere meest gebruikte logrotate-opties zijn, size, copytruncate, postrotate, maxage en compresscmd. Deze opties worden hier kort uitgelegd.

grootte:

Deze optie wordt gebruikt om de limiet van de logbestandsgrootte in te stellen en logrotate roteert logbestanden wanneer de bestandsgrootte de limiet bereikt of overschrijdt.

copytruncate:

Deze optie wordt gebruikt om een ​​kopie van de originele logbestanden te maken en de oorspronkelijke logbestandsgrootte af te kappen tot 0. Zodat de service met betrekking tot dat specifieke logbestand de log correct in het originele bestand kan schrijven write.

nadraaien:

Deze optie wordt gebruikt om een ​​aangepast shellscript uit te voeren na het voltooien van de rotatie van het logbestand.

maximum:

Deze optie wordt gebruikt om de tijdsduur in te stellen voor het opslaan van oude logbestandinformatie. Het stelt de maximale waarden in dagen in om logbestanden bij te houden en alle logbestanden worden verwijderd wanneer de maximale waarden worden overschreden.

comprimeercmd:

U kunt logbestanden comprimeren door verschillende commando's te gebruiken. Deze optie wordt gebruikt om het type compressiecommando op te geven.

Na het lezen van deze tutorial, kun je Logrotate gebruiken met verschillende opties voor het correct beheren van je logbestanden.

Meer informatie

Logrotate Man-pagina

Hoe FPS te verhogen in Linux?
FPS staat voor Beelden per seconde. De taak van FPS is om de framesnelheid te meten bij het afspelen van video's of speluitvoeringen. In eenvoudige wo...
Top Oculus App Lab-games
Als je eigenaar bent van een Oculus-headset, moet je op de hoogte zijn van sideloading. Sideloading is het proces van het installeren van niet-winkeli...
Top 10 spellen om te spelen op Ubuntu
Het Windows-platform is een van de dominante platforms voor gaming geweest vanwege het enorme percentage games dat tegenwoordig wordt ontwikkeld om Wi...