找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 1414|回复: 1

[虚拟机相关] 求教,检测PVE虚拟机关闭后自动启动虚拟机的脚本

[复制链接]
发表于 2022-4-28 20:46 | 显示全部楼层 |阅读模式
求教一个PVE虚拟机的脚本,可以实现定时检测虚拟机关闭时,能自动重启虚拟机。


我的恩山、我的无线 The best wifi forum is right here.
发表于 2022-4-28 21:24 | 显示全部楼层
本帖最后由 tty228 于 2022-4-28 22:00 编辑

循环
  1. while
  2.     ....
  3. done
复制代码

检测 pve 开机时间
  1. cat /proc/uptime
复制代码


虚拟机开机状态
  1. pvesh get /nodes/pve/qemu/101/status/current|grep " status"
复制代码


重启
  1. reboot
复制代码


然后再加一点点元素,你要的脚本就完成了

  1. #!/bin/bash

  2. # 如果虚拟机在运行,则循环检测
  3. while [ -z "$qm_state" ]; do
  4.         # 等待 60 秒
  5.         sleep 60

  6.         # 查看虚拟机运行状态
  7.         # pvesh get /nodes/PVE节点名称/qemu/虚拟机编号/status/current
  8.         # 请先确定 pvesh get /nodes/pve/qemu/101/status/current|grep " status"|grep "running" 有返回值并且第二列结果为 running
  9.         qm_state=`pvesh get /nodes/pve/qemu/101/status/current|grep " status"|grep -v "running"`

  10.         # PVE 开机时间小于 600 秒,不跳出循环
  11.         [ `cut -f1 -d. /proc/uptime` -le "600" ] && unset qm_state
  12. done

  13. #reboot
  14. echo "调试用,确认脚本正常运行再把上一行#移除"

复制代码
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-20 06:26

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表