none
Hyper-Vでコマンドラインでスナップショットを適用できますか? RRS feed

  • 質問

  • Hyper-Vでコマンドラインでスナップショットを適用するほうほうがあれば教えてください。

    タスクで起動したいのですが。

    2010年11月18日 3:21

回答

  • 阿部です

    PowerShellを使えば楽にできそうですね(WMIを使用する)

    PowerShell2.0とタスクスケジューラの簡単な使い方
    http://www.roomv.com/~kanehiro/index.php?itemid=459

    PowerShell Management Library for Hyper-V
    http://pshyperv.codeplex.com/

    また、書籍ですが「PowerShellによるWindows サーバー管理術」にスナップショットを作成するサンプルスクリプトがありました。(P243 Script 6-35)

    以上、参考になれば幸いです。


    MVP:Virtual Machine Blog:MCTの憂鬱 http://naonao71.spaces.live.com/
    2010年11月18日 6:03
    モデレータ
  • VBScript ですと

     

    Function CreateSnapShot(strVMName)
        Dim objWMIService, objManagementService, objComputerSystem
        Set objWMIService = GetObject("winmgmts:\\.\root\virtualization")
        Set objManagementService = objWMIService.ExecQuery("SELECT * FROM Msvm_VirtualSystemManagementService").ItemIndex(0)
        Set objComputerSystem = objWMIService.ExecQuery("SELECT * FROM Msvm_ComputerSystem WHERE ElementName = '" & strVMName & "'").ItemIndex(0)
        Dim objInParam, objOutParams
        Set objInParam = objManagementService.Methods_("CreateVirtualSystemSnapshot").InParameters.SpawnInstance_()
        objInParam.SourceSystem = objComputerSystem.Path_.Path
        Set objOutParams = objManagementService.ExecMethod_("CreateVirtualSystemSnapshot", objInParam)  
    End Function
    こんな感じです
    WIN1
    2010年11月19日 13:40
    モデレータ

すべての返信

  • 阿部です

    PowerShellを使えば楽にできそうですね(WMIを使用する)

    PowerShell2.0とタスクスケジューラの簡単な使い方
    http://www.roomv.com/~kanehiro/index.php?itemid=459

    PowerShell Management Library for Hyper-V
    http://pshyperv.codeplex.com/

    また、書籍ですが「PowerShellによるWindows サーバー管理術」にスナップショットを作成するサンプルスクリプトがありました。(P243 Script 6-35)

    以上、参考になれば幸いです。


    MVP:Virtual Machine Blog:MCTの憂鬱 http://naonao71.spaces.live.com/
    2010年11月18日 6:03
    モデレータ
  • VBScript ですと

     

    Function CreateSnapShot(strVMName)
        Dim objWMIService, objManagementService, objComputerSystem
        Set objWMIService = GetObject("winmgmts:\\.\root\virtualization")
        Set objManagementService = objWMIService.ExecQuery("SELECT * FROM Msvm_VirtualSystemManagementService").ItemIndex(0)
        Set objComputerSystem = objWMIService.ExecQuery("SELECT * FROM Msvm_ComputerSystem WHERE ElementName = '" & strVMName & "'").ItemIndex(0)
        Dim objInParam, objOutParams
        Set objInParam = objManagementService.Methods_("CreateVirtualSystemSnapshot").InParameters.SpawnInstance_()
        objInParam.SourceSystem = objComputerSystem.Path_.Path
        Set objOutParams = objManagementService.ExecMethod_("CreateVirtualSystemSnapshot", objInParam)  
    End Function
    こんな感じです
    WIN1
    2010年11月19日 13:40
    モデレータ
  • こんにちは、フォーラムオペレーターの三沢健二です。

    ABE NAOKI さん、WIN1 さん、いつもアドバイスありがとうございます。

    案内いただいた内容は大変参考になる情報ではないかと思いましたので、勝手ながら [回答としてマーク] を付けさせていただきました。


    今後とも TechNet Forum をよろしくお願いします。

    ______________________________________
    マイクロソフト株式会社 フォーラム オペレーター 三沢健二

    2010年11月25日 5:19
    モデレータ