OK1028A-C开发板 5G断线重连_linux应用笔记
本文主要适用于飞凌OK1028A-C 平台,其他平台也可以参考,但是不同平台之间会存在差异,需要客户自行修改以适应自己的使用。 在实际使用中,5G 拨号脚本可能会被其他的应用程序杀死,导致5G 无法上网问题。本篇文章主要介绍一下OK1028A-C 使用crontab 服务实现5G 的断线重连功能。其他平台如果同样有crontab 服务,也可参考。
一、编辑脚本
首先在/home/root 目录下创建net.sh 脚本。
root@localhost:~# vi ./net.sh
//脚本内容
#!/bin/bash
ping -c 2 8.8.8.8
if [ $? -eq 0 ]
then
echo "net alive"
currTime=$(date +"%s") //输出当前时间
currTime=$(date +"%Y-%m-%d %T")
echo $currTime
else
/root/Net_Tools/quectel-CM & //使用的拨号脚本绝对路径
fi
//赋予执行权限
root@localhost:~# chmod 777 ./net.sh
二、配置网桥
1、添加执行命令
打开文件 /etc/crontab 并添加以下内容
root@localhost:~# vi /etc/crontab
//文件内容
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * *** root cd / && run-parts --report /etc/cron.hourly
25 6 *** root test -x /usr/sbin/anacron || ( cd / && run-parts
--report /etc/cron.daily )
47 6 **7 root test -x /usr/sbin/anacron || ( cd / && run-parts
--report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts
--report /etc/cron.monthly )
* * * * * root /root/net.sh
#
2、启动此服务
配置完成后使用systemctl status cron.service 命令查看服务是否在运行,如没有运行,可使用 /etc/init.d/cron restart 重新启动此服务。
root@localhost:~# systemctl status cron.service //查看服务状态
cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor
preset: enabled)
Active: active (running) since Tue 2022-06-28 16:30:54 CST; 13s ago
Docs: man:cron(8)
Main PID: 5736 (cron)
Tasks: 1 (limit: 2231)
CGroup: /system.slice/cron.service
└─5736 /usr/sbin/cron -f
Jun 28 16:30:54 localhost cron[5736]: (CRON) INFO (pidfile fd = 3)
Jun 28 16:30:54 localhost cron[5736]: (CRON) INFO (Skipping @reboot
jobs -- not system startup)
Jun 28 16:31:01 localhost CRON[5740]: pam_unix(cron:session): session
opened for user root by (uid=0)
Jun 28 16:31:01 localhost CRON[5739]: pam_unix(cron:session): session
opened for user root by (uid=0)
Jun 28 16:31:01 localhost CRON[5741]: (root) CMD (/root/net.sh)
Jun 28 16:31:01 localhost CRON[5742]: (root) CMD (/root/net.sh)
Jun 28 16:31:02 localhost CRON[5740]: (CRON) info (No MTA installed,
discarding output)
Jun 28 16:31:02 localhost CRON[5739]: (CRON) info (No MTA installed,
discarding output)
Jun 28 16:31:02 localhost CRON[5739]: pam_unix(cron:session): session
closed for user root
Jun 28 16:31:02 localhost CRON[5740]: pam_unix(cron:session): session
closed for user root
root@localhost:~# systemctl stop cron.service //停止服务
root@localhost:~# systemctl start cron.service //启动服务
root@localhost:~# systemctl enable cron.service //使能服务
查看服务在正常运行后重启开发板,即可看到,拨号脚本在掉线以后在1 分钟左右的时间会重新进行拨号上网。
3、命令介绍
通过crontab 命令,我们可以在固定的间隔时间执⾏指定的系统指令或 shell script 脚本。时间间隔的单位可以是分钟、⼩时、⽇、⽉、周。
minute: 表示分钟,可以是从0 到59 之间的任何整数。
hour:表示小时,可以是从0 到23 之间的任何整数。
day:表示日期,可以是从1 到31 之间的任何整数。
month:表示月份,可以是从1 到12 之间的任何整数。
week:表示星期几,可以是从0 到7 之间的任何整数,这里的0 或7 代表星期日。 command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
星号(*):代表每的意思,例如month 字段如果是星号,则表示每月都执行该命令操作。
逗号(,):表示分隔时段的意思,例如,“1,3,5,7,9”。
中杠(-):表示一个时间范围,例如“2-6”表示“2,3,4,5,6”。
相关产品 >
-
OK1028A-C开发板
LS028A 系列-LS1028开发板 双核Cortex-A72 设计 TSN网络支持 ,工业级 LS1028A开发板 提供了一个用于设计和评估LS1028A处理器设计核心板的平台。支持TSN的以太网交换机和以太网控制器,可支持融合的IT和OT网络;支持CANFD、UART 、USB3.0、PCIe3.0、SATA3.0、IIS、IIC、SPI 等常用总线接口,并支持一个最大分辨率4K的DP接口。ls1028a 适用于工业路由器、TSN、SD-WAN、 5G CPE 、边缘计算网关 、IP-PBX等产品,以及工业互联、智慧工厂、工业安全、信息安全、智慧交通、能源物联网 等应用领域。 了解详情 -
FET1028A-C核心板
LS1028A-C核心板基于NXP LS1028A处理器设计,双核ARM Cortex - A72,主频最高1.6GHz,板载2GB DDR4 RAM,8GB ROM;原生支持6个Gbit Ethernet,支持TSN的以太网交换机和以太网控制器,可支持融合的IT和OT网络;支持CAN FD、UART、USB3.0、PCIe3.0、SATA3.0、IIS、IIC、SPI等常用总线接口,并支持一个最大分辨率4K的DP接口。适用于工业路由器、TSN、SD-WAN、5G CPE、边缘计算网关、IP-PBX等产品,以及工业互联网、智慧工厂、工业安全、信息安全、智慧交通、能源物联网等应用领域。 了解详情