我想检查服务器的磁盘使用情况,如果使用率超过90%,则发送邮件。
我必须在perl脚本中执行此操作。我想使用ssh登录每个服务器(使用密码,因为我无法为ssh会话设置公钥和私钥)并运行以下命令,这将返回root分区中的磁盘使用情况: - df -h | awk'{print $ 5}'| sed's / capacity // g'| sed's /%// g'| awk'/./'| awk -F。 '{print $ 1}'|头-1 但我似乎无法通过ssh登录到服务器而无需安装任何perl模块,如Net :: OpenSSH或使用/ usr / bin / expect。
有没有简单明了的方法通过ssh登录并自动化密码提示而不使用任何外部perl模块? 登录后,我想在所有服务器上运行该命令,并将输出存储到变量中进行比较。请建议
许多问候:)
答案 0 :(得分:-1)
通过apt-get安装sshpass
从perl脚本中激活以下命令
qx(sshpass -p'root'ssh用户名\ @hostname'命令在机器上执行');
注意:在上面的命令中替换用户名和主机名。