一旦检测到网络接口处于活动状态就运行脚本

一旦检测到网络接口处于活动状态就运行脚本

我只是想知道是否可以在测试后立即运行脚本来查看网络接口是否已启动(例如 aping或其他)?我认为在登录时更新我的​​信息会非常棒yum,但我想首先确保我可以访问互联网。有任何想法吗?

答案1

为什么不,而不是每当您登录时,只需设置一个cron作业每天早上执行(例如凌晨 3 点,此时它不会影响任何人(假设您的计算机 24/7))?

如果您真的想每次登录时都这样做,您可以输入yumupdate.sh您的.bash_login

或者在你的 crontab 中:

00 03 * * * yumupdate.sh

并在 yumupdate.sh 中

#!/bin/bash            
while sleep 300; do     # sleep 5 minutes in between each ping test
    nc -vz 8.8.8.8 53   # nc to test connectivity (8.8.8.8 is google dns)
    if [ $? -eq 0 ]     # if the previous exit code == 0 (no error)
        then            # update yum then update the os then break out of the loop
            /usr/bin/yum -y update yum >> ~/yumupdateyum.log 
            /usr/bin/yum -y update >> ~/yumupdate.log
            exit
    fi
done

答案2

也许您想看看:

yum install yum-NetworkManager-dispatcher

...也许可以添加一些功能?

相关内容