需求背景:

      服务器运维管理人员,可能会常遇到这样的工作需求:不定期了解WINDOWS服务器系统存储空间的大小,以便及时得到空间不足的信息,从而尽早增加磁盘空间。

解决思路:

     一、如果只想磁盘剩余空间不足到一定阀值时,自动报警等。使用商业软件如SCOM等可实现,使用开源软件如NAGIOS等亦可实现。(前提需要在客户端系统上安装插件)

    二、如果想了解存储空间总共有多少,用了多少,还余多少,占有多少百分比等。如果安装插件的话,可以使用SCCM或LANDesk等商业解决方案可实现。。(前提仍需要在客户端系统上安装插件)

    那究竟有否一种更为简单的方法,不需要安装插件,就能很快得到空间使用情况呢?

    答案是肯定的,那就是使用微软的 PowerShell来实现。(脚本的方式)

实现环境及案例:

       有近二百台 windows server 2003和windows server 2008服务器,需要统计每台系统的磁盘空间(每个逻辑磁盘),已用空间,未用空间,及百分比。

       利用PowerShell(2.0),在windows server 2008  及windows 7上实现。所有的这些机器均在同一个域中。(这个很重要,涉及到执行账号及权限问题)

       脚本来源(借签出处):微软TECHNET脚本中心。

       一、PS命令行界面输出,或文本输出

      PowerShell脚本获取磁盘空间两例_第1张图片

      本图中,可以利用>或>>输出到文本文件中。这样就能转换成EXCEL等。可以求各等。当你这些机器存在于存储上时,就可以统计存储空间啦。

     二、HTML格式,同时以不同的色彩来显示剩余百分区(警示作用)

    PowerShell脚本获取磁盘空间两例_第2张图片

 

外一则:一段IP地址的存活状态,用处很多啦:可以知道IP地址使用状态;可以知道机器健康(存活)状态等。

PowerShell脚本获取磁盘空间两例_第3张图片

 

以上三例源代码,老方均有,且稍做改变,如果你需要,可以联系我。