openwrt下crontab定时任务实现

openwrt下crontab定时任务实现

我的需求是需要加个定时执行脚本来监控智能网关运行的进程,一旦网关进程异常关闭,就能立即把它拉起来,从而保证网关运行的可靠性,这里我们用到了crontab服务,OpenWRT系统默认已经加入了crond,仅仅是没有配置默认配置參数,致使服务起不来,下面我们来说如何先来实现每分钟往/etc/config/中test文件中写入"hello world!"

1.编写执行脚本check_process.sh

(1) 在/usr/bin/目录下新建check_process.sh脚本文件:

echo “hello world!” >> /etc/config/test
在这里插入图片描述
(2) 更改check_process.sh脚本执行权限
chmod 755 check_process.sh

2.配置个人的crontab文件

/etc/crontabs/目录下新建root并输入这行:
*/1 * * * * /usr/bin/check_process.sh
以上意思是每1分钟执行绝对路径/usr/bin/目录下的check_process.sh脚本
在这里插入图片描述
后续想要编辑root文件可以直接输入crontab –e命令接口

3.开启contab服务

使能contab服务命令:/etc/init.d/cron enable
启动或重启contab服务命令:/etc/init.d/cron start/restart

4.测试

输入tail -f /etc/config/test每隔1分钟打印如下:
在这里插入图片描述以上可以实现了每分钟往/etc/config/中test文件中写入"hello world!"的定时任务,下面我们看看如何实现定时监测智能网关的主进程cbox.

5.测试

这里只需要修改下/usr/bin/目录下的check_process.sh脚本文件,如下:
#!/bin/bash

flag=$(ps | grep cbox | grep -v “grep” | wc -l)
if [ $flag = “1” ]
then
echo “cbox RUNNING!”
else
/etc/init.d/cboxd start
fi
是不是很简单!
注意:如果定时任务不执行,请删除该脚本文件中的#!/bash再进行测试。
如果有其他问题欢迎大家相互讨论和学习!

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
OpenWrt是一个轻量级嵌入式操作系统,主要用于路由和网络设备。除了使用Crontab工具外,OpenWrt还有很多其他方法可以实现定时任务。以下是一些常见的方法: 1. **Systemd服务单元**: OpenWrt使用Systemd作为其系统和服务管理器。你可以创建Systemd服务单元来定义定时任务。通过编写一个Systemd服务单元文件,你可以在其中定义启动和停止操作的时间表。这种方法比使用传统的Crontab工具更为灵活,因为它允许你使用更高级的定时任务功能。 2. **脚本和命令行工具**: OpenWrt提供了许多命令行工具,如`busybox`,可以用于执行定时任务。你可以编写一个脚本,使用这些工具来执行特定的任务,并使用`cron`或其他调度器来安排执行时间。这种方法适用于简单的定时任务,但可能不适合复杂的任务。 3. **第三方工具**: 有一些第三方工具可用于OpenWrt定时任务。例如,`cron.sh`是一个轻量级的定时任务管理器,可以在OpenWrt设备上运行。它提供了一个简单的界面,允许你设置和管理定时任务。 4. **Web界面**: 有些OpenWrt的插件或扩展提供了Web界面,用于创建和管理定时任务。这些界面通常提供图形化界面和易于使用的用户界面,使得设置和管理定时任务变得更加简单。 5. **自动化工具**: 你可以使用自动化工具(如Ansible、Chef或Puppet)来配置OpenWrt设备并设置定时任务。这些工具可以帮助你编写自动化脚本,用于定期执行特定的任务,并通过调度器安排执行时间。 请注意,这些方法中的每一种都有其优点和缺点,具体取决于你的需求和设备的能力。在选择适合你的方法时,请考虑你的目标、任务的复杂性以及设备的资源限制等因素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值