加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 当驱动器快满时,我可以安排发送电子邮件吗?

发布时间:2020-12-13 23:10:51 所属栏目:Windows 来源:网络整理
导读:背景:我是一名开发人员,他不情愿地“照看”部署我的应用程序的机器.我的客户是一个完全独立的公司,他们付钱给我们为他们编写代码 – 我们没有共同的老板或类似的东西.他们有系统管理员,但是他们在不同的部门,当他们要求我认为系统管理员能够为他们做的事情
背景:我是一名开发人员,他不情愿地“照看”部署我的应用程序的机器.我的客户是一个完全独立的公司,他们付钱给我们为他们编写代码 – 我们没有共同的老板或类似的东西.他们有系统管理员,但是他们在不同的部门,当他们要求我认为系统管理员能够为他们做的事情时,他们没有得到他们要求的东西.实现这一目标不在我手中.然后,我最终被要求编写代码来执行我怀疑实际受过训练的人可以设置几行power shell或在对话框上勾选的东西.这是安装了SQL和IIS的 Windows Server 2003安装程序.

这导致今天的问题:如何知道驱动器正在变满. (数据库增长,导出的文件没有清理,那种事情.)理想情况下,一封电子邮件会说“驱动器E是在xyz的abc(84%).”那很容易吗?我确定不想编写服务来监控磁盘空间和发送电子邮件 – 有人必须先这样做.其中一个驱动器实际上是一个映射驱动器,代表另一台机器上的文件夹以获得它的价值.

虽然许多答案包括脚本(如果你走这条路线我也建议使用powershell),你也可以使用perfmon执行警报.见 HOW TO: Configure a Low Disk Space Alert by Using the Performance Logs and Alerts Feature in Windows Server 2003

请注意,您要采取的操作是执行powershell或vbscript向您发送电子邮件(或者更可取的是,在驱动器上执行一些基本的清理任务,然后发送一封电子邮件,说明问题是什么以及后期操作是什么号码是)

对于映射驱动器,您必须使用脚本.在WMI中使用的计数器是win32_mappedlogicaldisk. (Get-WmiObject win32_mappedlogicaldisk).freespace.例如:

$mythreshold = 10GB
Get-WmiObject win32_mappedlogicaldisk | select-object deviceid,freespace | foreach { 
    if ($_.freespace -lt $mythreshold){

        $from = "myaddr@mycompany.com" 
        $to = "myaddr@mycompany.com" 
        $subject = "Low Disk Space!" 
        $body = "Free Space Remaining: " + $_.FreeSpace + "Drive" + $_.deviceid 
        $smtpServer = "smtp.mycompany.com" 
        $smtp = new-object Net.Mail.SmtpClient($smtpServer) 
        $smtp.Send($from,$to,$subject,$body) 
    } 
    }

(大部分先前的代码都是从squillman中高兴地复制过来的,否则我将不得不自己输入这段代码)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读