接着上次expect脚本那事儿继续往下走。
因为不同服务的管理方法不同,上次关闭了ssh的外网登录以后,各地不断有服务器报出这样那样的问题。
主管要求:“全面检查!” 在检查中,还真发现不少问题。
最突出的问题是:很多本应该上传到中心服务器的日志居然一直留在本机没动弹!时不时发作出来,就撑爆了根分区——这当然有分区规划不合理的问题。但在线业务,磁盘划分修改起来就不是那么方便了。
于是退而求其次,定期监控日志文件大小吧。这回expect只要du -sh一下就行了,方便的很。问题在下一步的分析。
摘举exp.log中一次循环的执行结果:
The authenticity of host '1.2.3.4 (1.2.3.4)' can't be established.
RSA key fingerprint is
bb:d5:81:e1:84:09:c5:32:f6:fb:e1:b3:d3:de:c3:53.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '1.2.3.4' (RSA) to the list of known hosts.
root@1.2.3.4's password:
4.0K /home/apache2/logs/access_log
第一步,是用如下脚本,可以做到提取日志达到50M大小的服务器IP。
但问题是:如果同时有两台到50M呢?或者在运行到它时,已经到50M以上呢? 于是我想,以ls -sh显示大小,人眼好看,电脑不好认啊。如果用du -b,那大小相同的几率就应该小很多很多了。然后定一个阀值,进行比较循环就可以了。
最后脚本如下:
本来想用sed ‘N;s/n//g’ exp.log来合并行尾,省得调行号,但exp日志的格式因为ssh登录的提示信息不一而无法统一,只能放弃。
试验性的在ip.lst中输入了15个IP,运行结果显示出来了两个,成功。
您可能感兴趣的文章:
expect脚本远程批量管理服务器的思路解析
expect批量管理计算机的一个脚本
一个远程登录的简单expect脚本
expect自动检测并重启另外一台服务器上的程序
批量修改ssh配置的expect脚本
expect自动登录远程服务器和执行重复任务的例子
ssh expect自动登录的脚本
远程登录的简单expect脚本
Expect的安装与应用
用expect写的一个脚本