D-Link Forums
The Graveyard - Products No Longer Supported => D-Link Storage => DNS-323 => Topic started by: Ltrip on June 13, 2011, 09:07:10 PM
-
I have been having some problems with my dns-323. At first I assumed it was a drive going bad.
Now I think it might be the fan in the dns-323. Last night I went to shut it down, and the case was very hot.
Other than observing it when it gets hot, is there a way for the system to tell me the fan is working or not?
I am on firmware 1.06.
Thanks,
-
The fan sounds like a jumbo jet (!), hence all the conversations on this board about how to make it turn down the speed when not needed.
In the firmware (certainly FW 1.08 and above) there is an option to chose fan settings. Turn it up to constant max. You cannot miss the noise.
You could also use the old motor engineer trick of putting a screwdriver with a big head pushed against the 323 box and the big blunt bit in your ear (not the sharp pointy bit!). It acts like a stethoscope to amplify the sound. You might try it on a hard disc first to get an idea of what that sort of whirring sound it makes(to eliminate it from the other noises).
-
I simply have a script that monitors the temperature every hour. The system temp in my case never goes over 39 as I have it set to "low/high". If the temp goes higher I have it set to email me.
I think the system will log a fan failure. Can't say as I've never had one.
A piece of ribbon taped so it hangs over the opening would indicate air flow.
-
hi dosborne.. can you share your fan script?
thanks
-
I run this on my Linux server, its Perl, so it is pretty generic.
#!/usr/bin/perl
# This script extracts some NAS properties from the status page
require "/home/d/diplomcy/data/common.pl.cfg";
@LANip = ("192.168.1.40","192.168.1.41"); # IP address of the NAS server(s)
push(@LANip,"192.168.1.42");
$aPort = "81"; # Port value for the admin page
$bPort = "80"; # Backup (default) port to try if the primary is unreachable
# flags: 0=off 1=on
$logger = 1; # Log status to syslog
$debug = 0; # Detailed output
if ("$ARGV[0]" eq "debug") { $debug = 1; print "Debug mode enabled\n"; }
$version = "$0";
$version =~ s/(.*\/)//ig;
use LWP::UserAgent;
foreach $LANip(@LANip) {
$capacity = "";
$ncap = 0;
$freespace = "";
$nfree = 0;
$percent = "";
$temperature = "";
$sync = "";
$uptime = "";
$uPort = $aPort;
&get_nas_info;
if (($freespace>0) && ($capacity>0)) { $percent = int(($freespace/$capacity)*100); }
$logtext=$version.": NAS ".$LANip.":".$uPort;
if (length($capacity)>0) { $logtext.=" Size:".$capacity."GB"; } else { $logtext.=" Size:unknown"; }
if ($freespace>0) { $logtext.=" Free:".$freespace."GB"; }
if (($freespace>0) && ($percent>0)) { $logtext.=" [$percent%]"; }
if (length($temperature)>0) { $logtext.=" Temp:".$temperature; }
if (length($sync)>0) { $logtext.=" Sync:".$sync; $uptime = ""; }
if (length($uptime)>0) { $logtext.=" Up:".$uptime; }
if ("$ARGV[0]" eq "status") { `/usr/bin/logger "$logtext"`; }
print $date_exp." ".$logtext."\n";
}
exit;
sub get_nas_info {
$ua = LWP::UserAgent->new(timeout=>15);
$url = "http://".$LANip.":".$uPort."/web/status/device_status.asp";
$req = HTTP::Request->new(GET => $url);
$result = $ua->request($req);
unless ($result->is_success) {
# print "Could not connect to port ".$aPort.", trying ".$bPort."\n";
$uPort = $bPort;
$url = "http://".$LANip.":".$uPort."/web/status/device_status.asp";
$req = HTTP::Request->new(GET => $url);
$result = $ua->request($req);
unless ($result->is_success) {
$text = "Can't get to $url -- ".$result->status_line;
if ($logger eq 1) { `/usr/bin/logger "$version: $text"`; }
die "$text";
}
}
$text = $result->as_string;
@responses = split /(\r|\n)/, $text;
foreach $response(@responses) {
chomp($response);
$response =~ s/\s\s/ /ig;
if (($debug eq 1) && (length($response)>1)) { print "-> ".$response."\n"; }
#-> var temper="109:43";
if ($response =~ m/temper="/) {
# $response =~ s/.*temper="//ig; # Strip leading text
# $response =~ s/";/°C\)/ig; # Insert Celsius indicator
# $response =~ s/:/°F\(/ig; # Insert Farenheit indicator
$response =~ s/.*://ig; # Strip leading text
$response =~ s/";/°C/ig; # Insert Celsius indicator
$temperature = $response;
}
#-> <tr><td class="labelCell2">Total Hard Drive Capacity:</td><td><strong> 983453 MB</strong></td></tr>
if ($response =~ m/Total Hard Drive Capacity:/) {
if (($debug gt 0) && (length($response)>1)) { print "Capacity-> ".$response."\n"; }
$response =~ s/.*\ //ig; # Strip leading text
$response =~ s/ MB.*//ig; # Strip trailing text
$response = int($response/1024);
$response = int(($response*1000)/1024);
$response = int(($response*1000)/1024);
$ncap = $ncap + $response;
if (($debug gt 0) && (length($response)>1)) { print "Capacity-> ".$response."\n"; }
# $response =~ s/(\d{1,3}?)(?=(\d{3})+$)/$1,/g;
$capacity = sprintf("%04d",$ncap);
}
#-> <tr><td class="labelCell2">Unused Space:</td><td><strong> 707784 MB</strong></td></tr></table><hr>
if ($response =~ m/Unused Space:/) {
$response =~ s/.*\ //ig;
$response =~ s/ MB.*//ig;
$response = int($response/1024);
$response = int(($response*1000)/1024);
$response = int(($response*1000)/1024);
$nfree = $nfree + $response;
# $response =~ s/(\d{1,3}?)(?=(\d{3})+$)/$1,/g;
$freespace = sprintf("%04d",$nfree);
}
#->Sync Time Remaining: Completed
if ($response =~ m/Sync Time Remaining:/) {
$response =~ s/.*\ //ig;
$response =~ s/\<.*//ig;
$response =~ s/ / /ig;
if (not $response =~ m/Completed/) {
$sync = $response;
}
}
#->System Up Time: 0 day 0 hour 1 minutes
if ($response =~ m/ minute/) {
$response =~ s/.*\ //ig;
$response =~ s/\<.*//ig;
$response =~ s/ / /ig;
$response =~ s/^0 day /0 days /ig;
$response =~ s/ 0 hour / 0 hours /ig;
$response =~ s/ 0 minute/ 0 minutes/ig;
$response =~ s/^1 days/1 day/ig;
$response =~ s/ 1 hours/ 1 hour/ig;
$response =~ s/ 1 minutes/ 1 minute/ig;
$uptime = $response;
}
}
}
# eof
I run it every hour and it produces output like this Sat, 18 Jun 2011 11:00:03 EDT check_nas.pl: NAS 192.168.1.40:81 Size:0915GB Free:0504GB [55%] Temp:36°C Up:87 days 21 hours 21 minutes
Sat, 18 Jun 2011 11:00:03 EDT check_nas.pl: NAS 192.168.1.41:81 Size:2748GB Free:2608GB [94%] Temp:34°C Up:87 days 21 hours 21 minutes
Sat, 18 Jun 2011 11:00:03 EDT check_nas.pl: NAS 192.168.1.42:81 Size:3662GB Free:1781GB [48%] Temp:33°C Up:5 days 1 hour 48 minutes
Sat, 18 Jun 2011 12:00:03 EDT check_nas.pl: NAS 192.168.1.40:81 Size:0915GB Free:0504GB [55%] Temp:36°C Up:87 days 22 hours 21 minutes
Sat, 18 Jun 2011 12:00:03 EDT check_nas.pl: NAS 192.168.1.41:81 Size:2748GB Free:2608GB [94%] Temp:34°C Up:87 days 22 hours 21 minutes
Sat, 18 Jun 2011 12:00:03 EDT check_nas.pl: NAS 192.168.1.42:81 Size:3662GB Free:1781GB [48%] Temp:34°C Up:5 days 2 hours 48 minutes