【亲测可用】监测端口可用性,crontab做定时监测,修改dash到bash

微信公众号:leetcode_algos_life,代码随想随记
小红书:412408155
CSDN:https://blog.csdn.net/woai8339?type=blog ,代码随想随记
GitHub: https://github.com/riverind
抖音【暂未开始,计划开始】:tian72530,代码随想随记
知乎【暂未开始,计划开始】:代码随想随记

【背景】
需要对端口进行监控。

【方案】
(一)监听端口
监控通常可以在服务里增加get请求接口,或者有四种方式:
1)telnet ip port
2)echo >/dev/tcp/ip/port
向ip:port建立一个连接,会把连接返回的东西丢弃,查看连接是否成功,如果没有什么返回,即为成功的状态。
3)nc -v ip port
4)wget ip:port

(二)定时任务
crontab可以进行定时任务。

⚠️注意:
(1)crontab -e 的默认编辑是nano,可以修改默认编辑为vim。修改方法如下:

vim ~/.selected_editor:

SELECTED_EDITOR="/usr/bin/vim"

(2)crontab -e 编辑定时任务,注意⚠️:该定时任务只能到分,不能到秒。
(3)Linux修改dash到bash,dash是bash的子集:

修改bin/sh软链接指向bash:

ln -sf /bin/bash /bin/sh

否则会出现报错,报错信息可能如下:

cannot create /dev/tcp/localhost/port: Directory nonexistent

参考crontab定时任务:

每个小时的01分执行test.sh脚本:
01 * * * * cd ./test/ && ./test.sh >>test.log 2>&1

如果重定向日志,最好写绝对路径:

每分钟执行test.sh脚本:
* * * * * sh /abs/test.sh >> /abs/test.log 2>&1

crontab定时任务时间如下:
在这里插入图片描述
(三)分天保存contab日志

* * * * * sh test.sh >> "/path_$(date +"\%Y-\%m-\%d").log" 2>&1

参考资料:
1、crontab定时时间
2、修改dash到bash

猜你喜欢

转载自blog.csdn.net/woai8339/article/details/142358640