我们有基于 Beaglebone 黑色的定制板,具有 256MB RAM 和 4GB eMMC。
我们从 Linux-3.12 升级到 Linux-4.4,busybox-1.20.2 升级到了busybox-1.26.2。
现在在busybox-1.26.2中,我们看到了busybox-1.20.2中没有的问题
我在最后一个初始化脚本之一中添加了以下代码。
if [ -f /home/ankur ] ; then
count=50
rm /home/ankur
echo "----Check Whoami----"
whoami #prints root
reboot
echo "--------------------"
while [ true ]
do
count=$((count - 1 ))
echo "Count = $count"
if [ $count -le 0 ];then
break;
fi
echo "Sleep 1"
sleep 1
done
fi
我触摸了文件,/home/ankur
然后重新启动了电路板。
我观察到的是,系统没有重新启动,但计数器下降到 0,然后执行其他初始化脚本,然后重新启动板。
因此,busybox 似乎正在获取信号,reboot
但仅在执行初始化脚本后才进行处理。
reboot
现在我的问题是,在完成所有初始化脚本之前有没有办法进入董事会。是否有任何busybox 配置可以禁用此重启阻塞?
reboot -f
(强制重启而不通过初始化)可以工作,但我们也需要运行停止脚本,所以不能使用它。
这正是
init
BusyBox 现在的工作方式,是的。不,这是不可配置的。您必须更改程序并重新构建它。进一步阅读