I know this script is not for Linux but some folks have windows servers 
and workstations to support.
I wrote this several years ago when w2k first came out. This script 
returns the drive letter(s) and free space for each machine listed. I 
call the script "freespace.vbs" because it only checks for free space. 
Remember you will need the proper security to run this script.

BTW don't include the [code] or [/code] in the script.

Notice this script appends to the "results.txt" file and writes the run 
date and time in the "results.txt" file. I did this because I need a 
vacation once in a while. I used a second script (not included) to copy 
the "results.txt" file to another place on the network and append the 
date to the file name (results040605.txt, delete the "results.txt" file 
and recreate an empty "results.txt" file.
Because I was checking over 300 servers the 2 scripts were separate. The 
"freespace.vbs" script ran as an over night job using AT. I ran the 
second script (not included) as needed.
It all tied together with some HTML and a browser so I could quickly 
check disk space.
The "results.txt" file opens nicely in Excel as well.
You will need the script and 2 text files for this to work, call them 
what you like but be sure to change the names in the script ;-)
If you have a firewall running on a machine you may not get the 
information unless you open the ports needed.

[code]
'define objects used
Dim fso, wrfile, rdfile
Const ForReading = 1
Const ForWriting = 2
Const ForAppending = 8
Const HardDisk = 3

' set fso as the file system object
Set fso = CreateObject("scripting.FileSystemObject")

' Open the output file
filename = "c:\samsvbs\results.txt"
Set wrfile = fso.OpenTextFile( filename, ForAppending)

'Open an input file
ifilename="c:\samsvbs\srvlst.txt"
Set  rdfile=fso.openTextFile(ifilename, ForReading)

'Read server name from file
do while rdfile.AtEndofStream=false
servername =rdfile.readline()

' Gather and write the disk and free space information
strComputer = servername
Set objWMIService = GetObject("winmgmts:" & _
      "{impersonationLevel=impersonate}!\\" & _
      strComputer & "\root\cimv2")
Set colDisks = objWMIService.ExecQuery _
    ("Select * from Win32_LogicalDisk Where DriveType = " & 3 & "")
    wrfile.writeline strComputer
For Each objDisk in colDisks
    wrfile.writeline "Drive: "& vbTab & _
           objDisk.DeviceID & vbTab & _
           "Free Space [MB]:  "& vbTab & objDisk.FreeSpace/1024000
Next
loop
'Write a dashed line the date a dash the time and a dashed line
    wrfile.writeline "------------ " & date & " - " & time & " ------------"

' Close the results.txt and srvlst.txt files
  wrfile.close
  rdfile.close
[/code]

Text file 1 "srvlst.txt" is a list of servers
angrenost
jackrabit
impala

Text file 2 "results.txt"  is where the free disk space information is 
written
angrenost
Drive:     C:    Free Space [MB]:      838.575
Drive:     D:    Free Space [MB]:      5778.652
Drive:     F:    Free Space [MB]:      2426.32
jackrabit
Drive:     C:    Free Space [MB]:      8050.544
impala
Drive:     C:    Free Space [MB]:      24028.452
Drive:     D:    Free Space [MB]:      26449.736
------------ 4/6/2005 - 2:17:02 PM ------------
angrenost
Drive:     C:    Free Space [MB]:      838.575
Drive:     D:    Free Space [MB]:      5778.652
Drive:     F:    Free Space [MB]:      2426.32
jackrabit
Drive:     C:    Free Space [MB]:      8050.544
impala
Drive:     C:    Free Space [MB]:      24028.452
Drive:     D:    Free Space [MB]:      26449.736
------------ 4/6/2005 - 2:18:29 PM ------------

Sam.