A logrotate a Linux parancssori eszköze a naplóbejegyzések kezelésére. Ez az eszköz segít különböző típusú feladatok végrehajtásában a rendszergazda által a naplóbejegyzéseken, mint például az elforgatott naplófájlok korlátozása, az elforgatott naplófájlok tömörítése, a szükségtelen naplófájlok törlése, az adott shell szkript végrehajtása a naplófájlok alapján stb. Ebben az oktatóanyagban több példán keresztül bemutatjuk a „logorate” parancsot a naplófájlok különböző módokon történő kezelésére.
Ellenőrizze a telepített Logrotate verziót
A „logrotate” parancs alapértelmezés szerint telepítve van az Ubuntu operációs rendszer új verziójában. Futtassa a következő parancsot a „logrotate” parancs telepített verziójának ellenőrzéséhez:
$ logrotate --változat
A különböző alkalmazások naplóbejegyzései alapértelmezés szerint a „/var/log” mappában vannak tárolva. A következő hasonló tartalom jelenik meg, ha ellenőrzi a mappa tartalmát.
$ ls / volt / log
Állítsa be a „Logrotate” konfigurációt
Beállítási érték | Célja |
naponta/hetente/havonta/évente | Meghatározza a naplók elforgatásának időtartamát. |
számot forgatni | Meghatározza a megőrzendő fájlok számát a régi naplófájlok eltávolítása előtt. |
borogatás | A naplófájlok tömörítésére szolgál. |
tömörítéscmd | A „tömörítés” parancs beállítására szolgál. A gzip az alapértelmezett parancs. |
kitömöríteni cmd | A „kicsomagolás” parancs beállítására szolgál. A gunzip az alapértelmezett parancs. |
késleltetett tömörítés | A naplófájlok tömörítési folyamatának késleltetésére szolgál. |
értesítés üres | Arra használják, hogy ne forgatják el az üres fájlt. |
missingok | Ha be van állítva, a hiányzó naplófájlokhoz nem jön létre hiba. |
méret | A naplófájlok elforgatásának korlátjának beállítására szolgál. |
dátumszöveg | A forgatás fájl utótagjaként egy dátumérték hozzáadására szolgál. |
áttörni | Az eredeti fájl másolatának létrehozására szolgál. |
előforgatva | A naplófájlok elforgatása előtt egy szkript futtatására szolgál. |
utólagos forgatás | A naplófájlok elforgatása után egy szkript futtatására szolgál. |
teremt | A naplófájlok root jogosultsággal történő létrehozására szolgál. |
Szintaxis:
A „logrotate” parancs szintaxisa a következő:
logrotate [ VÁLASZTÁSI LEHETŐSÉG ] config_file_path
A „logrotate” paranccsal különböző típusú opciók használhatók különböző célokra.
Logrotate Options
A „logrotate” parancs néhány hasznos opciója az alábbiakban található:
-f, –erő | Szükség esetén erőteljes forgatásra használják. |
-d, -debug | A hibakeresési mód engedélyezésére szolgál a forgatás során. |
-m, –mail |
E-mail küldésére szolgál a forgatás során. |
-s, –state |
Alternatív állapotú fájlokhoz használatos. |
-használat | A használati információk kinyomtatására szolgál. |
-?, -Segítség | Segítő üzenetek kinyomtatására szolgál. |
-v, –bőbeszédű | Bőbeszédű módban történő nyomtatáshoz használatos. |
Logrotate konfigurációs fájl
A fő logrotate konfigurációs fájl az „/etc/logrotate.conf” helyen található. Futtassa a következő parancsot a fájl megnyitásához a nano szerkesztőben:
$ nano / stb / logrotate.confA „logrotate” parancs alapértelmezett beállítása a „logrotate.conf” fájlban látható. Az „include” direktíva a fájlban az „/etc/logrotate.d” könyvtárban található konfiguráció lekérésére szolgál.
1. példa: Hozzon létre egy egyszerű logrotate konfigurációs fájlt
Hozzon létre egy mintanaplófájlt „/var/log/test.log” néven a mintanaplóadatokkal. Futtassa a következő parancsot a nano szerkesztő megnyitásához, és hozzon létre egy új „logrotate.conf” fájlt az „/etc/tmp” mappa helyén. Ha korábban nem hozta létre, hozza létre a „/tmp” mappát root jogosultságokkal.
$ nano / stb / tmp / logrotate.confAdja hozzá a következő tartalmat a „/var/log/test.log” fájl fájljához. A beállítás szerint a „test.log” fájl naponta elforgatásra kerül, ha a fájl mérete meghaladja az 5K-t:
/ volt / log / test.log {napi
méret 5K
övé gyökér adm
}
Futtassa a következő parancsot a naplófájl méretének ellenőrzéséhez:
$ ls -l / volt / log / test.logA konfigurációs fájl létrehozása után futtassa a „logrotate” parancsot.
$ sudo logrotate / stb / tmp / logrotate.confFuttassa újra a következő parancsot a naplófájl méretének ellenőrzéséhez a „logrotate” parancs végrehajtása után:
$ ls -l / volt / log / test.logA „test.log” fájl mérete 1K+. Tehát a konfigurációs beállítások alapján nem történik elforgatás.
Módosítsa a méret értékét 1K-ra az „/etc/tmp/logrotate.conf” fájlban, és futtassa újra az „ls” parancsot a „/var/log/test.log” fájl méretének ellenőrzéséhez. A kimenet szerint a naplófájl elforgatásra kerül és törlésre kerül, mert túllépi a méretkorlátot.
2. példa: A Logrotate Copytruncate használata
Hozzon létre vagy módosítsa az „/etc/tmp/logrotate.conf” fájlt a következő beállításokkal a copytruncate használatának bemutatásához. Az új beállításoknak megfelelően a logrotate másolatot készít az eredeti fájlról úgy, hogy az eredeti fájl méretét nullára állítja.
/ volt / log / test.log {forog 5
méret 1 k
áttörni
övé gyökér adm
}
Futtassa a következő parancsot a „test.log” fájl méretének ellenőrzéséhez:
$ ls -l / volt / log / test.logA konfigurációs fájl létrehozása után futtassa a „logrotate” parancsot.
$ sudo logrotate / stb / tmp / logrotate.confFuttassa újra a következő parancsot a „test.log” fájl méretének ellenőrzéséhez a „logrotate” parancs végrehajtása után:
$ ls -l / volt / log / test.logAz eredeti fájlméret 0 lesz a „logrotate” parancs végrehajtása után a copytruncate beállításhoz.
3. példa: Logrotate Compress használata
A tömörítés használatának megjelenítéséhez hozza létre vagy módosítsa az „/etc/tmp/logrotate.conf” fájlt a következő beállításokkal. Az új beállításoknak megfelelően a logrotate létrehoz egy tömörített fájlt az eredeti fájlból.
/ volt / log / test.log {forog 5
méret 1 k
borogatás
teremt 770 gyökér adm
}
Futtassa a következő parancsot a „/var/log” fájlok és mappák listájának ellenőrzéséhez:
$ ls / volt / log /A konfigurációs fájl létrehozása után futtassa a „logrotate” parancsot.
$ sudo logrotate / stb / tmp / logrotate.confFuttassa újra a következő parancsot a „/var/log” fájlok és mappák listájának ellenőrzéséhez:
$ ls / volt / log /A „test.log” fájl tömörített fájlja létrejön „test.log.1.gz” néven, és az eredeti fájl eltávolításra kerül.
4. példa: Logrotate Dateext használata
A dateext használatának megjelenítéséhez hozza létre vagy módosítsa az „/etc/tmp/logrotate.conf” fájlt a következő beállításokkal. Az új beállításoknak megfelelően a logrotate az eredeti fájl tömörítési fájlját hozza létre a dátum értékkel.
volt / log / test.log {övé gyökér adm
forog 5
méret 1 k
borogatás
teremt 770 gyökér adm
dátumszöveg
}
A konfigurációs fájl létrehozása után futtassa a „logrotate” parancsot.
$ sudo logrotate / stb / tmp / logrotate.confFuttassa a következő parancsot a „/var/log” fájlok és mappák listájának ellenőrzéséhez:
$ ls -l / volt / log /A „test.log” fájl tömörített fájlja létrejön „test.log.20240129.gz” néven, és az eredeti fájl eltávolításra kerül.
5. példa: Logrotate Maxage használata
A maxage használatának bemutatásához hozza létre vagy módosítsa az „/etc/tmp/logrotate.conf” fájlt a következő beállításokkal. A beállításoknak megfelelően a logrotate öt naplóbejegyzést tart meg, ha a naplófájl mérete egy nap után meghaladja az 1K-t.
/ volt / log / test.log {övé gyökér adm
forog 5
méret 1 k
borogatás
maxage 1
}
Futtassa a következő „logrotate” parancsot, hogy a kimenetet egy másik „out.log” nevű naplófájlban tárolja:
$ sudo logrotate -s = / volt / log / ki.log / stb / tmp / logrotate.confA következő kimenet szerint az „out.log” fájl a „logrotate” parancs végrehajtása után jön létre:
6. példa: A Logrotate Missingok használata
Hozza létre vagy módosítsa az „/etc/tmp/logrotate.conf” fájlt a következő beállításokkal. Itt a „testfile.log” naplófájl nem létezik a „/var/log” mappában.
/ volt / log / testfile.log {övé gyökér adm
forog 5
méret 1 k
borogatás
}
A „logrotate” parancs végrehajtása után hibaüzenet jelenik meg.
Adja hozzá a „missingok” beállítást a logrotate konfigurációs fájlhoz, és futtassa újra a „logrotate” parancsot. A hiányzó naplófájlhoz nem kerül nyomtatásra hiba.
7. példa: Logrotate Előforgatás használata
Hozzon létre egy „test.sh” nevű Bash-fájlt a következő szkripttel, amely egy egyszerű üzenetet nyomtat. A fájl ebben a logrotate példában az előforgatás használatának bemutatására szolgál a logrotate konfigurációs fájlban.
teszt.sh#!/bin/bash
visszhang 'logrotate examples...'
A fájl létrehozása után futtassa a következő parancsot a fájl végrehajtási engedélyének beállításához az összes felhasználó számára:
$ chmod a+x / itthon / megértés / teszt.shMost hozza létre vagy módosítsa az „/etc/tmp/logrotate.conf” fájlt a következő beállításokkal. A beállításoknak megfelelően a logrotate öt naplóbejegyzést tart meg, ha a naplófájl mérete meghaladja az 1K-t, és a „test.sh” fájl végrehajtásra kerül az elforgatás előtt.
/ volt / log / test.log {övé gyökér adm
forog 5
méret 1 k
előforgatva
/ itthon / megértés / teszt.sh
végirat
}
A „test.sh” fájl kimenete a „logrotate” parancs végrehajtása után jelenik meg:
Következtetés
Ebben az oktatóanyagban a „logrotate” parancs különféle felhasználási módjait mutatjuk be több példán keresztül, amelyek segítenek a Linux-felhasználóknak a parancs használatának megismerésében és a naplófájlok megfelelő kezelésében.