]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
Corrected guardian
authormaniacikarus <maniacikarus@ea5c0bd1-69bd-2848-81d8-4f18e57aeed8>
Wed, 23 Jan 2008 18:00:28 +0000 (18:00 +0000)
committermaniacikarus <maniacikarus@ea5c0bd1-69bd-2848-81d8-4f18e57aeed8>
Wed, 23 Jan 2008 18:00:28 +0000 (18:00 +0000)
build lcd4linux
startet integrating collection deamon

git-svn-id: http://svn.ipfire.org/svn/ipfire/branches/2.1/trunk@1151 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8

20 files changed:
config/cfgroot/graphs.pl
config/collectd/collectd.conf [new file with mode: 0644]
config/menu/20-status.menu
config/outgoingfw/outgoingfw.pl
config/rootfiles/packages/collectd [new file with mode: 0644]
config/rootfiles/packages/lcd4linux [new file with mode: 0644]
doc/language_issues.de
doc/language_issues.en
doc/packages-list.txt
html/cgi-bin/graphs.cgi
html/cgi-bin/network.cgi
lfs/collectd [new file with mode: 0644]
lfs/guardian
lfs/iptables
lfs/lcd4linux [new file with mode: 0644]
make.sh
src/initscripts/init.d/collectd [new file with mode: 0644]
src/initscripts/init.d/networking/red
src/initscripts/init.d/squid
src/scripts/makegraphs

index c5caa6d043da91fc374ad33baf6f0036a19b6815..8523f61170b368e897ba151961eee6e73d8065fc 100644 (file)
@@ -52,52 +52,73 @@ if ((${Lang::language} eq 'el') ||
 
 
 sub updatecpugraph {
       my $period    = $_[0];
+ my $period    = $_[0];
 
         RRDs::graph ("$graphs/cpu-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-        "--alt-y-grid", "-w 600", "-h 100", "-l 0", "-u 100", "-r",
+        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",, "-v $Lang::tr{'percentage'}",
+        "--alt-y-grid", "-w 600", "-h 150", "-l 0", "-u 100", "-r",
         "--color", "SHADEA".$color{"color19"},
         "--color", "SHADEB".$color{"color19"},
         "--color", "BACK".$color{"color21"},
         "-t $Lang::tr{'cpu usage per'} $Lang::tr{$period}",
-        "DEF:iowait=$rrdlog/cpu.rrd:iowait:AVERAGE",
-        "DEF:user=$rrdlog/cpu.rrd:user:AVERAGE",
-        "DEF:system=$rrdlog/cpu.rrd:system:AVERAGE",
-        "DEF:idle=$rrdlog/cpu.rrd:idle:AVERAGE",
-        "DEF:irq=$rrdlog/cpu.rrd:irq:AVERAGE",
-        "CDEF:total=user,system,idle,iowait,irq,+,+,+,+",
+        "DEF:iowait=$rrdlog/collectd/localhost/cpu-0/cpu-wait.rrd:value:AVERAGE",
+        "DEF:nice=$rrdlog/collectd/localhost/cpu-0/cpu-nice.rrd:value:AVERAGE",
+        "DEF:interrupt=$rrdlog/collectd/localhost/cpu-0/cpu-interrupt.rrd:value:AVERAGE",
+        "DEF:steal=$rrdlog/collectd/localhost/cpu-0/cpu-steal.rrd:value:AVERAGE",
+        "DEF:user=$rrdlog/collectd/localhost/cpu-0/cpu-user.rrd:value:AVERAGE",
+        "DEF:system=$rrdlog/collectd/localhost/cpu-0/cpu-system.rrd:value:AVERAGE",
+        "DEF:idle=$rrdlog/collectd/localhost/cpu-0/cpu-idle.rrd:value:AVERAGE",
+        "DEF:irq=$rrdlog/collectd/localhost/cpu-0/cpu-softirq.rrd:value:AVERAGE",
+        "CDEF:total=user,system,idle,iowait,irq,nice,interrupt,steal,+,+,+,+,+,+,+",
         "CDEF:userpct=100,user,total,/,*",
+        "CDEF:nicepct=100,nice,total,/,*",
+        "CDEF:interruptpct=100,interrupt,total,/,*",
+        "CDEF:stealpct=100,steal,total,/,*",
         "CDEF:systempct=100,system,total,/,*",
         "CDEF:idlepct=100,idle,total,/,*",
         "CDEF:iowaitpct=100,iowait,total,/,*",
         "CDEF:irqpct=100,irq,total,/,*",
-        "COMMENT:$Lang::tr{'caption'}\\t\\t\\t   ",
+        "COMMENT:".sprintf("%-29s",$Lang::tr{'caption'}),
         "COMMENT:$Lang::tr{'maximal'}",
         "COMMENT:$Lang::tr{'average'}",
         "COMMENT:$Lang::tr{'minimal'}",
         "COMMENT:$Lang::tr{'current'}\\j",
-        "AREA:iowaitpct".$color{"color14"}.":$Lang::tr{'iowait'}",
+        "AREA:iowaitpct".$color{"color14"}.":".sprintf("%-25s",$Lang::tr{'cpu iowait usage'}),
         "GPRINT:iowaitpct:MAX:%3.2lf%%",
         "GPRINT:iowaitpct:AVERAGE:%3.2lf%%",
         "GPRINT:iowaitpct:MIN:%3.2lf%%",
         "GPRINT:iowaitpct:LAST:%3.2lf%%\\j",
-        "STACK:irqpct".$color{"color23"}.":$Lang::tr{'cpu irq usage'}",
+        "STACK:irqpct".$color{"color23"}."A0:".sprintf("%-25s",$Lang::tr{'cpu irq usage'}),
         "GPRINT:irqpct:MAX:%3.2lf%%",
         "GPRINT:irqpct:AVERAGE:%3.2lf%%",
         "GPRINT:irqpct:MIN:%3.2lf%%",
         "GPRINT:irqpct:LAST:%3.2lf%%\\j",
-        "STACK:userpct".$color{"color11"}.":$Lang::tr{'user cpu usage'}",
+        "STACK:nicepct".$color{"color16"}."A0:".sprintf("%-25s",$Lang::tr{'cpu nice usage'}),
+        "GPRINT:nicepct:MAX:%3.2lf%%",
+        "GPRINT:nicepct:AVERAGE:%3.2lf%%",
+        "GPRINT:nicepct:MIN:%3.2lf%%",
+        "GPRINT:nicepct:LAST:%3.2lf%%\\j",
+        "STACK:interruptpct".$color{"color15"}."A0:".sprintf("%-25s",$Lang::tr{'cpu interrupt usage'}),
+        "GPRINT:interruptpct:MAX:%3.2lf%%",
+        "GPRINT:interruptpct:AVERAGE:%3.2lf%%",
+        "GPRINT:interruptpct:MIN:%3.2lf%%",
+        "GPRINT:interruptpct:LAST:%3.2lf%%\\j",
+        "STACK:stealpct".$color{"color18"}."A0:".sprintf("%-25s",$Lang::tr{'cpu steal usage'}),
+        "GPRINT:stealpct:MAX:%3.2lf%%",
+        "GPRINT:stealpct:AVERAGE:%3.2lf%%",
+        "GPRINT:stealpct:MIN:%3.2lf%%",
+        "GPRINT:stealpct:LAST:%3.2lf%%\\j",
+        "STACK:userpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'cpu user usage'}),
         "GPRINT:userpct:MAX:%3.2lf%%",
         "GPRINT:userpct:AVERAGE:%3.2lf%%",
         "GPRINT:userpct:MIN:%3.2lf%%",
         "GPRINT:userpct:LAST:%3.2lf%%\\j",
-        "STACK:systempct".$color{"color13"}.":$Lang::tr{'system cpu usage'}",
+        "STACK:systempct".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'cpu system usage'}),
         "GPRINT:systempct:MAX:%3.2lf%%",
         "GPRINT:systempct:AVERAGE:%3.2lf%%",
         "GPRINT:systempct:MIN:%3.2lf%%",
         "GPRINT:systempct:LAST:%3.2lf%%\\j",
-        "STACK:idlepct".$color{"color12"}.":$Lang::tr{'idle cpu usage'}",
+        "STACK:idlepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'cpu idle usage'}),
         "GPRINT:idlepct:MAX:%3.2lf%%",
         "GPRINT:idlepct:AVERAGE:%3.2lf%%",
         "GPRINT:idlepct:MIN:%3.2lf%%",
@@ -111,19 +132,19 @@ sub updateloadgraph {
 
         RRDs::graph ("$graphs/load-$period.png",
         "--start", "-1$period", "-aPNG",
-        "-w 600", "-h 100", "-i", "-z", "-W www.ipfire.org", "-l 0", "-r", "--alt-y-grid",
+        "-w 600", "-h 150", "-i", "-z", "-W www.ipfire.org", "-l 0", "-r", "--alt-y-grid",
         "-t Load Average $Lang::tr{'graph per'} $Lang::tr{$period}",
         "--color", "SHADEA".$color{"color19"},
         "--color", "SHADEB".$color{"color19"},
         "--color", "BACK".$color{"color21"},
-        "DEF:load1=$rrdlog/load.rrd:load1:AVERAGE",
-        "DEF:load5=$rrdlog/load.rrd:load5:AVERAGE",
-        "DEF:load15=$rrdlog/load.rrd:load15:AVERAGE",
-        "AREA:load1".$color{"color13"}.":1 Minute, letzter:",
+        "DEF:load1=$rrdlog/collectd/localhost/load/load.rrd:shortterm:AVERAGE",
+        "DEF:load5=$rrdlog/collectd/localhost/load/load.rrd:midterm:AVERAGE",
+        "DEF:load15=$rrdlog/collectd/localhost/load/load.rrd:longterm:AVERAGE",
+        "AREA:load1".$color{"color13"}."A0:1 Minute, letzter:",
         "GPRINT:load1:LAST:%5.2lf",
-        "AREA:load5".$color{"color18"}.":5 Minuten, letzter:",
+        "AREA:load5".$color{"color18"}."A0:5 Minuten, letzter:",
         "GPRINT:load5:LAST:%5.2lf",
-        "AREA:load15".$color{"color14"}.":15 Minuten, letzter:",
+        "AREA:load15".$color{"color14"}."A0:15 Minuten, letzter:",
         "GPRINT:load15:LAST:%5.2lf\\j",
         "LINE1:load5".$color{"color13"},
         "LINE1:load1".$color{"color18"});
@@ -135,50 +156,42 @@ sub updatememgraph {
         my $period    = $_[0];
 
         RRDs::graph ("$graphs/memory-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-        "--alt-y-grid", "-w 600", "-h 100", "-l 0", "-u 100", "-r",
+        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org", "-v $Lang::tr{'percentage'}",
+        "--alt-y-grid", "-w 600", "-h 150", "-l 0", "-u 100", "-r",
         "--color", "SHADEA".$color{"color19"},
         "--color", "SHADEB".$color{"color19"},
         "--color", "BACK".$color{"color21"},
         "-t $Lang::tr{'memory usage per'} $Lang::tr{$period}",
-        "DEF:used=$rrdlog/mem.rrd:memused:AVERAGE",
-        "DEF:free=$rrdlog/mem.rrd:memfree:AVERAGE",
-        "DEF:shared=$rrdlog/mem.rrd:memshared:AVERAGE",
-        "DEF:buffer=$rrdlog/mem.rrd:membuffers:AVERAGE",
-        "DEF:cache=$rrdlog/mem.rrd:memcache:AVERAGE",
-        "CDEF:total=used,free,+",
-        "CDEF:used2=used,buffer,cache,shared,+,+,-",
-        "CDEF:usedpct=100,used2,total,/,*",
-        "CDEF:sharedpct=100,shared,total,/,*",
-        "CDEF:bufferpct=100,buffer,total,/,*",
-        "CDEF:cachepct=100,cache,total,/,*",
-        "CDEF:freepct=100,free,total,/,*",
-        "COMMENT:$Lang::tr{'caption'}\\t\\t\\t",
+        "DEF:used=$rrdlog/collectd/localhost/memory/memory-used.rrd:value:AVERAGE",
+        "DEF:free=$rrdlog/collectd/localhost/memory/memory-free.rrd:value:AVERAGE",
+        "DEF:buffer=$rrdlog/collectd/localhost/memory/memory-buffered.rrd:value:AVERAGE",
+        "DEF:cache=$rrdlog/collectd/localhost/memory/memory-cached.rrd:value:AVERAGE",
+        "CDEF:total=used,free,cache,buffer,+,+,+",
+        "CDEF:usedpct=used,total,/,100,*",
+        "CDEF:bufferpct=buffer,total,/,100,*",
+        "CDEF:cachepct=cache,total,/,100,*",
+        "CDEF:freepct=free,total,/,100,*",
+        "COMMENT:$Lang::".sprintf("%-29s",$Lang::tr{'caption'}),
         "COMMENT:$Lang::tr{'maximal'}",
         "COMMENT:$Lang::tr{'average'}",
         "COMMENT:$Lang::tr{'minimal'}",
         "COMMENT:$Lang::tr{'current'}\\j",
-        "AREA:usedpct".$color{"color11"}.":$Lang::tr{'used memory'}",
+        "AREA:usedpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'used memory'}),
         "GPRINT:usedpct:MAX:%3.2lf%%",
         "GPRINT:usedpct:AVERAGE:%3.2lf%%",
         "GPRINT:usedpct:MIN:%3.2lf%%",
         "GPRINT:usedpct:LAST:%3.2lf%%\\j",
-        "STACK:sharedpct".$color{"color13"}.":$Lang::tr{'shared memory'}",
-        "GPRINT:sharedpct:MAX:%3.2lf%%",
-        "GPRINT:sharedpct:AVERAGE:%3.2lf%%",
-        "GPRINT:sharedpct:MIN:%3.2lf%%",
-        "GPRINT:sharedpct:LAST:%3.2lf%%\\j",
-        "STACK:bufferpct".$color{"color23"}.":$Lang::tr{'buffered memory'}",
+        "STACK:bufferpct".$color{"color23"}."A0:".sprintf("%-25s",$Lang::tr{'buffered memory'}),
         "GPRINT:bufferpct:MAX:%3.2lf%%",
         "GPRINT:bufferpct:AVERAGE:%3.2lf%%",
         "GPRINT:bufferpct:MIN:%3.2lf%%",
         "GPRINT:bufferpct:LAST:%3.2lf%%\\j",
-        "STACK:cachepct".$color{"color14"}.":$Lang::tr{'cached memory'}",
+        "STACK:cachepct".$color{"color14"}."A0:".sprintf("%-25s",$Lang::tr{'cached memory'}),
         "GPRINT:cachepct:MAX:%3.2lf%%",
         "GPRINT:cachepct:AVERAGE:%3.2lf%%",
         "GPRINT:cachepct:MIN:%3.2lf%%",
         "GPRINT:cachepct:LAST:%3.2lf%%\\j",
-        "STACK:freepct".$color{"color12"}.":$Lang::tr{'free memory'}",
+        "STACK:freepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'free memory'}),
         "GPRINT:freepct:MAX:%3.2lf%%",
         "GPRINT:freepct:AVERAGE:%3.2lf%%",
         "GPRINT:freepct:MIN:%3.2lf%%",
@@ -187,32 +200,39 @@ sub updatememgraph {
         print "Error in RRD::graph for mem: $ERROR\n" if $ERROR;
 
         RRDs::graph ("$graphs/swap-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-        "--alt-y-grid", "-w 600", "-h 100", "-l 0", "-u 100", "-r",
+        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org", "-v $Lang::tr{'percentage'}",
+        "--alt-y-grid", "-w 600", "-h 150", "-l 0", "-u 100", "-r",
         "--color", "SHADEA".$color{"color19"},
         "--color", "SHADEB".$color{"color19"},
         "--color", "BACK".$color{"color21"},
         "-t $Lang::tr{'swap usage per'} $Lang::tr{$period}",
-        "DEF:used=$rrdlog/mem.rrd:swapused:AVERAGE",
-        "DEF:free=$rrdlog/mem.rrd:swapfree:AVERAGE",
-        "CDEF:total=used,free,+",
+        "DEF:used=$rrdlog/collectd/localhost/swap/swap-used.rrd:value:AVERAGE",
+        "DEF:free=$rrdlog/collectd/localhost/swap/swap-free.rrd:value:AVERAGE",
+                               "DEF:cached=$rrdlog/collectd/localhost/swap/swap-cached.rrd:value:AVERAGE",
+        "CDEF:total=used,free,cached,+,+",
         "CDEF:usedpct=100,used,total,/,*",
         "CDEF:freepct=100,free,total,/,*",
-        "COMMENT:$Lang::tr{'caption'}\\t\\t",
+        "CDEF:cachedpct=100,cached,total,/,*",
+        "COMMENT:$Lang::".sprintf("%-29s",$Lang::tr{'caption'}),
         "COMMENT:$Lang::tr{'maximal'}",
         "COMMENT:$Lang::tr{'average'}",
         "COMMENT:$Lang::tr{'minimal'}",
         "COMMENT:$Lang::tr{'current'}\\j",
-        "AREA:usedpct".$color{"color11"}.":$Lang::tr{'used swap'}",
+        "AREA:usedpct".$color{"color11"}."A0:".sprintf("%-25s",$Lang::tr{'used swap'}),
         "GPRINT:usedpct:MAX:%3.2lf%%",
         "GPRINT:usedpct:AVERAGE:%3.2lf%%",
         "GPRINT:usedpct:MIN:%3.2lf%%",
         "GPRINT:usedpct:LAST:%3.2lf%%\\j",
-        "STACK:freepct".$color{"color12"}.":$Lang::tr{'free swap'}",
+        "STACK:freepct".$color{"color12"}."A0:".sprintf("%-25s",$Lang::tr{'free swap'}),
         "GPRINT:freepct:MAX:%3.2lf%%",
         "GPRINT:freepct:AVERAGE:%3.2lf%%",
         "GPRINT:freepct:MIN:%3.2lf%%",
-        "GPRINT:freepct:LAST:%3.2lf%%\\j");
+        "GPRINT:freepct:LAST:%3.2lf%%\\j",
+        "STACK:cachedpct".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'cached swap'}),
+        "GPRINT:cachedpct:MAX:%3.2lf%%",
+        "GPRINT:cachedpct:AVERAGE:%3.2lf%%",
+        "GPRINT:cachedpct:MIN:%3.2lf%%",
+        "GPRINT:cachedpct:LAST:%3.2lf%%\\j");
         $ERROR = RRDs::error;
         print "Error in RRD::graph for swap: $ERROR\n" if $ERROR;
 }
@@ -222,139 +242,135 @@ sub updatediskgraph {
         my $disk    = $_[1];
 
         RRDs::graph ("$graphs/disk-$disk-$period.png",
-        "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-        "--alt-y-grid", "-w 600", "-h 100", "-l 0", "-r",
-        "--color", "SHADEA".$color{"color19"},
+        "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org", "-v $Lang::tr{'bytes per second'}",
+        "--alt-y-grid", "-w 600", "-h 150", "-r", "-z",
+                               "--color", "SHADEA".$color{"color19"},
         "--color", "SHADEB".$color{"color19"},
         "--color", "BACK".$color{"color21"},
         "-t $disk $Lang::tr{'disk access per'} $Lang::tr{$period}",
-        "DEF:read=$rrdlog/disk-$disk.rrd:readsect:AVERAGE",
-        "DEF:write=$rrdlog/disk-$disk.rrd:writesect:AVERAGE",
+        "DEF:read=$rrdlog/collectd/localhost/disk-$disk/disk_octets.rrd:read:AVERAGE",
+        "DEF:write=$rrdlog/collectd/localhost/disk-$disk/disk_octets.rrd:write:AVERAGE",
+        "CDEF:writen=write,-1,*",
         "DEF:standby=$rrdlog/hddshutdown-$disk.rrd:standby:AVERAGE",
         "CDEF:st=standby,INF,*",
-        "AREA:st".$color{"color20"}.":standby\\j",
-        "AREA:read".$color{"color11"}.":$Lang::tr{'sectors read from disk per second'}",
-        "STACK:write".$color{"color12"}.":$Lang::tr{'sectors written to disk per second'}\\j",
-        "COMMENT: \\j",
+        "COMMENT:$Lang::".sprintf("%-25s",$Lang::tr{'caption'}),
         "COMMENT:$Lang::tr{'maximal'}",
         "COMMENT:$Lang::tr{'average'}",
+        "COMMENT:$Lang::tr{'minimal'}",
         "COMMENT:$Lang::tr{'current'}\\j",
-        "GPRINT:read:MAX:$Lang::tr{'read sectors'}\\:%8.0lf",
-        "GPRINT:read:AVERAGE:$Lang::tr{'read sectors'}\\:%8.0lf",
-        "GPRINT:read:LAST:$Lang::tr{'read sectors'}\\:%8.0lf\\j",
-        "GPRINT:write:MAX:$Lang::tr{'written sectors'}\\:%8.0lf",
-        "GPRINT:write:AVERAGE:$Lang::tr{'written sectors'}\\:%8.0lf",
-        "GPRINT:write:LAST:$Lang::tr{'written sectors'}\\:%8.0lf\\j");
+        "AREA:st".$color{"color20"}.":standby\\j",
+        "AREA:read".$color{"color14"}."A0:".sprintf("%-25s",$Lang::tr{'read bytes'}),
+        "GPRINT:read:MAX:%8.1lf %sBps",
+        "GPRINT:read:AVERAGE:%8.1lf %sBps",
+        "GPRINT:read:MIN:%8.1lf %sBps",
+        "GPRINT:read:LAST:%8.1lf %sBps\\j",
+        "AREA:writen".$color{"color13"}."A0:".sprintf("%-25s",$Lang::tr{'written bytes'}),
+                               "GPRINT:write:MAX:%8.1lf %sBps",
+        "GPRINT:write:AVERAGE:%8.1lf %sBps",
+        "GPRINT:write:MIN:%8.1lf %sBps",
+        "GPRINT:write:LAST:%8.1lf %sBps\\j");
         $ERROR = RRDs::error;
         print "Error in RRD::graph for disk: $ERROR\n" if $ERROR;
 }
 
 sub updateifgraph {
-  my $interface = $_[0];
-  my $period    = $_[1];
-
-  RRDs::graph ("$graphs/$interface-$period.png",
-  "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-  "--alt-y-grid", "-w 600", "-h 100",
-  "--color", "SHADEA".$color{"color19"},
-  "--color", "SHADEB".$color{"color19"},
-  "--color", "BACK".$color{"color21"},
-  "-t $Lang::tr{'traffic on'} $interface $Lang::tr{'graph per'} $Lang::tr{$period}",
-  "-v$Lang::tr{'bytes per second'}",
-  "DEF:incoming=$rrdlog/$interface.rrd:incoming:AVERAGE",
-  "DEF:outgoing=$rrdlog/$interface.rrd:outgoing:AVERAGE",
-  "AREA:incoming".$color{"color11"}.":$Lang::tr{'incoming traffic in bytes per second'}",
-  "AREA:outgoing".$color{"color12"}.":$Lang::tr{'outgoing traffic in bytes per second'}\\j",
-  "COMMENT: \\j",
-  "COMMENT:$Lang::tr{'maximal'}",
-  "COMMENT:$Lang::tr{'average'}",
-  "COMMENT:$Lang::tr{'minimal'}",
-  "COMMENT:$Lang::tr{'current'}\\j",
-  "GPRINT:incoming:MAX:$Lang::tr{'in'}\\:%8.3lf %sBps",
-  "GPRINT:incoming:AVERAGE:$Lang::tr{'in'}\\:%8.3lf %sBps",
-  "GPRINT:incoming:MIN:$Lang::tr{'in'}\\:%8.3lf %sBps",
-  "GPRINT:incoming:LAST:$Lang::tr{'in'}\\:%8.3lf %sBps\\j",
-  "GPRINT:outgoing:MAX:$Lang::tr{'out'}\\:%8.3lf %sBps",
-  "GPRINT:outgoing:AVERAGE:$Lang::tr{'out'}\\:%8.3lf %sBps",
-  "GPRINT:outgoing:MIN:$Lang::tr{'out'}\\:%8.3lf %sBps",
-  "GPRINT:outgoing:LAST:$Lang::tr{'out'}\\:%8.3lf %sBps\\j");
-  $ERROR = RRDs::error;
-  print "Error in RRD::graph for $interface: $ERROR\n" if $ERROR;
+        my $interface = $_[0];
+        my $period    = $_[1];
+
+                               RRDs::graph ("$graphs/$interface-$period.png",
+                               "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org", "-v $Lang::tr{'bytes per second'}",
+                               "--alt-y-grid", "-w 600", "-h 150", "-z", "-r",
+                               "--color", "SHADEA".$color{"color19"},
+                               "--color", "SHADEB".$color{"color19"},
+                               "--color", "BACK".$color{"color21"},
+                               "-t $Lang::tr{'traffic on'} $interface $Lang::tr{'graph per'} $Lang::tr{$period}",
+                               "-v$Lang::tr{'bytes per second'}",
+                               "DEF:incoming=$rrdlog/collectd/localhost/interface/if_octets-$interface.rrd:rx:AVERAGE",
+                               "DEF:outgoing=$rrdlog/collectd/localhost/interface/if_octets-$interface.rrd:tx:AVERAGE",
+                               "CDEF:outgoingn=outgoing,-1,*",
+                               "COMMENT:$Lang::".sprintf("%-20s",$Lang::tr{'caption'}),
+                               "COMMENT:$Lang::tr{'maximal'}",
+                               "COMMENT:$Lang::tr{'average'}",
+                               "COMMENT:$Lang::tr{'minimal'}",
+                               "COMMENT:$Lang::tr{'current'}\\j",
+                               "AREA:incoming".$color{"color12"}."A0:$Lang::tr{'incoming traffic in bytes per second'}",
+                               "GPRINT:incoming:MAX:%8.1lf %sBps",
+                               "GPRINT:incoming:AVERAGE:%8.1lf %sBps",
+                               "GPRINT:incoming:MIN:%8.1lf %sBps",
+                               "GPRINT:incoming:LAST:%8.1lf %sBps\\j",
+                               "AREA:outgoingn".$color{"color13"}."A0:$Lang::tr{'outgoing traffic in bytes per second'}",
+                               "GPRINT:outgoing:MAX:%8.1lf %sBps",
+                               "GPRINT:outgoing:AVERAGE:%8.1lf %sBps",
+                               "GPRINT:outgoing:MIN:%8.1lf %sBps",
+                               "GPRINT:outgoing:LAST:%8.1lf %sBps\\j");
+                               $ERROR = RRDs::error;
+                               print "Error in RRD::graph for $interface: $ERROR\n" if $ERROR;
 }
 
 sub updatefwhitsgraph {
-  my $period = $_[0];
-
-  RRDs::graph ("$graphs/firewallhits-$period-area.png",
-  "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-  "--alt-y-grid", "-w 600", "-h 100",
-  "--color", "SHADEA".$color{"color19"},
-  "--color", "SHADEB".$color{"color19"},
-  "--color", "BACK".$color{"color21"},
-  "-t $Lang::tr{'firewall hits per'} $Lang::tr{$period}",
-  "DEF:amount=$rrdlog/firewallhits.rrd:amount:AVERAGE",
-  "DEF:portamount=$rrdlog/firewallhits.rrd:portamount:AVERAGE",
-  "COMMENT:$Lang::tr{'caption'}\\t\\t\\t",
-  "COMMENT:$Lang::tr{'maximal'}",
-  "COMMENT:$Lang::tr{'average'}",
-  "COMMENT:$Lang::tr{'minimal'}",
-  "COMMENT:$Lang::tr{'current'}\\j",
-  "AREA:amount".$color{"color24"}.":$Lang::tr{'firewallhits'}/5 min",
-  "GPRINT:amount:MAX:%2.2lf %S",
-  "GPRINT:amount:AVERAGE:%2.2lf %S",
-  "GPRINT:amount:MIN:%2.2lf %S",
-  "GPRINT:amount:LAST:%2.2lf %S\\j",
-  "STACK:portamount".$color{"color25"}.":$Lang::tr{'portscans'}/5 min",
-  "GPRINT:portamount:MAX:%2.2lf %S",
-  "GPRINT:portamount:MIN:%2.2lf %S",
-  "GPRINT:portamount:AVERAGE:%2.2lf %S",
-  "GPRINT:portamount:LAST:%2.2lf %S\\j");
-  $ERROR = RRDs::error;
-  print "Error in RRD::graph for Firewallhits: $ERROR\n" if $ERROR;
+                               my $period = $_[0];
+                               RRDs::graph ("$graphs/fwhits-$period.png",
+                               "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
+                               "--alt-y-grid", "-w 600", "-h 150", "-r", "-v $Lang::tr{'bytes per second'}",
+                               "--color", "SHADEA".$color{"color19"},
+                               "--color", "SHADEB".$color{"color19"},
+                               "--color", "BACK".$color{"color21"},
+                               "-t $Lang::tr{'firewall hits per'} $Lang::tr{$period}",
+                               "DEF:output=$rrdlog/collectd/localhost/iptables-filter-FORWARD/ipt_bytes-DROP_OUTPUT.rrd:value:AVERAGE",
+                               "DEF:input=$rrdlog/collectd/localhost/iptables-filter-INPUT/ipt_bytes-DROP_INPUT.rrd:value:AVERAGE",
+                               "DEF:newnotsyn=$rrdlog/collectd/localhost/iptables-filter-NEWNOTSYN/ipt_bytes-DROP_NEWNOTSYN.rrd:value:AVERAGE",
+                               "DEF:portscan=$rrdlog/collectd/localhost/iptables-filter-PSCAN/ipt_bytes-DROP_PScan.rrd:value:AVERAGE",
+                               "CDEF:amount=output,input,newnotsyn,+,+",
+                               "COMMENT:$Lang::".sprintf("%-20s",$Lang::tr{'caption'}),
+                               "COMMENT:$Lang::tr{'maximal'}",
+                               "COMMENT:$Lang::tr{'average'}",
+                               "COMMENT:$Lang::tr{'minimal'}",
+                               "COMMENT:$Lang::tr{'current'}\\j",
+                               "AREA:amount".$color{"color24"}."A0:".sprintf("%-20s",$Lang::tr{'firewallhits'}),
+                               "GPRINT:amount:MAX:%8.1lf %sBps",
+                               "GPRINT:amount:AVERAGE:%8.1lf %sBps",
+                               "GPRINT:amount:MIN:%8.1lf %sBps",
+                               "GPRINT:amount:LAST:%8.1lf %sBps\\j",
+                               "STACK:portscan".$color{"color25"}."A0:".sprintf("%-20s",$Lang::tr{'portscans'}),
+                               "GPRINT:portscan:MAX:%8.1lf %sBps",
+                               "GPRINT:portscan:MIN:%8.1lf %sBps",
+                               "GPRINT:portscan:AVERAGE:%8.1lf %sBps",
+                               "GPRINT:portscan:LAST:%8.1lf %sBps\\j");
+                               $ERROR = RRDs::error;
+                               print "Error in RRD::graph for Firewallhits: $ERROR\n" if $ERROR;
 }
 
 sub updatelqgraph {
-  my $period    = $_[0];
-  RRDs::graph ("$graphs/lq-$period.png",
-  "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-  "--alt-y-grid", "-w 600", "-h 100", "-l 0", "-r",
-  "-t $Lang::tr{'linkq'} $Lang::tr{'graph per'} $Lang::tr{$period}",
-  "--lazy",
-  "--color", "SHADEA".$color{"color19"},
-  "--color", "SHADEB".$color{"color19"},
-  "--color", "BACK".$color{"color21"},
-  "-v ms / pkts (% x10)",
-  "DEF:roundtrip=$rrdlog/lq.rrd:roundtrip:AVERAGE",
-  "DEF:loss=$rrdlog/lq.rrd:loss:AVERAGE",
-  "CDEF:roundavg=roundtrip,PREV(roundtrip),+,2,/",
-  "CDEF:loss10=loss,10,*",
-  "CDEF:r0=roundtrip,30,MIN",
-  "CDEF:r1=roundtrip,70,MIN",
-  "CDEF:r2=roundtrip,150,MIN",
-  "CDEF:r3=roundtrip,300,MIN",
-  "AREA:roundtrip".$color{"color25"}.":>300 ms",
-  "AREA:r3".$color{"color18"}.":150-300 ms",
-  "AREA:r2".$color{"color14"}.":70-150 ms",
-  "AREA:r1".$color{"color17"}.":30-70 ms",
-  "AREA:r0".$color{"color12"}.":<30 ms",
-  "AREA:loss10".$color{"color13"}.":Packet loss (x10)\\j",
-  "COMMENT: \\j",
-  "COMMENT:$Lang::tr{'maximal'}",
-  "COMMENT:$Lang::tr{'average'}",
-  "COMMENT:$Lang::tr{'minimal'}",
-  "COMMENT:$Lang::tr{'current'}\\j",
-  "LINE1:roundtrip#707070:",
-  "GPRINT:roundtrip:MAX:Time\\:%3.2lf ms",
-  "GPRINT:roundtrip:AVERAGE:Time\\:%3.2lf ms",
-  "GPRINT:roundtrip:MIN:Time\\:%3.2lf ms",
-  "GPRINT:roundtrip:LAST:Time\\:%3.2lf ms\\j",
-  "GPRINT:loss:MAX:Loss\\:%3.2lf%%",
-  "GPRINT:loss:AVERAGE:Loss\\:%3.2lf%%",
-  "GPRINT:loss:MIN:Loss\\:%3.2lf%%",
-  "GPRINT:loss:LAST:Loss\\:%3.2lf%%\\j"
-  );
-  $ERROR = RRDs::error;
-  print "Error in RRD::graph for Link Quality: $ERROR\n" if $ERROR;
+                               my $period    = $_[0];
+                               RRDs::graph ("$graphs/lq-$period.png",
+                               "--start", "-1$period", "-aPNG", "-i", "-W www.ipfire.org",
+                               "--alt-y-grid", "-w 600", "-h 150", "-l 0", "-r", "-v ms",
+                               "-t $Lang::tr{'linkq'} $Lang::tr{'graph per'} $Lang::tr{$period}",
+                               "--color", "SHADEA".$color{"color19"},
+                               "--color", "SHADEB".$color{"color19"},
+                               "--color", "BACK".$color{"color21"},
+                               "DEF:roundtrip=$rrdlog/collectd/localhost/ping/ping-gateway.rrd:ping:AVERAGE",
+                               "COMMENT:$Lang::".sprintf("%-20s",$Lang::tr{'caption'})."\\j",
+                               "CDEF:r0=roundtrip,30,-",
+                               "CDEF:r1=r0,70,-",
+                               "CDEF:r2=r1,150,-",
+                               "CDEF:r3=r2,300,-",
+                               "AREA:r0".$color{"color12"}."A0:<30 ms",
+                               "STACK:r1".$color{"color17"}."A0:30-70 ms",
+                               "STACK:r2".$color{"color14"}."A0:70-150 ms",
+                               "STACK:r3".$color{"color18"}."A0:150-300 ms",
+                               "STACK:roundtrip".$color{"color25"}.":>300 ms\\j",
+                               "COMMENT:$Lang::tr{'maximal'}",
+                               "COMMENT:$Lang::tr{'average'}",
+                               "COMMENT:$Lang::tr{'minimal'}",
+                               "COMMENT:$Lang::tr{'current'}\\j",
+                               "LINE1:roundtrip#707070:",
+                               "GPRINT:roundtrip:MAX:%3.2lf ms",
+                               "GPRINT:roundtrip:AVERAGE:%3.2lf ms",
+                               "GPRINT:roundtrip:MIN:%3.2lf ms",
+                               "GPRINT:roundtrip:LAST:%3.2lf ms\\j");
+                               $ERROR = RRDs::error;
+                               print "Error in RRD::graph for Link Quality: $ERROR\n" if $ERROR;
 }
 
 sub updatehddgraph {
@@ -364,7 +380,7 @@ sub updatehddgraph {
 
   RRDs::graph ("$graphs/hddtemp-$disk-$period.png",
   "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-  "--alt-y-grid", "-w 600", "-h 100",
+  "--alt-y-grid", "-w 600", "-h 150",
   "--color", "SHADEA".$color{"color19"},
   "--color", "SHADEB".$color{"color19"},
   "--color", "BACK".$color{"color21"},
@@ -395,7 +411,7 @@ sub updatetempgraph
 
   @args = ("$graphs/mbmon-$type-$period.png",
     "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-    "--alt-y-grid", "-w 600", "-h 100", "--alt-autoscale",
+    "--alt-y-grid", "-w 600", "-h 150", "--alt-autoscale",
     "--color", "SHADEA".$color{"color19"},
     "--color", "SHADEB".$color{"color19"},
     "--color", "BACK".$color{"color21"},
@@ -436,7 +452,7 @@ sub updatefangraph
   my $count = "11";
 
   @args = ("$graphs/mbmon-$type-$period.png", "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-    "--alt-y-grid", "-w 600", "-h 100", "--alt-autoscale",
+    "--alt-y-grid", "-w 600", "-h 150", "--alt-autoscale",
     "--color", "SHADEA".$color{"color19"},
     "--color", "SHADEB".$color{"color19"},
     "--color", "BACK".$color{"color21"},
@@ -477,7 +493,7 @@ sub updatevoltgraph
   my $count = "11";
 
   @args = ("$graphs/mbmon-$type-$period.png", "--start", "-1$period", "-aPNG", "-i", "-z", "-W www.ipfire.org",
-    "--alt-y-grid", "-w 600", "-h 100", "--alt-autoscale",
+    "--alt-y-grid", "-w 600", "-h 150", "--alt-autoscale",
     "--color", "SHADEA".$color{"color19"},
     "--color", "SHADEB".$color{"color19"},
     "--color", "BACK".$color{"color21"},
diff --git a/config/collectd/collectd.conf b/config/collectd/collectd.conf
new file mode 100644 (file)
index 0000000..e01487f
--- /dev/null
@@ -0,0 +1,214 @@
+#
+# Config file for collectd(1).
+# Please read collectd.conf(5) for a list of options.
+# http://collectd.org/
+#
+
+Hostname    "localhost"
+BaseDir     "/var/log/rrd/collectd"
+PIDFile     "/var/run/collectd.pid"
+PluginDir   "/usr/lib/collectd"
+TypesDB     "/usr/lib/collectd/types.db"
+Interval     30
+ReadThreads  3
+
+#LoadPlugin apache
+#LoadPlugin battery
+LoadPlugin cpu
+#LoadPlugin cpufreq
+#LoadPlugin df
+LoadPlugin disk
+#LoadPlugin dns
+#LoadPlugin email
+#LoadPlugin entropy
+#LoadPlugin exec
+#LoadPlugin hddtemp
+LoadPlugin interface
+LoadPlugin iptables
+#LoadPlugin ipvs
+#LoadPlugin irq
+LoadPlugin load
+#LoadPlugin logfile
+#LoadPlugin mbmon
+#LoadPlugin memcached
+LoadPlugin memory
+#LoadPlugin multimeter
+#LoadPlugin mysql
+#LoadPlugin netlink
+#LoadPlugin network
+#LoadPlugin nfs
+#LoadPlugin nginx
+#LoadPlugin ntpd
+#LoadPlugin nut
+#LoadPlugin perl
+LoadPlugin ping
+#LoadPlugin processes
+LoadPlugin rrdtool
+#LoadPlugin sensors
+#LoadPlugin serial
+LoadPlugin swap
+LoadPlugin syslog
+#LoadPlugin tape
+#LoadPlugin tcpconns
+#LoadPlugin unixsock
+#LoadPlugin users
+
+#<Plugin apache>
+#      URL "http://localhost/status?auto"
+#      User "www-user"
+#      Password "secret"
+#      CACert "/etc/ssl/ca.crt"
+#</Plugin>
+
+
+#<Plugin df>
+#      Device "/dev/hda"
+#      Device "192.168.0.2:/mnt/nfs"
+#      MountPoint "/home"
+#      FSType "ext3"
+#      IgnoreSelected false
+#</Plugin>
+
+#<Plugin dns>
+#      Interface "eth0"
+#      IgnoreSource "192.168.0.1"
+#</Plugin>
+
+#<Plugin email>
+#      SocketFile "/usr/var/run/collectd-email"
+#      SocketGroup "collectd"
+#      SocketPerms "0770"
+#      MaxConns 5
+#</Plugin>
+
+#<Plugin exec>
+#      Exec "user:group" "/path/to/exec"
+#</Plugin>
+
+#<Plugin hddtemp>
+#      Host "127.0.0.1"
+#      Port "7634"
+#</Plugin>
+
+<Plugin interface>
+       Interface "ppp0"
+       Interface "lo"
+       Interface "ipsec1"
+       Interface "ipsec2"
+       Interface "ipsec3"
+       IgnoreSelected true
+</Plugin>
+
+<Plugin iptables>
+       Chain filter INPUT DROP_INPUT
+       Chain filter FORWARD DROP_OUTPUT
+       Chain filter PSCAN DROP_PScan
+       Chain filter NEWNOTSYN DROP_NEWNOTSYN
+       Chain filter OUTGOINGFW DROP_OUTGOINGFW
+</Plugin>
+
+#<Plugin irq>
+#      Irq 7
+#      Irq 8
+#      Irq 9
+#      IgnoreSelected true
+#</Plugin>
+
+#<Plugin logfile>
+#      LogLevel info
+#      File STDOUT
+#</Plugin>
+
+#<Plugin mbmon>
+#      Host "127.0.0.1"
+#      Port "411"
+#</Plugin>
+
+#<Plugin memcached>
+#      Host "127.0.0.1"
+#      Port "11211"
+#</Plugin>
+
+#<Plugin mysql>
+#      Host "database.serv.er"
+#      User "db_user"
+#      Password "secret"
+#      Database "db_name"
+#</Plugin>
+
+#<Plugin netlink>
+#      Interface "All"
+#      VerboseInterface "All"
+#      QDisc "eth0" "pfifo_fast-1:0"
+#      Class "ppp0" "htb-1:10"
+#      Filter "ppp0" "u32-1:0"
+#</Plugin>
+
+#<Plugin network>
+#      Server "ff18::efc0:4a42" "25826"
+#      Server "239.192.74.66" "25826"
+#      Listen "ff18::efc0:4a42" "25826"
+#      Listen "239.192.74.66" "25826"
+#      TimeToLive "128"
+#      Forward false
+#      CacheFlush 1800
+#</Plugin>
+
+#<Plugin nginx>
+#      URL "http://localhost/status?auto"
+#      User "www-user"
+#      Password "secret"
+#      CACert "/etc/ssl/ca.crt"
+#</Plugin>
+
+#<Plugin ntpd>
+#      Host "localhost"
+#      Port 123
+#</Plugin>
+
+#<Plugin nut>
+#      UPS "upsname@hostname:port"
+#</Plugin>
+
+#<Plugin perl>
+#      IncludeDir "/my/include/path"
+#      BaseName "Collectd::Plugin"
+#      LoadPlugin foo
+#</Plugin>
+
+<Plugin ping>
+       Host "gateway"
+</Plugin>
+
+<Plugin processes>
+       Process "collectd"
+</Plugin>
+
+<Plugin rrdtool>
+       DataDir "/var/log/rrd/collectd"
+       CacheTimeout 300
+       CacheFlush   900
+</Plugin>
+
+#<Plugin sensors>
+#      Sensor "it8712-isa-0290/temperature-temp1"
+#      Sensor "it8712-isa-0290/fanspeed-fan3"
+#      Sensor "it8712-isa-0290/voltage-in8"
+#      IgnoreSelected false
+#</Plugin>
+
+<Plugin syslog>
+       LogLevel info
+</Plugin>
+
+#<Plugin tcpconns>
+#      ListeningPorts false
+#      LocalPort "6882"
+#      RemotePort "80"
+#</Plugin>
+
+#<Plugin unixsock>
+#      SocketFile "/usr/var/run/collectd-unixsock"
+#      SocketGroup "collectd"
+#      SocketPerms "0660"
+#</Plugin>
index d81cefdadb2d9c4f10c2a13d3f990d2fa5998ee6..a66b4ec787c13253040ec04cab3b73c236bfe0cd 100644 (file)
                                'title' => "$Lang::tr{'network red'}",
                                'enabled' => 1,
                          };
-    $substatus->{'41.networkother'} = {
+    $substatus->{'41.networkinternal'} = {
+                               'caption' => "$Lang::tr{'network internal'}",
+                               'uri' => '/cgi-bin/network.cgi',
+                               'vars' => 'network=internal',
+                               'title' => "$Lang::tr{'network internal'}",
+                               'enabled' => 1,
+                         };
+    $substatus->{'42.networkother'} = {
                                'caption' => "$Lang::tr{'network other'}",
                                'uri' => '/cgi-bin/network.cgi',
                                'vars' => 'network=other',
                                'title' => "$Lang::tr{'hardware graphs'}",
                                'enabled' => 1,
                          };
-               $substatus->{'70.fwhits'} = {
-                               'caption' => "$Lang::tr{'firewall graphs'}",
-                               'uri' => '/cgi-bin/fwhits.cgi',
-                               'title' => "$Lang::tr{'firewall graphs'}",
-                               'enabled' => 1,
-                               };
     $substatus->{'71.connections'} = {
                                'caption' => $Lang::tr{'connections'},
                                'uri' => '/cgi-bin/connections.cgi',
index 1e7594a53dd807d75f88277db0859f137f9071b5..482a963dda43f257f2e9b4285e15bd9aca5b7b18 100644 (file)
@@ -90,7 +90,7 @@ if ( $outfwsettings{'POLICY'} eq 'MODE1' ) {
 } elsif ( $outfwsettings{'POLICY'} eq 'MODE2' ) {
        $outfwsettings{'STATE'} = "DENY";
        $POLICY = "ACCEPT";
-       $DO = "DROP";
+       $DO = "DROP -m comment --comment 'DROP_OUTGOINGFW'";
 }
 
 ### Initialize IPTables
@@ -167,9 +167,9 @@ foreach $configentry (sort @configs)
 
                        if ($configline[9] eq "aktiv") {
                                if ($DEBUG) {
-                                       print "$CMD -m state --state NEW -m limit --limit 10/minute -j LOG --log-prefix 'OUTGOINGFW '\n";
+                                       print "$CMD -m limit --limit 10/minute -j LOG --log-prefix 'OUTGOINGFW '\n";
                                } else {
-                                       system("$CMD -m state --state NEW -m limit --limit 10/minute -j LOG --log-prefix 'OUTGOINGFW '");
+                                       system("$CMD -m limit --limit 10/minute -j LOG --log-prefix 'OUTGOINGFW '");
                                }
                        }
                        
@@ -213,7 +213,7 @@ if ($P2PSTRING) {
 }
 
 if ( $outfwsettings{'POLICY'} eq 'MODE1' ) {
-       $CMD = "/sbin/iptables -A OUTGOINGFW -o $netsettings{'RED_DEV'} -j DROP";
+       $CMD = "/sbin/iptables -A OUTGOINGFW -o $netsettings{'RED_DEV'} -j DROP -m comment --comment 'DROP_OUTGOINGFW'";
        if ($DEBUG) {
                print "$CMD\n";
        } else {
diff --git a/config/rootfiles/packages/collectd b/config/rootfiles/packages/collectd
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/config/rootfiles/packages/lcd4linux b/config/rootfiles/packages/lcd4linux
new file mode 100644 (file)
index 0000000..fc7fe35
--- /dev/null
@@ -0,0 +1 @@
+usr/bin/lcd4linux
index 36021aa2f2ce43562aeb4710d6742f660d5a6e2e..ba7282dbeb6922108d8cd44990e39c38c7c1766f 100644 (file)
@@ -394,3 +394,15 @@ WARNING: translation string unused: week
 WARNING: translation string unused: weekly firewallhits
 WARNING: translation string unused: xtaccess bad transfert
 WARNING: translation string unused: yearly firewallhits
+WARNING: untranslated string: cached swap
+WARNING: untranslated string: cpu idle usage
+WARNING: untranslated string: cpu interrupt usage
+WARNING: untranslated string: cpu iowait usage
+WARNING: untranslated string: cpu nice usage
+WARNING: untranslated string: cpu steal usage
+WARNING: untranslated string: cpu system usage
+WARNING: untranslated string: cpu user usage
+WARNING: untranslated string: network internal
+WARNING: untranslated string: network traffic graphs others
+WARNING: untranslated string: read bytes
+WARNING: untranslated string: written bytes
index 613786130cf88f3edbfb4373c0ae26179b5b044a..3011a36bfdb20f1aa4a7fc3e69ba9433cef618e0 100644 (file)
@@ -428,3 +428,15 @@ WARNING: translation string unused: week
 WARNING: translation string unused: weekly firewallhits
 WARNING: translation string unused: xtaccess bad transfert
 WARNING: translation string unused: yearly firewallhits
+WARNING: untranslated string: cached swap
+WARNING: untranslated string: cpu idle usage
+WARNING: untranslated string: cpu interrupt usage
+WARNING: untranslated string: cpu iowait usage
+WARNING: untranslated string: cpu nice usage
+WARNING: untranslated string: cpu steal usage
+WARNING: untranslated string: cpu system usage
+WARNING: untranslated string: cpu user usage
+WARNING: untranslated string: network internal
+WARNING: untranslated string: network traffic graphs others
+WARNING: untranslated string: read bytes
+WARNING: untranslated string: written bytes
index eca0b6e1e88e0699a368c1d9411d2c02f6a4ac18..3c115ba4295a70e99b8082f3ff9d283ff668488f 100644 (file)
@@ -53,6 +53,7 @@
 * cdrtools-2.01
 * centerim-4.22.1
 * clamav-0.91.2
+* collectd-4.2.3
 * coreutils-5.96
 * cpio-2.6
 * cups-1.2.12
 * kudzu-1.2.64
 * l7-protocols-2007-10-10
 * lame-3.97
+* lcd4linux-0.10.1-RC2
 * less-394
 * libaal-1.0.5
 * libart_lgpl-2.3.17
index 71e0b99c47cbdeb978e6900bba67f0d3a5e67a45..47b043b26618438d77ce13172ebc8fb6c09a59e5 100644 (file)
@@ -46,25 +46,24 @@ $ENV{'QUERY_STRING'} =~ s/&//g;
 @cgigraphs = split(/graph=/,$ENV{'QUERY_STRING'});
 $cgigraphs[1] = '' unless defined $cgigraphs[1];
 
-if ($cgigraphs[1] =~ /(load)/) {&Graphs::updateloadgraph ("week");&Graphs::updateloadgraph ("month");&Graphs::updateloadgraph ("year");}
-if ($cgigraphs[1] =~ /(cpu)/) {&Graphs::updatecpugraph ("week");&Graphs::updatecpugraph ("month");&Graphs::updatecpugraph ("year");}
-if ($cgigraphs[1] =~ /(memory|swap)/) {&Graphs::updatememgraph ("week");&Graphs::updatememgraph ("month");&Graphs::updatememgraph ("year");}
+if ($cgigraphs[1] =~ /(load)/) {&Graphs::updateloadgraph ("hour");&Graphs::updateloadgraph ("week");&Graphs::updateloadgraph ("month");&Graphs::updateloadgraph ("year");}
+if ($cgigraphs[1] =~ /(cpu)/) {&Graphs::updatecpugraph ("hour");&Graphs::updatecpugraph ("week");&Graphs::updatecpugraph ("month");&Graphs::updatecpugraph ("year");}
+if ($cgigraphs[1] =~ /(memory|swap)/) {&Graphs::updatememgraph ("hour");&Graphs::updatememgraph ("week");&Graphs::updatememgraph ("month");&Graphs::updatememgraph ("year");}
 if ($cgigraphs[1] =~ /disk/){
           my @devices = `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`;
-
+                                       push(@devices,"uba");
           foreach (@devices) {
                 my $device = $_;
                 chomp($device);
+                                         &Graphs::updatediskgraph ("hour",$device);
                  &Graphs::updatediskgraph ("week",$device);
                  &Graphs::updatediskgraph ("month",$device);
                  &Graphs::updatediskgraph ("year",$device);}}
-if ($cgigraphs[1] =~ /lq/) {&Graphs::updatelqgraph("week");&Graphs::updatelqgraph("month");&Graphs::updatelqgraph("year");}
-if ($cgigraphs[1] =~ /RED/) {&Graphs::updateifgraph("RED", "week");&Graphs::updateifgraph("RED", "month");&Graphs::updateifgraph("RED", "year");}
-if ($cgigraphs[1] =~ /GREEN/) {&Graphs::updateifgraph("GREEN", "week");&Graphs::updateifgraph("GREEN", "month");&Graphs::updateifgraph("GREEN", "year");}
-if ($cgigraphs[1] =~ /BLUE/) {&Graphs::updateifgraph("BLUE", "week");&Graphs::updateifgraph("BLUE", "month");&Graphs::updateifgraph("BLUE", "year");}
-if ($cgigraphs[1] =~ /ORANGE/) {&Graphs::updateifgraph("ORANGE", "week");&Graphs::updateifgraph("ORANGE", "month");&Graphs::updateifgraph("ORANGE", "year");}
+if ($cgigraphs[1] =~ /lq/) {&Graphs::updatelqgraph("hour");&Graphs::updatelqgraph("week");&Graphs::updatelqgraph("month");&Graphs::updatelqgraph("year");}
+if ($cgigraphs[1] =~ /fwhits/) {&Graphs::updatefwhitsgraph("hour");&Graphs::updatefwhitsgraph("week");&Graphs::updatefwhitsgraph("month");&Graphs::updatefwhitsgraph("year");}
+if ($cgigraphs[1] =~ /green/ || $cgigraphs[1] =~ /blue/ || $cgigraphs[1] =~ /ipsec/ || $cgigraphs[1] =~ /orange/ || $cgigraphs[1] =~ /red/ ) {&Graphs::updateifgraph($cgigraphs[1], "hour");&Graphs::updateifgraph($cgigraphs[1], "week");&Graphs::updateifgraph($cgigraphs[1], "month");&Graphs::updateifgraph($cgigraphs[1], "year");}
 
-if ($cgigraphs[1] =~ /(network|GREEN|BLUE|ORANGE|RED|lq)/) {
+if ($cgigraphs[1] =~ /(network|green|blue|orange|red|ipsec|lq)/) {
        &Header::openpage($Lang::tr{'network traffic graphs'}, 1, '');
 } else {
        &Header::openpage($Lang::tr{'system graphs'}, 1, '');
@@ -72,7 +71,7 @@ if ($cgigraphs[1] =~ /(network|GREEN|BLUE|ORANGE|RED|lq)/) {
 
 &Header::openbigbox('100%', 'left');
 
-if ($cgigraphs[1] =~ /(GREEN|BLUE|ORANGE|RED|lq|cpu|memory|swap|disk|load)/) {
+if ($cgigraphs[1] =~ /(green|blue|orange|red|ipsec|lq|cpu|memory|swap|disk|load|fwhits)/) {
        my $graph = $cgigraphs[1];
        my $graphname = ucfirst(lc($cgigraphs[1]));
        &Header::openbox('100%', 'center', "$graphname $Lang::tr{'graph'}");
@@ -81,6 +80,7 @@ if ($cgigraphs[1] =~ /(GREEN|BLUE|ORANGE|RED|lq|cpu|memory|swap|disk|load)/) {
                my $ftime = localtime((stat("$graphdir/${graph}-day.png"))[9]);
                print "<center>";
                print "<b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br /><hr />\n";
+               print "<img alt='' src='/graphs/${graph}-hour.png' border='0' /><hr />";
                print "<img alt='' src='/graphs/${graph}-day.png' border='0' /><hr />";
                print "<img alt='' src='/graphs/${graph}-week.png' border='0' /><hr />";
                print "<img alt='' src='/graphs/${graph}-month.png' border='0' /><hr />";
index 1a77bee992ec0f9017bd8dadcd5bd987b0a83952..53e2cfc9a3e0cdf7d16388cd2e5e2c40451e5c66 100644 (file)
@@ -50,15 +50,19 @@ $cgiparams[1] = '' unless defined $cgiparams[1];
 
 if ($cgiparams[1] =~ /red/) {
        &Header::openpage($Lang::tr{'network traffic graphs external'}, 1, '');
-       push (@graphs, ("RED"));
-       push (@graphs, ('lq'));
-} else {
+       push (@graphs, ($netsettings{'RED_DEV'}));
+       push (@graphs, ("ipsec0"));
+}elsif ($cgiparams[1] =~ /other/) {
+       &Header::openpage($Lang::tr{'network traffic graphs others'}, 1, '');
+       push (@graphs, ("lq"));
+       push (@graphs, ("fwhits"));
+}else {
        &Header::openpage($Lang::tr{'network traffic graphs internal'}, 1, '');
-       push (@graphs, ('GREEN'));
+       push (@graphs, ($netsettings{'GREEN_DEV'}));
        if ($netsettings{'BLUE_DEV'}) {
-               push (@graphs, ('BLUE')); }
+               push (@graphs, ($netsettings{'BLUE_DEV'})); }
        if ($netsettings{'ORANGE_DEV'}) {
-               push (@graphs, ('ORANGE')); }
+               push (@graphs, ($netsettings{'ORANGE_DEV'})); }
 }
 
 &Header::openbigbox('100%', 'left');
@@ -67,6 +71,8 @@ foreach my $graphname (@graphs) {
 
   if ($graphname eq "lq" )
   {  &Graphs::updatelqgraph("day");  }
+  elsif ($graphname eq "fwhits" )
+  {  &Graphs::updatefwhitsgraph("day");  }
   else
   {  &Graphs::updateifgraph($graphname, "day");  }
   
diff --git a/lfs/collectd b/lfs/collectd
new file mode 100644 (file)
index 0000000..b619038
--- /dev/null
@@ -0,0 +1,91 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+PKG_NAME   = collectd
+VER        = 4.2.3
+
+THISAPP    = collectd-$(VER)
+DL_FILE    = $(THISAPP).tar.bz2
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = collectd
+
+DEPS       = ""
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 19ebd43875fa364a356065b1d692c944
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+dist:
+       $(PAK)
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --localstatedir=/var \
+               --disable-{apache,apple_sensors,csv,ipvs,memcached,mysql,netlink,nginx,nut} \
+               --disable-{perl,serial,sensors,snmp,tape,vserver,wireless,xmms} \
+               --enable-{apcups,battery,cpu{,freq},df,disk,dns,email,entropy,exec,hddtemp} \
+               --enable-{interface,iptables,irq,load,logfile,mbmon,memory,multimeter} \
+               --enable-{network,nfs,ntpd,ping,processes,rrdtool,swap,syslog} \
+               --enable-{tcpconns,unixsock,users} \
+               --with-rrdtool=/usr/share/rrdtool-1.2.15 --enable-debug
+       cd $(DIR_APP) && make install
+       cp -vf $(DIR_SRC)/config/collectd/collectd.conf /etc/
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index 60745f4b7381de95455eca6832b438e5d1d2adc4..c464ba7485dfbfaf4c3ac14175801223fea41f9d 100644 (file)
@@ -30,7 +30,7 @@ THISAPP    = guardian-$(VER)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = guardian
-PAK_VER    = 1
+PAK_VER    = 2
 
 DEPS       = ""
 
@@ -64,5 +64,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        install -v -m 755 $(DIR_SRC)/config/guardian/guardian.pl /usr/local/bin/
        install -v -m 755 $(DIR_SRC)/config/guardian/guardian_block.sh /usr/local/bin/
        install -v -m 755 $(DIR_SRC)/config/guardian/guardian_unblock.sh /usr/local/bin/
+       chown nobody.nobody /var/ipfire/guardian
        chown nobody.nobody /var/ipfire/guardian/{guardian.conf,guardian.ignore}
        @$(POSTBUILD)
index c30615d8833f210ff060d364475b698252ef70a4..bc53e3c44b70f70aa4b44c7231e1178cd380e899 100644 (file)
@@ -90,8 +90,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        # hack to disable IPv6 compilation as the configuration variable does not work when ip6.h is present
        cd $(DIR_APP) && sed -i -e 's/DO_IPV6:=1/DO_IPV6:=0/' Makefile
        cd $(DIR_APP) && make BINDIR=/sbin MANDIR=/usr/share/man LIBDIR=/lib $(MAKETUNING)
-       cd $(DIR_APP) && make BINDIR=/sbin MANDIR=/usr/share/man LIBDIR=/lib install
+       cd $(DIR_APP) && make BINDIR=/sbin MANDIR=/usr/share/man LIBDIR=/lib install install-devel
        cd $(DIR_APP) && cp -fva include/* /usr/include
+       -mkdir /usr/include/libiptc
+       cd $(DIR_APP) && cp -vf include/libiptc/{libiptc.h,ipt_kernel_headers.h} \
+               /usr/include/libiptc
 
        cd $(DIR_SRC) && tar xfj $(DIR_DL)/libnfnetlink-0.0.25.tar.bz2
        cd $(DIR_SRC)/libnfnetlink-0.0.25 && ./configure --prefix=/usr
diff --git a/lfs/lcd4linux b/lfs/lcd4linux
new file mode 100644 (file)
index 0000000..dfabfb4
--- /dev/null
@@ -0,0 +1,84 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 0.10.1-RC2
+
+THISAPP    = lcd4linux-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = lcd4linux
+PAK_VER    = 1
+
+DEPS       = ""
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = a64c40feb74862cb4a91281bc7737f72
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+dist: 
+       $(PAK)
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/var/ipfire/lcd4linux
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/make.sh b/make.sh
index 2c308a27b373ec1b35e8480d6a8d0e9db140d14a..c4fb74b476d155c2308379d41b9d7a742d33dce4 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -524,6 +524,8 @@ buildipfire() {
   ipfiremake lsof
   ipfiremake centerim
   ipfiremake br2684ctl
+  ipfiremake collectd
+  ipfiremake lcd4linux
   ipfiremake neon
   ipfiremake subversion
 }
diff --git a/src/initscripts/init.d/collectd b/src/initscripts/init.d/collectd
new file mode 100644 (file)
index 0000000..f3fa208
--- /dev/null
@@ -0,0 +1,48 @@
+#!/bin/sh
+# Begin $rc_base/init.d/collecd
+
+
+. /etc/sysconfig/rc
+. $rc_functions
+
+case "$1" in
+       start)
+               boot_mesg "Starting Collection daemon..."
+               /usr/sbin/collectd -C /etc/collectd.conf
+               evaluate_retval
+#              for disk in `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`; do boot_mesg "Bringing up hddtemp daemon for $disk ..."; /usr/sbin/hddtemp $disk -d -l localhost; evaluate_retval; done
+#              boot_mesg "Bringing up mbmon daemon..."
+#              /usr/bin/mbmon -P 411 -r
+#              evaluate_retval
+               ;;
+
+       stop)
+#              boot_mesg "Stopping mbmon daemon..."
+#              killproc /usr/bin/mbmon
+#              evaluate_retval
+#              boot_mesg "Stopping hddtemp daemon..."
+#              killproc /usr/sbin/hddtemp
+#              evaluate_retval
+               boot_mesg "Stopping Collection daemon..."
+               killproc /usr/sbin/collectd
+               evaluate_retval
+               ;;
+
+       restart)
+               $0 stop
+               sleep 1
+               $0 start
+               evaluate_retval
+                               ;;
+
+       status)
+               statusproc /usr/sbin/collectd
+               ;;
+
+       *)
+               echo "Usage: $0 {start|stop|restart|status}"
+               exit 1
+               ;;
+esac
+
+# End $rc_base/init.d/collectd
index 7be289b00d0d63008323702219a4e9f3ce1e8a10..f56cb21843cff2e152c364afae6559db7843f684 100644 (file)
@@ -159,6 +159,9 @@ case "${1}" in
 
                                . /var/ipfire/dhcpc/dhcpcd-${DEVICE}.info
                                echo "$IPADDR"  > /var/ipfire/red/local-ipaddress
+                               grep -v "gateway" /etc/hosts > /tmp/hosts
+                               echo "$GATEWAY gateway"  >> /tmp/hosts
+                               mv /tmp/hosts /etc/hosts
                                echo "$GATEWAY" > /var/ipfire/red/remote-ipaddress
                        else
                                echo ""
index 3c7941ea64090c1a84b7d6a1e43a49dee6435ca3..e1a49d28e231634bd992b74dd975267b709e2328 100644 (file)
@@ -64,15 +64,15 @@ case "$1" in
                ;;
 
        stop)
-       
+                       iptables -t nat -F SQUID
                if [ -e /var/run/squid.pid ]; then
                        boot_mesg "Stopping Squid Proxy Server..."
-                       iptables -t nat -F SQUID
                        squid -k shutdown >/dev/null 2>&1
                        evaluate_retval
                        killproc /usr/bin/squidGuard >/dev/null
                        killproc /usr/sbin/updxlrator >/dev/null
                        killproc /usr/sbin/squid >/dev/null
+                       rm -rf /var/run/squid.pid       
                fi
                ;;
 
index 53daccc888ad52fdd1ea6be34b02bcb61b3e7d6d..4e628b87a824a76f464af47d51d44f532c4c42f0 100644 (file)
@@ -92,260 +92,6 @@ while( $_ = <FD> )
 close(FD);
 close(MBMON_OUT);
 
-sub gettraffic {
-       my $interface = $_[0];
-
-       my $bytesin=0;
-       my $bytesout=0;
-
-       foreach (@ipacsum){
-               # Incoming...
-               $bytesin += $1 if (/^[\* ]\s+incoming\s+${interface}.+\:\s+(\d+)/);
-               # Forwarded Incoming...
-               $bytesin += $1 if (/^[\* ]\s+forwarded\s+incoming\s+${interface}.+\:\s+(\d+)/);
-               # Outgoing...
-               $bytesout += $1 if (/^[* ]\s+outgoing\s+${interface}.+\:\s+(\d+)/);
-               # Forwarded Outgoing...
-               $bytesout += $1 if (/^[* ]\s+forwarded\s+outgoing\s+${interface}.+\:\s+(\d+)/);
-       }
-       return "$bytesin:$bytesout";
-}
-
-sub updatecpudata {
-       if ( ! -e "$rrdlog/cpu.rrd") {
-               RRDs::create ("$rrdlog/cpu.rrd", "--step=300",
-               "DS:user:COUNTER:600:0:500000000",
-               "DS:system:COUNTER:600:0:500000000",
-               "DS:idle:COUNTER:600:0:500000000",
-               "DS:iowait:COUNTER:600:0:500000000",
-               "DS:irq:COUNTER:600:0:500000000",
-               "RRA:AVERAGE:0.5:1:576",
-               "RRA:AVERAGE:0.5:6:672",
-               "RRA:AVERAGE:0.5:24:732",
-               "RRA:AVERAGE:0.5:144:1460");
-               $ERROR = RRDs::error;
-               print "Error in RRD::create for cpu: $ERROR\n" if $ERROR;
-       }
-
-       my ($cpu, $user, $nice, $system, $idle, $iowait, $irq, $softirq);
-       open STAT, "/proc/stat";
-       while(<STAT>) {
-               chomp;
-               /^cpu\s/ or next;
-               ($cpu, $user, $nice, $system, $idle, $iowait, $irq, $softirq) = split /\s+/;
-               last;
-       }
-       close STAT;
-       $user += $nice;
-       $irq += $softirq;
-       RRDs::update ("$rrdlog/cpu.rrd",
-       "-t", "user:system:idle:iowait:irq",
-       "N:$user:$system:$idle:$iowait:$irq");
-       $ERROR = RRDs::error;
-       print "Error in RRD::update for cpu: $ERROR\n" if $ERROR;
-}
-
-sub updateloaddata {
-       if ( ! -e "$rrdlog/load.rrd") {
-               RRDs::create ("$rrdlog/load.rrd", "--step=60",
-               "DS:load1:GAUGE:120:0:U",
-               "DS:load5:GAUGE:120:0:U",
-               "DS:load15:GAUGE:120:0:U",
-               "RRA:AVERAGE:0.5:1:2160",
-               "RRA:AVERAGE:0.5:5:2016",
-               "RRA:AVERAGE:0.5:15:2880",
-               "RRA:AVERAGE:0.5:60:8760");
-               $ERROR = RRDs::error;
-               print "Error in RRD::create for cpu: $ERROR\n" if $ERROR;
-       }
-}
-
-sub updatememdata {
-       my ($memused, $memfree, $memshared, $membuffers, $memcache, $swapused, $swapfree, $swaptotal);
-       if ( ! -e "$rrdlog/mem.rrd") {
-               RRDs::create ("$rrdlog/mem.rrd", "--step=300",
-               "DS:memused:ABSOLUTE:600:0:5000000000",
-               "DS:memfree:ABSOLUTE:600:0:5000000000",
-               "DS:memshared:ABSOLUTE:600:0:5000000000",
-               "DS:membuffers:ABSOLUTE:600:0:5000000000",
-               "DS:memcache:ABSOLUTE:600:0:5000000000",
-               "DS:swapused:ABSOLUTE:600:0:5000000000",
-               "DS:swapfree:ABSOLUTE:600:0:5000000000",
-               "RRA:AVERAGE:0.5:1:576",
-               "RRA:AVERAGE:0.5:6:672",
-               "RRA:AVERAGE:0.5:24:732",
-               "RRA:AVERAGE:0.5:144:1460");
-               $ERROR = RRDs::error;
-               print "Error in RRD::create for mem: $ERROR\n" if $ERROR;
-       }
-
-       open MEM, "/proc/meminfo";
-       while(<MEM>) {
-               chomp;
-               if ($_ =~ /^MemTotal:/) {my @temp = split (/\s+/, $_);$memused    = $temp[1];
-               } elsif ($_ =~ /^MemFree:/) {my @temp = split (/\s+/, $_);$memfree    = $temp[1];
-               } elsif ($_ =~ /^Cached:/) {my @temp = split (/\s+/, $_);$memcache   = $temp[1];
-               } elsif ($_ =~ /^Buffers:/) {my @temp = split (/\s+/, $_);$membuffers = $temp[1];
-               } elsif ($_ =~ /^SwapTotal:/) {my @temp = split (/\s+/, $_);$swaptotal   = $temp[1];
-               } elsif ($_ =~ /^SwapFree:/) {my @temp = split (/\s+/, $_);$swapfree   = $temp[1];}
-       }
-       close MEM;
-
-       system("/bin/df > /tmp/diskfree");
-       open DF, "/tmp/diskfree";
-       while(<DF>) {
-               chomp;
-               if ($_ =~ /^shm/) {my @temp = split (/\s+/, $_);$memshared  = $temp[2];}
-       }
-       close DF;
-       system("/bin/rm -f /tmp/diskfree");
-       $swapused = $swaptotal-$swapfree;
-       RRDs::update ("$rrdlog/mem.rrd",
-       "-t", "memused:memfree:memshared:membuffers:memcache:swapused:swapfree",
-       "N:$memused:$memfree:$memshared:$membuffers:$memcache:$swapused:$swapfree");
-       $ERROR = RRDs::error;
-       print "Error in RRD::update for mem: $ERROR\n" if $ERROR;
-}
-
-sub updatediskdata {
-       my $disk = $_[0];
-       my ($readsect, $writesect, $trash);
-       my @array = split(/\//,$disk);
-       if ( ! -e "$rrdlog/disk-".$array[$#array].".rrd") {
-               RRDs::create ("$rrdlog/disk-".$array[$#array].".rrd", "--step=300",
-               "DS:readsect:COUNTER:600:0:5000000000",
-               "DS:writesect:COUNTER:600:0:5000000000",
-               "RRA:AVERAGE:0.5:1:576",
-               "RRA:AVERAGE:0.5:6:672",
-               "RRA:AVERAGE:0.5:24:732",
-               "RRA:AVERAGE:0.5:144:1460");
-               $ERROR = RRDs::error;
-               print "Error in RRD::create for disk $disk: $ERROR\n" if $ERROR;
-       }
-       my $Zeilen = `/usr/bin/iostat $disk | tail -2 | head -1`;
-       ($trash, $trash, $trash, $trash, $readsect, $writesect) = split(/\s+/,$Zeilen);
-       print "\nread:".$readsect."write:".$writesect."\n";
-       if ($readsect && $writesect) {
-               RRDs::update ("$rrdlog/disk-".$array[$#array].".rrd",
-               "-t", "readsect:writesect",
-               "N:$readsect:$writesect");
-               $ERROR = RRDs::error;
-               print "Error in RRD::update for disk $disk: $ERROR\n" if $ERROR;
-       } else {print "Error in RRD::update for disk: $disk no data available\n";}
-}
-
-sub updateifdata {
-       my $interface = $_[0];
-       if ( ! -e "$rrdlog/$interface.rrd") {
-               RRDs::create ("$rrdlog/$interface.rrd", "--step=300",
-               "DS:incoming:ABSOLUTE:600:0:12500000",
-               "DS:outgoing:ABSOLUTE:600:0:12500000",
-               "RRA:AVERAGE:0.5:1:576",
-               "RRA:AVERAGE:0.5:6:672",
-               "RRA:AVERAGE:0.5:24:732",
-               "RRA:AVERAGE:0.5:144:1460");
-               $ERROR = RRDs::error;
-               print "Error in RRD::create for $interface: $ERROR\n" if $ERROR;
-       }
-       my $traffic = gettraffic ($interface);
-       RRDs::update ("$rrdlog/$interface.rrd",
-       "-t", "incoming:outgoing",
-       "N:$traffic");
-       $ERROR = RRDs::error;
-       print "Error in RRD::update for $interface: $ERROR\n" if $ERROR;
-}
-
-sub updatefwhitsdata {
-       my $portamount=0;
-       my $alertaktuell=0;
-       my $aktuell=0;
-       my $portaktuell=0;
-       my $skip=0;
-       if (! -e "$rrdlog/firewallhits.rrd"){
-               RRDs::create ("$rrdlog/firewallhits.rrd", "--step=300",
-               "DS:amount:GAUGE:600:0:U",
-               "DS:portamount:GAUGE:600:0:U",
-               "RRA:AVERAGE:0.5:1:576",
-               "RRA:AVERAGE:0.5:6:672",
-               "RRA:AVERAGE:0.5:24:732",
-               "RRA:AVERAGE:0.5:144:1460");
-               $ERROR = RRDs::error;
-               print "Error in RRD::create for cpu: $ERROR\n" if $ERROR;
-       }
-       system("logtailfwhits /var/log/messages /var/log/fwhits.messages.offset >/tmp/messages.fwhits");
-       if (!(open (FILE,'/tmp/messages.fwhits'))) {$skip=1;}
-       $aktuell = 0;
-       if (!$skip) {
-               while (<FILE>) {
-                       if (/kernel: DROP_INPUT.*$/) {$aktuell++;}
-               }
-               close (FILE);
-       }
-       system("logtailfwhits /var/log/snort/alert /var/log/snort/fwhits.alert.offset >/tmp/snort.fwhits");
-       if (!(open (FILE,'/tmp/snort.fwhits'))) {$skip=1;}
-       $alertaktuell = 0;
-       if (!$skip) {
-               while (<FILE>) {
-                       if (/scan.*$/) {$alertaktuell++;}
-               }
-               close (FILE);
-       }
-       if (!(open (FILE,'/tmp/messages.fwhits'))) {$skip=1;}
-       $portaktuell = 0;
-       if (!$skip) {
-               while (<FILE>) {
-                       if (/kernel:.*(Scan.*)$/) {$portaktuell++;}
-               }
-               close (FILE);
-       }
-       system("rm /tmp/messages.fwhits");
-       system("rm /tmp/snort.fwhits");
-       $portamount = $portaktuell + $alertaktuell;
-       chomp($portamount);
-       RRDs::update ("$rrdlog/firewallhits.rrd",
-       "N:$aktuell:$portamount");
-       $ERROR = RRDs::error;
-       print "Error in RRD::update for Firewallhits: $ERROR\n" if $ERROR;
-}
-
-# Creates and updates a link quality database
-# -------------------------------------------
-sub updatelq {
-       if ( ! -e "$rrdlog/lq.rrd") {
-               RRDs::create ("$rrdlog/lq.rrd", "--step=300",
-               "DS:loss:GAUGE:600:0:100",
-               "DS:roundtrip:GAUGE:600:0:10000",
-               "RRA:AVERAGE:0.5:1:576",
-               "RRA:AVERAGE:0.5:6:672",
-               "RRA:AVERAGE:0.5:24:732",
-               "RRA:AVERAGE:0.5:144:1460");
-               $ERROR = RRDs::error;
-               print "Error in RRD::create for link: $ERROR\n" if $ERROR;
-       }
-       my $packetloss=0;
-       my $roundtrip=0;
-       my $test=0;
-       #LQ_GATEWAY is the ip of your isp's public ip facing you
-       my $LQ_GATEWAY=`cat /var/ipfire/red/remote-ipaddress`;
-       chomp($LQ_GATEWAY);
-       my $NUMPINGS=5;
-       my $pingoutput = `/usr/bin/ping -w 10 -c $NUMPINGS -q $LQ_GATEWAY | tail -2`;
-       my @temp = split (/\/|\%|\s/, $pingoutput);
-       $packetloss = $temp[5];
-       $roundtrip = $temp[17];
-       print "Paketlos->".$packetloss."<-Roundtrip->".$roundtrip."<-\n";
-       if ( $packetloss eq "100" ){
-               my $pingoutput = `/usr/bin/ping -w 10 -c $NUMPINGS -q ping.ipfire.org  | tail -2`;
-               my @temp = split (/\/|\%|\s/, $pingoutput);
-               $packetloss = $temp[5];
-               $roundtrip = $temp[17];
-               print "Paketlos->".$packetloss."<-Roundtrip->".$roundtrip."<-\n";
-       }
-       RRDs::update ("$rrdlog/lq.rrd", "N:$packetloss:$roundtrip");
-       $ERROR = RRDs::error;
-       print "Error in RRD::update for line quality: $ERROR\n" if $ERROR;
-}
-
 sub updatehdddata
 {
        my $disk = $_[0];
@@ -466,13 +212,6 @@ if ((${Lang::language} eq 'cs') || (${Lang::language} eq 'hu') || (${Lang::langu
        foreach my $key(keys %Lang::tr) {from_to($tr{$key}, "utf-8", "iso-8859-1");}
 }
 
-###
-### System graphs
-###
-updatecpudata();
-updateloaddata();
-updatememdata();
-
 ###
 ### HDD graphs
 ###
@@ -509,33 +248,11 @@ foreach (@disks){
        print DATEI $disk."-".$status;
        close(DATEI);
 
-       updatediskdata($disk);
        updatehdddata($disk);
 
 }
 
-###
-### Firewallhits
-###
-updatefwhitsdata();
-
-###
-### Link Quality
-###
-updatelq();
-
 ###
 ### Mbmon Data
 ###
 updatembmondata();
-
-###
-### Network Graphs
-###
-@ipacsum = `/usr/sbin/ipacsum --exact -s 5m 2>/dev/null`;
-if (@ipacsum) {
-       updateifdata  ("GREEN");
-       updateifdata  ("RED");
-       if ($settings{'CONFIG_TYPE'} =~ /^(2|4)$/ ) {updateifdata  ("ORANGE");}
-       if ($settings{'CONFIG_TYPE'} =~ /^(3|4)$/ ) {updateifdata  ("BLUE");}
-}