[mrtg]Spook-daemons spawnen?

Pagina: 1
Acties:

  • Paul
  • Registratie: September 2000
  • Laatst online: 11:45
Opgelost, zie onder
Ik probeer hier MRTG aan de gang te krijgen op mijn fileserver, maar erg geweldig gaat dit niet.

Ik heb dezelfde setup ook draaien op een andere fileserver, en daar werkt het wel.

Eerst wat achtergrond: Debian Stable, kernel 2.6.7, mrtg via apt-get (dus 2.9.17, de nieuwste zelf compileren geeft hetzelfde resultaat).

Ik start mrtg via
code:
1
/usr/bin/mrtg --user=mrtg --group=mrtg --logging=/var/log/mrtg/mrtg.log --pid-file=/var/run/mrtg/mrtg.pid /etc/mrtg.cfg
De "--pid-file"-optie werkt nog niet in 2.9 dus daar komt een warning op (op beide systemen) maar mrtg draait wel gewoon.
Alle directories hebben voldoende rechten voor user mrtg om er te mogen schrijven, idem voor de files.

Als ik met ps aux kijk dan is inderdaad het process van mrtg, de logfile vermeld netjes dat mrtg ge-daemon-ized wordt:
code:
1
2
3
2005-05-02 16:46:45 -- Started mrtg
2005-05-02 16:46:45 -- creating /etc/mrtg.pid: Permission denied
Daemonizing MRTG ...

Tja, jammer van die pid-file (user mrtg heeft geenschrijfrechten in /etc) maar ik was toch niet van plan mrtg vaker dan eens te starten.

Maar dan komen de vage meldingen in de log (tail -f ;) )...
code:
1
2
3
4
Daemonizing MRTG ...
ERROR: I Quit! Another copy of mrtg seems to be running. Check /etc/mrtg.pid
Daemonizing MRTG ...
ERROR: I Quit! Another copy of mrtg seems to be running. Check /etc/mrtg.pid

Wtf? je mocht niet in /etc/mrtg.pid schrijven, het bestand bestond ook niet en nu is het er ineens wel.

Ga ik dan met ps aux weer kijken dan zie ik dat de processen precies op */5 gemaakt zijn, en ze zijn van root. Aha, dus daarom kan die pid-file nu wel gemaakt worden. Maar wie spawned die processen?

Ik kan geen parent-id vinden, ps --forest geeft aan dat het een root-node is, ik _had_ een cronjob op */5 maar die is al lang wel (niet in crontab -e, niet in /var/spool/cron, ik heb zelfs een /etc/init.d/cron reload uitgevoerd).

De bestaande cronjobs:
code:
1
2
3
4
* * * * * /bin/mrtg64/mrtg-fake-64.sh eth0
* * * * * /bin/mrtg64/mrtg-fake-64.sh eth1
10 0 * * * /home/mrtg/gbgraph/gbgraph.pl
15 0 1 * * /home/mrtg/gbgraph/archiver.pl /etc/mrtg.cfg
De onderste 2 zijn bedoeld om dagelijks (en maandelijks) de totalen op te slaan, deze zijn stock gedownload en geinstalleerd. De bovenste 2 zijn eigen geschreven scriptjes die iedere minuut het dataverkeer bijhouden, bij gebrek aan 64 tellers in SNMP icm gigabit ethernet.

Edit1: De mrtg.cfg:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
LogDir:         /home/mrtg/log
HtmlDir:        /var/www/mrtg
ImageDir:       /var/www/mrtg/images
IconDir:        /var/www/mrtg/icons
LibAdd:         /usr/lib/perl5/
PathAdd:        /usr/bin/
RunAsDaemon:    Yes
Interval:       5

Options[_]: nobanner,growright,unknaszero

Target[utp]: `cat /tmp/mrtg-stat-eth0`
SetEnv[utp]: MRTG_INT_DESCR="eth0"
MaxBytes[utp]: 125000000
kilo[utp]: 1024
Title[utp]: Traffic Analysis for Intel CSA Gigabit -- zeddicus
PageTop[utp]: <H1>Traffic Analysis Intel CSA Gigabit -- zeddicus</H1>
 <TABLE>
   <TR><TD>System:</TD>     <TD>zeddicus in DHARA</TD></TR>
   <TR><TD>Maintainer:</TD> <TD>pnieuwkamp &lt;pnieuwkamp@zeddicus&gt;</TD></TR>
   <TR><TD>Description:</TD><TD>eth0  </TD></TR>
   <TR><TD>ifType:</TD>     <TD>1000base-T copper gigabit ethernet</TD></TR>
   <TR><TD>Max Speed:</TD>  <TD>1000 Mbits/s</TD></TR>
 </TABLE>

Target[raidlan]: `cat /tmp/mrtg-stat-eth1`
SetEnv[raidlan]: MRTG_INT_DESCR="eth1"
MaxBytes[raidlan]: 12500000
kilo[raidlan]: 1024
Title[raidlan]: Traffic Analysis for Intel e100 RAID-Management -- zeddicus
PageTop[raidlan]: <H1>Traffic Analysis Intel e100 RAID-Management -- zeddicus</H1>
 <TABLE>
   <TR><TD>System:</TD>     <TD>zeddicus in DHARA</TD></TR>
   <TR><TD>Maintainer:</TD> <TD>pnieuwkamp &lt;pnieuwkamp@zeddicus&gt;</TD></TR>
   <TR><TD>Description:</TD><TD>eth1  </TD></TR>
   <TR><TD>ifType:</TD>     <TD>100base-T ethernet</TD></TR>
   <TR><TD>Max Speed:</TD>  <TD>100 Mbits/s</TD></TR>
 </TABLE>

Ik kan er nog een reboot tegenaan gooien om te kijken of de spook-daemons dan stoppen, maar daar is het probleem niet mee opgelost, alleen verholpen :P

Edit2: Het probleem doet zich ook voor na cron gestopt en een minuutje later weer gestart te hebben. Of de --user=mrtg versie ook draait maakt schijnbaar niet uit. Ik ga nu testen of hij nog start als cron _uit_ staat.

Edit3: Met cron uit speelt het probleem niet, ergo het probleem zit hem in cron. Een "find / | grep cron" levert naast /var/spool/cron, /etc/cron.(hourly,weekly,monthly) ook nog een /etc/cron.d, en 3x raden wat daar in stond |:(
Ik denk van wel, maar maar weer eens testen of het nu wel werkt :)

Edit4: Opgelost dus \o/ En nu heb ik ook geen spikes van gemiddeld 40mb/s over 5 minuten op een 100mbit switch meer :P

[ Voor 58% gewijzigd door Paul op 02-05-2005 20:29 ]

"Your life is yours alone. Rise up and live it." - Richard Rahl
Rhàshan - Aditu Sunlock