Vraag over logbestanden

Pagina: 1
Acties:

  • BlubberZwijn
  • Registratie: September 2001
  • Laatst online: 07-04 15:36
Ik heb een probleem, mn server met Linux Redhat erop zit nogal vol (de harde schijf).
Kan ik gewoon de logbestanden messages.1 etc gewoon verwijderen zonder dat ie moeilijk gaat doen?

Verwijderd

umm zover ik weet wel ja.

Verwijderd

.1 .2 .3 .4 enzo zijn gearchiveerde bestanden dus die kunnen weg zolang je diegen maar laat staan zonder een nummer erachter komt et wel goed

  • Wilke
  • Registratie: December 2000
  • Laatst online: 22:37
Ja alleen moet je daarna wel de logdaemon herstarten, de ingewikkelde uitleg waarom zal ik je besparen, maar anders helpt 't niet.

Makkelijkste en domste methode is: file leegmaken, rebooten. Slimmere methode: killall sys[k]logd, beste methode: het opstart-script dat redhat gebruikt om de syslogger te starten opzoeken en dat aanroepen met 'restart' als argument (ws. iets van /etc/init.d/syslogd restart intypen ofzo).

Edit: Owja, niet eens gezien. De files met .1 etc. erachter zijn archives dus die kunnen sowieso pleitte ja. Hoef je ook de logdaemon niet voor te herstarten dus ;)

offtopic:
Stiekem toch de ingewikkelde uitleg:
Als je in Linux een file wist, wordt niet de feitelijke data gewist maar alleen de verwijzing er naartoe. Als er geen links meer naar een file zijn, is de data vanzelf 'verdwenen' omdat het niet meer te openen is! Echter, processen die een bestand voor het deleten al geopend hadden kunnen er nog gewoon uit lezen/in schrijven, totdat ook zij de file sluiten. Op dat moment verdwijnt de data gewoon in het niets, omdat er gewoon geen manier is om nog uit te vinden waar de data is (nou ja, niet zonder undelete tools anyway :) ).
Dat is wat er gebeurt als je de logdaemon niet herstart - de ruimte is gewoon nog 'in gebruik' tot het moment dat het laatste proces de file ook daadwerkelijk sluit - deleten (=feitelijk: een link naar de file verwijderen) is niet genoeg. Bij het herstarten van de logdaemon sluit deze de file, en zal daarna gedwongen worden een nieuwe te beginnen omdat de oude pleitte is.

Hopelijk draagt deze uitleg iets bij aan het begrip van Linux in het algemeen :)

P.S. Dit is dus ook de reden waarom je in Linux wel een in gebruik zijnde file kunt deleten en al dat soort grappen meer waaraan je je in Windows altijd kapot ergert omdat het niet gewoon werkt :P

Verwijderd

Yupz zoals gezegd kunnen die gewoon weg :)

Als je ook de huidige logs wil verwijderen (niet zo verstandig als je het mij vraagt ;) ), vergeet dan niet even syslogd opnieuw op te starten (kill -HUP `cat /var/run/syslogd.pid`)

edit:

Woei en Wilke legt het al helemaal perfect uit, waardoor mijn post best wel nutteloos geworden is :'( :+

  • BlubberZwijn
  • Registratie: September 2001
  • Laatst online: 07-04 15:36
Tnx :) zal het even proberen

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 17-05 14:06

deadinspace

The what goes where now?

En als je de logfiles (zonder .1 enz) leegmaakt ipv wist hoef je de daemons ook niet opnieuw te starten. Zo doet logcheck dat ook.

Leegmaken kan bijvoorbeeld met
code:
1
echo > file.log
Pagina: 1