本人以下所有文件均在root超级权限下编写执行,执行环境Ubuntu16.04
1.编写脚本文件 ftpMonitor.sh,并将其放置/usr/local/
#!/bin/bash
#监视ftp的21端口,并检查这个21端口是否存在
ListeningPort=`netstat -an | grep ":21" | awk '$1 == "tcp6" && $NF == "LISTEN" {print $0}' | wc -l`
if [ $ListeningPort -eq 0 ]
then
{
#将端口异常情况写入日志文件,日志文件位置可以自定义,但要采用绝对路径
echo "`date` : ftp端口异常,重启服务">>/home/timi/data.log
# 如果ftp的21端口down了,重启ftp服务;以下是重启ftp的命令
/etc/init.d/vsftpd start
}
else
{
echo "`date` : ftp端口正常" >>/home/timi/data.log
}
fi
2.编写周期执行文件
1.使用 crontab -e 2.编写文件(设置为每10秒执行一次) * * * * * /usr/local/ftpMonitor.sh * * * * * sleep 10; /usr/local/ftpMonitor.sh * * * * * sleep 20; /usr/local/ftpMonitor.sh * * * * * sleep 30; /usr/local/ftpMonitor.sh * * * * * sleep 40; /usr/local/ftpMonitor.sh * * * * * sleep 50; /usr/local/ftpMonitor.sh 3.使用Ctrl+X保存,保存完自动执行
3.查看日志文件 cat /home/timi/data.log

4.ftp的相关命令
service vsftpd start 开启ftp service vsftpd status 查看ftp状态 service vsftpd stop 关闭ftp
5.查看ftp进程
netstat -lntp|grep -e ftp
滴水穿石
浙公网安备 33010602011771号