加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux启动期间的脚本:如何测试启动何时“完成”?

发布时间:2020-12-13 16:43:02 所属栏目:Linux 来源:网络整理
导读:我有一个在Debian服务器上启动时运行的脚本.它运行得太早了,但我无法控制它何时被解雇.我可以强制脚本延迟自己的运行: sleep 60 …或者,或者,我可以尝试几次动作,如下所示: TESTRUN=0ACTIONWORKED=0while [ $ACTIONWORKED -eq 0 ] [ $TESTRUN -le 5 ]; do
我有一个在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正确,在启动完成之前,运行级别不会更改为默认值.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读