X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=blobdiff_plain;f=html%2Fcgi-bin%2Fmedia.cgi;h=5753bc301dfdcb7a74e7c543e077a9c0b30e27ce;hp=be02f489dd8f9da7b8487b16145d09f0f53f3dc2;hb=535dab60d61f86d78e8c6753c4d6c69bd0f3cbcc;hpb=70df830214c97a68fcb7e89ae0d7df58c35590be diff --git a/html/cgi-bin/media.cgi b/html/cgi-bin/media.cgi index be02f489dd..5753bc301d 100644 --- a/html/cgi-bin/media.cgi +++ b/html/cgi-bin/media.cgi @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2013 IPFire Team # # # # 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 # @@ -30,37 +30,50 @@ require "${General::swroot}/lang.pl"; require "${General::swroot}/header.pl"; require "${General::swroot}/graphs.pl"; +my %color = (); +my %mainsettings = (); +&General::readhash("${General::swroot}/main/settings", \%mainsettings); +&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color); + #workaround to suppress a warning when a variable is used only once my @dummy = ( ${Header::colourred} ); undef (@dummy); my %cgiparams=(); -&Header::showhttpheaders(); - -&Header::getcgihash(\%cgiparams); - -&Header::openpage($Lang::tr{'media information'}, 1, ''); - -&Header::openbigbox('100%', 'left'); - -my @devices = `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`; - -foreach (@devices) { - my $device = $_; - chomp($device); - &Graphs::updatediskgraph ("day",$device); - diskbox("$device"); -} - -&Header::openbox('100%', 'center', $Lang::tr{'disk usage'}); -print "\n"; -open(DF,'/bin/df -B M -x rootfs|'); -while() -{ - if ($_ =~ m/^Filesystem/ ) - { - print <\n"; + open(DF,'/bin/df -P -B M -x rootfs|'); + while(){ + if ($_ =~ m/^Filesystem/ ){ + print < @@ -71,11 +84,9 @@ while() END ; - } - else - { - my ($device,$size,$used,$free,$percent,$mount) = split; - print < @@ -85,24 +96,22 @@ END END ; - } -} -close DF; -print " @@ -113,11 +122,9 @@ while() END ; - } - else - { - my ($device,$size,$used,$free,$percent,$mount) = split; - print < @@ -127,33 +134,35 @@ END END ; - } -} -close DF; -my @iostat1 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$1}'); -my @iostat2 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$5}'); -my @iostat3 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$6}'); -print ""; -my $i=0; - -for(my $i = 1; $i <= $#iostat1; $i++) -{ -if ( $i eq '1' ){print "";} -else {print "";} -} -print "
$Lang::tr{'device'} $Lang::tr{'mounted on'}
$device $mount END ; - &percentbar($percent); - print < $percent
 \n

Inodes

\n"; + } + } + close DF; + print "
 \n

Inodes

\n"; -open(DF,'/bin/df -i -x rootfs|'); -while() -{ - if ($_ =~ m/^Filesystem/ ) - { - print <){ + if ($_ =~ m/^Filesystem/ ){ + print <
$Lang::tr{'device'} $Lang::tr{'mounted on'}
$device $mount END ; - &percentbar($percent); - print < $percent
 \n

transfers

DeviceMB readMB writen
$iostat1[$i]$iostat2[$i]$iostat3[$i]
\n"; -&Header::closebox(); - -&Header::closebigbox(); + } + } + close DF; + my @iostat1 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$1}'); + my @iostat2 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$5}'); + my @iostat3 = qx(/usr/bin/iostat -dm -p | grep -v "Linux" | awk '{print \$6}'); + print " \n

transfers

"; + my $i=0; + + for(my $i = 1; $i <= $#iostat1; $i++){ + if ( $i eq '1' ){ + print "$Lang::tr{'device'}$Lang::tr{'MB read'}$Lang::tr{'MB written'}"; + }else{ + print "$iostat1[$i]$iostat2[$i]$iostat3[$i]"; + } + } + print "\n"; + &Header::closebox(); -&Header::closepage(); + &Header::closebigbox(); + &Header::closepage(); +} sub percentbar { @@ -183,44 +192,33 @@ END } sub diskbox { - my $disk = $_[0]; - chomp $disk; - my @status; - if (-e "$Header::graphdir/disk-$disk-day.png") { - &Header::openbox('100%', 'center', "Disk /dev/$disk $Lang::tr{'graph'}"); - my $ftime = localtime((stat("$Header::graphdir/disk-$disk-day.png"))[9]); - print "
$Lang::tr{'the statistics were last updated at'}: $ftime

\n"; - print ""; - print ""; - print ""; - print "
\n"; - - if (-e "/tmp/hddstatus") { - open(DATEI, "; - close(DATEI); - - foreach (@diskstate){ - if ( $_ =~/$disk/ ){@status = split(/-/,$_);} - } - - if ( $status[1]=~/standby/){ - my $ftime = localtime((stat("/tmp/hddshutdown-$disk"))[9]); - print"Disk /dev/$disk status:".$status[1]." (since $ftime)"; - } - else{ - print"Disk /dev/$disk status:".$status[1].""; - } - } - my $smart = `/usr/local/bin/smartctrl $disk`; - $smart = &Header::cleanhtml($smart); - print < - + my $disk = $_[0]; + chomp $disk; + my @status; + if (-e "/var/run/hddstatus"){ + open(DATEI, "; + close(DATEI); + + foreach (@diskstate){ + if ( $_ =~/$disk/ ){@status = split(/-/,$_);} + } + + if ( $status[1]=~/standby/){ + my $ftime = localtime((stat("/var/run/hddshutdown-$disk"))[9]); + print"Disk $disk status:".$status[1]." ($Lang::tr{'since'} $ftime)"; + }else{ + print"Disk $disk status:".$status[1].""; + } + } + + my $smart = `/usr/local/bin/smartctrl $disk`; + $smart = &Header::cleanhtml($smart); + print < + END ; - &Header::closebox(); - } }