首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在upstart脚本中睡眠(upstart同步)

在upstart脚本中睡眠(upstart同步)
EN

Server Fault用户
提问于 2010-10-30 21:36:31
回答 1查看 5.7K关注 0票数 5

我编写了这段代码,以便在主机系统启动时自动启动KVM虚拟机,并在主机系统关闭或重新启动时停止虚拟机。

代码语言:javascript
复制
start on startup
start on started networking and started qemu-kvm and started libvirt-bin
stop on runlevel [016]

kill timeout 70
expect fork

pre-start exec /KVM/luc.sh prepara

exec /KVM/luc.sh avvia

pre-stop script 
   /KVM/luc.sh ferma
   /bin/sleep 20
end script

luc.sh是一个具有以下功能的脚本:

  • 准备()-准备环境
  • avvia() -启动KVM
  • ferma() -关闭KVM

除了sleep命令外,它还能工作。我需要延迟主机系统的关闭/重新启动操作,以等待客户关机完成。换句话说,我希望在/KVM/luc.sh ferma命令之后插入大约20秒的等待。看来,upstart脚本中的sleep调用是异步的。是否可以在upstart脚本中进行同步调用?

EN

回答 1

Server Fault用户

发布于 2011-03-28 07:05:37

是的,不知怎么的,睡眠对我也不起作用(我正在使用Ubuntu10.04)。我不确定下面的解决方案是否是最好的解决方案,但它似乎是有效的。

  1. 创建一个额外的新任务,例如,后置睡眠.Done(为清晰性而添加日志):描述“作业结束时的睡眠”任务脚本回显“睡眠.”\x{e76f}记录器-t“后睡眠-作业”/bin/睡眠60年代回显“已完成睡眠”\ logger -t“后睡眠作业”结束脚本
  2. 在关闭后需要休眠的作业中添加以下内容:停止后脚本开始睡眠结束脚本

如果有几个作业需要等待才能完全关闭,请在第一个脚本中使用实例。然而,我认为更好和更健壮的解决方案将是依赖事件

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/196503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档