Need a tool to obtain server disk capacity summary

I need a tool recommendation pls. I have a requirement to collect a server volume capacity summary on a daily basis.

All I need is <server.x> c$ <total> , <free> and % used
                                       d$ <total> , <free> and % used

Also needed is a sum total of ALL servers / volumes  space ie total / free / % (I know this is irrelevant)

I need to collect this from ~ 60 windows servers and 15 Netware servers.
I don't need any deep analysis of the data, just the volume usage.
It has to be able to be automated / scheduled.
Dont care if its just a script or small gui app

I'm already getting this data from SpacewatchPRO, but I cant automate it with this and the report data I have to massage

Thanks in advance

Who is Participating?

Improve company productivity with a Business Account.Sign Up

jcwiatrConnect With a Mentor Author Commented:
This powershell script does the job

$Input = gc c:\temp2\diskscript\servers.txt

$drives = gwmi win32_logicaldisk -filter "drivetype=3" -ComputerName $Input | Select SystemName,DeviceID,Size,Freespace

$free = @{Name="FreeSpace(GB)";Expression={($_.freespace/1GB).tostring("0.00")}}
$Size = @{n="Capacity(GB)";e={"{0:N2}" -f ($_.Size/1GB)}}
$Percentfree = @{Name="Percentfree";E={((($_.freespace/1GB)/($_.size/1GB))*100).tostring("0.00")}}
$used = @{n="Used(GB)";e={"{0:N2}" -f (($_.Size/1GB)-($_.freespace/1GB)).tostring("0.00")}}

$drives | select SystemName,DeviceID,$Size,$used,$free,$percentFree | ft -auto | out-file c:\temp2\diskscript\report.txt
Everest is a great tool- i know you just need something simple, but incase you need more, Everest has it.  Very basic or very advanced and robust reporting-- it even has scheduling, usage, uptime and downtime stats for each workstation.
Aida32 will gather a lot of info - not sure if it can do the Netware servers tho - worth a look.

Otherwise, if you have a Linux box to run it on, look at Nagios.

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Solution 1: (easiest)

One solution, just run a local (one-liner!) script and run it as a scheduled task.  You can email the results to yourself if you so wish.  For a Windows SMTP exedcutable, take a look at "Vmailer", and for Netware... anyone...?

Solution 2:

As ccomley said, you can use Nagios and run it on a Linux machine.  Install NSClient++ (and configure NRPE only) on each Windows machine, and use the check_pdm Nagios plugin from to get the info you need.  How you'd do it in Netware, I don't know - but there are plugins available.

jcwiatrAuthor Commented:
Thanks for the replies, Ive looked at 'Everest', too many features than what i need and the output is too busy.  I really just need something that can just pipe the disk use / free as 1 line per server to a text file

Dont have a linux server available either.

Is there a native Windows command that gan grab this without adding a million lines of extra data. Ive just looked at the diskpart.exe tool and its not giving me what I want.
If I can get a commad to list just what i need, I can script it for all the server volumes.

The netware volume data is proving problematic.  i think I can get it from Adrem server manager, - but its $1000 per server. I need a cheaper (read free) solution
For Windows:

This script: check_disk.vbs is written to be used with Nagios, but it's just a .VBS script which you can run standalone.  You can then do whatever you like with the output.

To get help:

       cscript //NoLogo check_disk.vbs /h

Sample command (for all drives):

       cscript //NoLogo check_disk.vbs /w:0 /c:0 /p /u:GB

Sample command (for drive C:):

       cscript //NoLogo check_disk.vbs /w:0 /c:0 /p /d:C /u:GB

Sample command (for drives C: and G:)

       cscript //NoLogo check_disk.vbs /w:0 /c:0 /p /d:CG /u:GB

I hope this is what you're looking for.

Steve :)
Whoops, my link above doesn't work... here it is:

check_disk (download the .VBS file);d=1

Steve :)
jcwiatrAuthor Commented:
sda100:  - thanks for the input, Ive played around with the nagios script but cant really get it do output what I want.
Ignoring the netware for now - i've almost got it right with a Windows powerscript.

this code: -
get-wmiobject -computer (get-content servers.txt) -class Win32_LogicalDisk -filter "DriveType=3" | Select SystemName,DeviceID,Size,FreeSpace | out-file c:\temp2\diskscript\report.txt

Outputs: -

SystemName          DeviceID                           Size           FreeSpace
----------          --------                           ----           ---------
server1             C:                          10739494912           620572672
server2              D:                         589257764864        440090234880

this is almost exaxctly what I need, - I'm just missing the %used field.
Any powerscript experts know how to add a %used field?

Congratulations on the solution, and thanks for posting it back here.

Steve :)
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.