我有一个在Debian服务器上启动时运行的脚本.它运行得太早了,但我无法控制它何时被解雇.我可以强制脚本延迟自己的运行:
sleep 60
…或者,或者,我可以尝试几次动作,如下所示:
TESTRUN=0 ACTIONWORKED=0 while [ $ACTIONWORKED -eq 0 ] && [ $TESTRUN -le 5 ]; do # run the action i want # quick test if it worked # if yes,set ACTIONWORKED=1 # if no,sleep 10 # increment TESTRUN done
测试系统准备就绪的更好方法是什么?该脚本将在系统运行期间的其他时间运行,因此需要进行测试以区分“booting-can-do-this-yet”和“not-booting-run-now”状态.我不希望每次脚本运行时都等待它.
编辑:感谢您的想法到目前为止.如果你有替代已经发布的内容,请继续.
对于那些已经要求具体细节的人,我特意将他们排除在外,以便收集适用于一般Linux启动过程的答案.
假设“完全启动”系统已提供登录提示(通过控制台,X或其他).
解决方法
真正做到你想做的最好的方法是在SysV init中的适当位置插入对脚本的调用.我建议您编写一个调用脚本的脚本,并调用您的系统管理员,直到他或她在适当的位置安装它.
编辑:好的,我刚看了你的另一个问题,我看到你在谈论一个异步启动的脚本,当有人插入设备时.你想要做的是检查运行级别是否为2(或者如果你已经改变它是默认的运行级别,如果你想让它在单用户模式下运行,那么也是1.)如果我正在阅读Debian FAQ正确,在启动完成之前,运行级别不会更改为默认值.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。