Vymazání podadresařů ve /var/logs/

Hanka31al

Vymazání podadresařů ve /var/logs/
« kdy: 16. 08. 2017, 14:48:09 »
Chtela bych se zeptat, jestly smazani obsahu slozky /var/log/ rekurzivne vse (pod rootem samozrejme) mohou ohrozit beh porogramu ostatnich uzivatelu (jedna se o programy, ktere bezi dlouho a zpracovavaji data v uzivatelske slozce, nikam se neprihlasuji), co se tim muze ovlivnit. Prihlasen je jeden nebo dva uzivatele jen a v dobe mazani se nikdo neprihlasuje-neodhlasuje.

Diky Hanka
« Poslední změna: 16. 08. 2017, 18:22:28 od Petr Krčmář »


David1234

Re:Vymazani slozky /var/logs/
« Odpověď #1 kdy: 16. 08. 2017, 15:57:11 »
Myslíš tím rekurzivním smazáním smazání také složek a podsložek? Minimálně těch složek bych se totiž docela bál... Nějaký daemon by pak nemusel po restartu naběhnout protože nenajde cestu kam má ukládat logy.

Miroslav Šilhavý

Re:Vymazani slozky /var/logs/
« Odpověď #2 kdy: 16. 08. 2017, 16:08:06 »
Chtela bych se zeptat, jestly smazani obsahu slozky /var/log/ rekurzivne vse (pod rootem samozrejme) mohou ohrozit beh porogramu ostatnich uzivatelu (jedna se o programy, ktere bezi dlouho a zpracovavaji data v uzivatelske slozce, nikam se neprihlasuji), co se tim muze ovlivnit. Prihlasen je jeden nebo dva uzivatele jen a v dobe mazani se nikdo neprihlasuje-neodhlasuje.

1. adresáře bych nemazal, jednotlivé software si je znovu nezaloží, nenastaví práva.
2. odrotované logy .1 + .2.bz2 apod. lze smazat bezpečně
3. aktivní logy (bez suffixu) se smazat podaří, ale některé daemony je založí znovu až po kill -SIGHUP nebo po jiném pokynu k reloadu / restartu; některé to udělají automaticky i za běhu, nelze na to spoléhat

Martinnn

Re:Vymazani slozky /var/logs/
« Odpověď #3 kdy: 16. 08. 2017, 16:30:38 »
3. aktivní logy (bez suffixu) se smazat podaří, ale některé daemony je založí znovu až po kill -SIGHUP nebo po jiném pokynu k reloadu / restartu; některé to udělají automaticky i za běhu, nelze na to spoléhat

Preto radsej pouzivam ">/var/log/logfile" namiesto "rm -rf /var/log/file". Obzvlast pri velkych logoch je to lepsie, pretoze tak sa ihned uvolni aj filespace narozdiel od pouzitia rm, kde sa zvycajne musi cakat kym samotna app/daemon uvolni fd na dany log.

Hanka31al

Re:Vymazani slozky /var/logs/
« Odpověď #4 kdy: 16. 08. 2017, 17:05:21 »
Smazala jsem cely obsah adresare /var/log/
To ze se neukladaji logy u nekterych programu nevadi, spis mi jde o to, aby to nenabouralo dlouhodobe procesy, ktere bezi pod uzivateli.

Novych souboru-slozek je ted ve /var/log/ o dost mene.


Miroslav Šilhavý

Re:Vymazani slozky /var/logs/
« Odpověď #5 kdy: 16. 08. 2017, 17:12:41 »
Novych souboru-slozek je ted ve /var/log/ o dost mene.

:) no právě. Pokud procesy běží pod uživateli, dalo se to odhadnout (před vymazáním) podle práv k logu.
Jak píše Martinnn, lepší by bylo použít >/logfile (bourne shells) nebo univerzálnější truncate -s0 /logfile

Re:Vymazani slozky /var/logs/
« Odpověď #6 kdy: 16. 08. 2017, 17:21:04 »
3. aktivní logy (bez suffixu) se smazat podaří, ale některé daemony je založí znovu až po kill -SIGHUP nebo po jiném pokynu k reloadu / restartu; některé to udělají automaticky i za běhu, nelze na to spoléhat
Asi každému nebude jasné, co se za tímhle skrývá. Znamená to, že od logu, který má nějaký program otevřený, se sice smaže název souboru, ale ten soubor zůstane na disku dál, protože ho má ten program otevřený, a ten program bude dál zapisovat do toho smazaného souboru. Teprve až daný program ten soubor uzavře, soubor se smaže (pokud mu mezi tím zase nepřidělíte nějaký název), a program začne logovat do nového souboru. Má to tedy dvě podstatné nevýhody – za prvé tím okamžitě neuvolníte místo, které log zabírá (což bude předpokládám důvod, proč logy mažete), za druhé tím můžete přijít o spoustu záznamů v logu ještě v budoucnosti, protože pokud logy nerotujete nebo rotujete v delším intervalu, ten program nebude mít žádný důvod soubor zavírat a klidně do toho smazaného souboru bude logovat ještě několik dní – a až pak na rotaci logů dojde, vše se smaže.

Miroslav Šilhavý

Re:Vymazani slozky /var/logs/
« Odpověď #7 kdy: 16. 08. 2017, 17:31:42 »
Ještě mě napadá, že před smazáním by bývalo bylo prozíravé zjistit si, jaký proces kam zapisuje: lsof | grep /var/log

Jenda

Re:Vymazani slozky /var/logs/
« Odpověď #8 kdy: 16. 08. 2017, 17:40:35 »
Smazala jsem cely obsah adresare /var/log/
To ze se neukladaji logy u nekterych programu nevadi, spis mi jde o to, aby to nenabouralo dlouhodobe procesy, ktere bezi pod uzivateli.

Tak třeba Apache (v defaultní konfiguraci na většině distribucí) nenaběhne, protože bude chtít otevřít /var/log/apache2/access.log, ale ten adresář neexistuje - a vytvořit ho buď nenapadne, nebo vůbec nepůjde (protože běží pod uživatelem, který do /var/log nemá právo zápisu).

erik80

Re:Vymazání podadresařů ve /var/logs/
« Odpověď #9 kdy: 17. 08. 2017, 18:59:17 »
find /var/log -type f -name "*.log" -exec truncate -s 0 {} \;