Bash 在OpenWRT启动时运行脚本
我正在运行这段代码,并且工作得很好,但是每当我在启动时启用它运行时,我的路由器就不会启动。当我执行Bash 在OpenWRT启动时运行脚本,bash,boot,openwrt,init.d,rc,Bash,Boot,Openwrt,Init.d,Rc,我正在运行这段代码,并且工作得很好,但是每当我在启动时启用它运行时,我的路由器就不会启动。当我执行脚本启动时正在工作,当我执行脚本启动时也在工作。但每当我启动script enable使其在启动时运行时,我就会重新启动路由器,而我的路由器永远不会启动,它会冻结,我需要进入故障保护模式才能解除它的锁定 我做错什么了吗?启动和停止变量可以吗 #!/bin/sh /etc/rc.common START=10 STOP=15 boot() { airmon-ng start wlan0
脚本启动时
正在工作,当我执行脚本启动时
也在工作。但每当我启动script enable
使其在启动时运行时,我就会重新启动路由器,而我的路由器永远不会启动,它会冻结,我需要进入故障保护模式才能解除它的锁定
我做错什么了吗?启动和停止变量可以吗
#!/bin/sh /etc/rc.common
START=10
STOP=15
boot() {
airmon-ng start wlan0
sleep 1
start
}
start() {
rssi mon0 &
}
stop() {
killall -9 rssi
exit 1
}
您需要创建一个.init脚本,该脚本在所有其他脚本之后启动:
#!/bin/sh /etc/rc.common
START=99
boot() {
/usr/sbin/airmon-ng start wlan0
if [! -d "/var/log/rssi_data"]; then
mkdir -p /var/log/rssi_data
fi
start() {
service_start /usr/sbin/airodump-ng wlan0
}
stop() {
service_stop /usr/sbin/airodump-ng
}
使用airodump,您可以读取(并保存到/var/log/rssi_数据)rssi值。更多信息:这是你的完整脚本吗?@Cyrus是的,刚刚开始rssicode@Cyrus我会试试,你的意思是在bash脚本的末尾添加
“$1”
,对吗?stop()
Yes的}
后面有一个新行。如果系统以样式启动,则脚本将以/etc/init.d/your_script start
启动。您没有启动这些功能(启动、停止)的机制。通常,这是通过case
命令完成的。这个“$1”
是一个简单的版本。我发现。这个问题一定有不同的原因。