1. 程式人生 > >批處理啟動vm虛擬機器服務 vm12啟動無介面啟動vm虛擬機器系統 windows上如何操作服務 sc net啟動關閉服務

批處理啟動vm虛擬機器服務 vm12啟動無介面啟動vm虛擬機器系統 windows上如何操作服務 sc net啟動關閉服務

windows(win10)批處理指令碼

開啟vm虛擬機器的服務,並且開啟無介面虛擬機器

@echo off

net start "vds"

net start "VMAuthdService"

net start "VMnetDHCP"

net start "VMware NAT Service"

net start "VMUSBArbService"

net start "VMwareHostd"

"D:\ApplicationFiles\System\VMware Workstation\vmrun.exe" start "F:\virtualMachine\ubuntu15.1X64\ubuntu15.1X64.vmx" nogui

儲存為startvm.bat

@echo off

"D:\ApplicationFiles\System\VMware Workstation\vmrun.exe" stop "F:\virtualMachine\ubuntu15.1X64\ubuntu15.1X64.vmx" nogui

net stop "vds"

net stop "VMnetDHCP"

net stop "VMware NAT Service"

net stop "VMwareHostd"

net stop "VMUSBArbService"

net stop "VMAuthdService"

儲存為shutdownvm.bat

說明:

D:\ApplicationFiles\System\VMware Workstation\vmrun.exe  為虛擬機器安裝目錄/ps:如果你把vmrun路徑加入了環境變數path後,可以直接使用命令vmrun

F:\virtualMachine\ubuntu15.1X64\ubuntu15.1X64.vmx           為虛擬機器檔案位置

生成的檔案建立快捷方式,右鍵-屬性-高階,設定下管理員許可權執行,以後雙擊即可執行

開啟還要等個一分鐘左右啟動好,具體看你的系統性能

接下來就可以正常ssh連線了

-------------------------------------------

下面重點說一下用到的知識點原理

一,首先說一下,window上面如何操作服務(win10 x64)

windows上使用sc命令net命令設定操作服務,批處理關閉服務命令 開啟服務命令

使用sc命令:

1 修改服務啟動型別

sc config 服務名 start= demand (設定服務為手動啟動)

                   start= auto (設定服務為自動啟動)

                     start= disabled (設定服務為禁用)

2 安裝服務:sc create 服務名

3 停止服務:sc stop 服務名

4 啟動服務 : sc start 服務名

5 解除安裝服務:sc delete 服務名(解除安裝前先停止服務)

使用net命令

檢視執行的服務: net start

啟動服務: net start 服務名

停止服務: net stop 服務名

解除安裝服務: 服務名 -uninstall (解除安裝前先停止服務)

注意注意注意:

start後面不能有空格   =後面的引數需要有一個空格

4326b994-d10b-420a-982b-f39bd658ce80

不是一個單詞的服務名字,需要用引號

da7885d4-7b2f-466d-b9db-797b55092ba4

綜上所述我們可以使用:

啟動服務: net start 服務名  或者     sc start 服務名

停止服務: net stop 服務名  或者     sc stop 服務名

二  檢視虛擬機器上面的服務

[SC] StartService: OpenService 失敗 1060:指定的服務未安裝。怎麼辦?

虛擬機器安裝好以後,有以下幾個服務

e4aae266-f362-4510-87e8-a5f5c586c0f2

注意:服務的名字不一定是顯示的名字,右鍵屬性查看出來的服務名稱才是真正的名字

e4e12748-529f-4c24-8f42-843f42335c64

0549f32b-7cd7-41a4-a3ac-c3ac47574386

這就是找不到服務的意思

vm幾個服務的名字為:

"vds"

"VMAuthdService"

"VMnetDHCP"

"VMware NAT Service"

"VMUSBArbService"

"VMwareHostd"

f0055c84-0270-4c98-91f2-88961007edfa

三  新建指令碼

@echo off

net start "vds"

net start "VMAuthdService"

net start "VMnetDHCP"

net start "VMware NAT Service"

net start "VMUSBArbService"

net start "VMwareHostd"

@echo off

net stop "vds"

net stop "VMnetDHCP"

net stop "VMware NAT Service"

net stop "VMwareHostd"

net stop "VMUSBArbService"

net stop "VMAuthdService"

分別儲存為

startvm.bat

shutdownvm.bat

這樣批處理指令碼就建立好了

雙擊指令碼執行,發現服務沒被啟動,在指令碼後面加一個pause,這樣子視窗就不會立即消失了

590ac3d2-207b-4c38-8c20-33feee28602c

拒絕訪問肯定是許可權的問題了,可以右鍵--管理員許可權執行,但是比較麻煩

可以建立一個快捷方式

右鍵,設定以後,雙擊就可以管理員身份運行了

9f164247-c239-469d-84d9-18dc0a2ce80f

開啟虛擬機器

vmrun start "F:\virtualMachine\ubuntu15.1X64/ubuntu15.1X64.vmx" nogui

94de3588-48cc-4b2b-8ef0-6208d81916de

附錄:

windows命令列裡面直接輸入 sc和net (net help)檢視命令資訊

切換到vm虛擬機器安裝路徑,輸入vmrun,可以檢視 vmrun命令詳細資訊

以下摘自系統

-----------系統給出來的提示資訊------win10 命令列下-----------------

C:\WINDOWS\system32>sc

描述:

        SC 是用來與服務控制管理器和服務進行通訊

        的命令列程式。

用法:

        sc <server> [command] [service name] <option1> <option2>...

        <server> 選項的格式為 "\\ServerName"

        可通過鍵入以下命令獲取有關命令的更多幫助: "sc [command]"

        命令:

          query-----------查詢服務的狀態,

                          或列舉服務型別的狀態。

          queryex---------查詢服務的擴充套件狀態,

                          或列舉服務型別的狀態。

          start-----------啟動服務。

          pause-----------向服務傳送 PAUSE 控制請求。

          interrogate-----向服務傳送 INTERROGATE 控制請求。

          continue--------向服務傳送 CONTINUE 控制請求。

          stop------------向服務傳送 STOP 請求。

          config----------更改服務的配置(永久)。

          description-----更改服務的描述。

          failure---------更改失敗時服務執行的操作。

          failureflag-----更改服務的失敗操作標誌。

          sidtype---------更改服務的服務 SID 型別。

          privs-----------更改服務的所需特權。

          managedaccount--更改服務以將服務帳戶密碼

                          標記為由 LSA 管理。

          qc--------------查詢服務的配置資訊。

          qdescription----查詢服務的描述。

          qfailure--------查詢失敗時服務執行的操作。

          qfailureflag----查詢服務的失敗操作標誌。

          qsidtype--------查詢服務的服務 SID 型別。

          qprivs----------查詢服務的所需特權。

          qtriggerinfo----查詢服務的觸發器引數。

          qpreferrednode--查詢服務的首選 NUMA 節點。

          qmanagedaccount-查詢服務是否將帳戶

                          與 LSA 管理的密碼結合使用。

          qprotection-----查詢服務的程序保護級別。

          delete----------(從登錄檔中)刪除服務。

          create----------建立服務(並將其新增到登錄檔中)。

          control---------向服務傳送控制。

          sdshow----------顯示服務的安全描述符。

          sdset-----------設定服務的安全描述符。

          showsid---------顯示與任意名稱對應的服務 SID 字串。

          triggerinfo-----配置服務的觸發器引數。

          preferrednode---設定服務的首選 NUMA 節點。

          GetDisplayName--獲取服務的 DisplayName。

          GetKeyName------獲取服務的 ServiceKeyName。

          EnumDepend------列舉服務依賴關係。

        以下命令不需要服務名稱:

        sc <server> <command> <option>

          boot------------(ok | bad)指示是否應將上一次啟動另存為

                          最近一次已知的正確啟動配置

          Lock------------鎖定服務資料庫

          QueryLock-------查詢 SCManager 資料庫的 LockStatus

示例:

        sc start MyService

QUERY 和 QUERYEX 選項:

        如果查詢命令帶服務名稱,將返回

        該服務的狀態。其他選項不適合這種

        情況。如果查詢命令不帶引數或

        帶下列選項之一,將列舉此服務。

    type=    要列舉的服務的型別(driver, service, userservice, all)

             (預設 = service)

    state=   要列舉的服務的狀態 (inactive, all)

             (預設 = active)

    bufsize= 列舉緩衝區的大小(以位元組計)

             (預設 = 4096)

    ri=      開始列舉的恢復索引號

             (預設 = 0)

    group=   要列舉的服務組

             (預設 = all groups)

語法示例

sc query                - 列舉活動服務和驅動程式的狀態

sc query eventlog       - 顯示 eventlog 服務的狀態

sc queryex eventlog     - 顯示 eventlog 服務的擴充套件狀態

sc query type= driver   - 僅列舉活動驅動程式

sc query type= service  - 僅列舉 Win32 服務

sc query state= all     - 列舉所有服務和驅動程式

sc query bufsize= 50    - 列舉緩衝區為 50 位元組

sc query ri= 14         - 列舉時恢復索引 = 14

sc queryex group= ""    - 列舉不在組內的活動服務

sc query type= interact - 列舉所有不活動服務

sc query type= driver group= NDIS     - 列舉所有 NDIS 驅動程式

C:\WINDOWS\system32>

--------------------------------------------------------------------------

C:\WINDOWS\system32>net ?

此命令的語法是:

NET

    [ ACCOUNTS | COMPUTER | CONFIG | CONTINUE | FILE | GROUP | HELP |

      HELPMSG | LOCALGROUP | PAUSE | SESSION | SHARE | START |

      STATISTICS | STOP | TIME | USE | USER | VIEW ]

C:\WINDOWS\system32>net help

此命令的語法是:

NET HELP

command

     -或-

NET command /HELP

  可用的命令為:

  NET ACCOUNTS             NET HELPMSG             NET STATISTICS

  NET COMPUTER             NET LOCALGROUP        NET STOP

  NET CONFIG                  NET PAUSE                 NET TIME

  NET CONTINUE              NET SESSION             NET USE

  NET FILE                       NET SHARE                NET USER

  NET GROUP                   NET START                NET VIEW

  NET HELP

  NET HELP NAMES 解釋 NET HELP 語法行中的不同型別名稱。

  NET HELP SERVICES 列出可以啟動的一些服務。

  NET HELP SYNTAX 解釋如何讀取 NET HELP 語法行。

  NET HELP 命令 | MORE 顯示幫助,一次顯示一屏。

============vmrun命令========

D:\ApplicationFiles\System\VMware Workstation>vmrun

vmrun version 1.15.0 build-2985596

Usage: vmrun [AUTHENTICATION-FLAGS] COMMAND [PARAMETERS]

AUTHENTICATION-FLAGS

--------------------

These must appear before the command and any command parameters.

   -h <hostName>  (not needed for Workstation)

   -P <hostPort>  (not needed for Workstation)

   -T <hostType> (ws|server|server1|fusion|esx|vc|player)

     for example, use '-T server' for Server 2.0

                  use '-T server1' for Server 1.0

                  use '-T ws' for VMware Workstation

                  use '-T ws-shared' for VMware Workstation (shared mode)

                  use '-T esx' for VMware ESX

                  use '-T vc' for VMware vCenter Server

   -u <userName in host OS>  (not needed for Workstation)

   -p <password in host OS>  (not needed for Workstation)

   -vp <password for encrypted virtual machine>

   -gu <userName in guest OS>

   -gp <password in guest OS>

POWER

COMMANDS         PARAMETERS    DESCRIPTION

--------------           ----------           -----------

start                    Path to vmx file     Start a VM or Team

                         [gui|nogui]

stop                     Path to vmx file     Stop a VM or Team

                         [hard|soft]

reset                    Path to vmx file     Reset a VM or Team

                         [hard|soft]

suspend              Path to vmx file     Suspend a VM or Team

                         [hard|soft]

pause                 Path to vmx file     Pause a VM

unpause             Path to vmx file     Unpause a VM

SNAPSHOT

COMMANDS        PARAMETERS           DESCRIPTION

-----------------        ----------           -----------

listSnapshots            Path to vmx file     List all snapshots in a VM

                             [showTree]

snapshot                 Path to vmx file     Create a snapshot of a VM

                              Snapshot name

deleteSnapshot        Path to vmx file     Remove a snapshot from a VM

                             Snapshot name

                          [andDeleteChildren]

revertToSnapshot         Path to vmx file     Set VM state to a snapshot

                         Snapshot name

GUEST OS COMMANDS        PARAMETERS           DESCRIPTION

-----------------        ----------           -----------

runProgramInGuest        Path to vmx file     Run a program in Guest OS

                         [-noWait]

                         [-activeWindow]

                         [-interactive]

                         Complete-Path-To-Program

                         [Program arguments]

fileExistsInGuest        Path to vmx file     Check if a file exists in Guest OS

                         Path to file in guest

directoryExistsInGuest   Path to vmx file     Check if a directory exists in Guest OS

                         Path to directory in guest

setSharedFolderState     Path to vmx file     Modify a Host-Guest shared folder

                         Share name

                         Host path

                         writable | readonly

addSharedFolder          Path to vmx file     Add a Host-Guest shared folder

                         Share name

                         New host path

removeSharedFolder       Path to vmx file     Remove a Host-Guest shared folder

                         Share name

enableSharedFolders      Path to vmx file     Enable shared folders in Guest

                         [runtime]

disableSharedFolders     Path to vmx file     Disable shared folders in Guest

                         [runtime]

listProcessesInGuest     Path to vmx file     List running processes in Guest OS

killProcessInGuest       Path to vmx file     Kill a process in Guest OS

                         process id

runScriptInGuest         Path to vmx file     Run a script in Guest OS

                         [-noWait]

                         [-activeWindow]

                         [-interactive]

                         Interpreter path

                         Script text

deleteFileInGuest        Path to vmx file     Delete a file in Guest OS

Path in guest

createDirectoryInGuest   Path to vmx file     Create a directory in Guest OS

Directory path in guest

deleteDirectoryInGuest   Path to vmx file     Delete a directory in Guest OS

Directory path in guest

CreateTempfileInGuest    Path to vmx file     Create a temporary file in Guest OS

listDirectoryInGuest     Path to vmx file     List a directory in Guest OS

                         Directory path in guest

CopyFileFromHostToGuest  Path to vmx file     Copy a file from host OS to guest OS

Path on host             Path in guest

CopyFileFromGuestToHost  Path to vmx file     Copy a file from guest OS to host OS

Path in guest            Path on host

renameFileInGuest        Path to vmx file     Rename a file in Guest OS

                         Original name

                         New name

captureScreen            Path to vmx file     Capture the screen of the VM to a local file

Path on host

writeVariable            Path to vmx file     Write a variable in the VM state

                         [runtimeConfig|guestEnv|guestVar]

                         variable name

                         variable value

readVariable             Path to vmx file     Read a variable in the VM state

                         [runtimeConfig|guestEnv|guestVar]

                         variable name

getGuestIPAddress        Path to vmx file     Gets the IP address of the guest

                         [-wait]

GENERAL COMMANDS         PARAMETERS           DESCRIPTION

----------------         ----------           -----------

list                                          List all running VMs

upgradevm                Path to vmx file     Upgrade VM file format, virtual hw

installTools             Path to vmx file     Install Tools in Guest

checkToolsState          Path to vmx file     Check the current Tools state

register                 Path to vmx file     Register a VM

unregister               Path to vmx file     Unregister a VM

listRegisteredVM                              List registered VMs

deleteVM                 Path to vmx file     Delete a VM

clone                    Path to vmx file     Create a copy of the VM

                         Path to destination vmx file

                         full|linked

                         [-snapshot=Snapshot Name]

                         [-cloneName=Name]

Examples:

Starting a virtual machine with Workstation on a Windows host

   vmrun -T ws start "c:\my VMs\myVM.vmx"

Stopping a virtual machine on an ESX host

   vmrun -T esx -h https://myHost.com/sdk -u hostUser -p hostPassword stop "[storage1] vm/myVM.vmx"

Running a program in a virtual machine with Workstation on a Windows host with Windows guest

   vmrun -T ws -gu guestUser -gp guestPassword runProgramInGuest "c:\my VMs\myVM.vmx" "c:\Program Files\myProgram.exe"

Running a program in a virtual machine with Server on a Linux host with Linux guest

   vmrun -T server -h https://myHost.com:8333/sdk -u hostUser -p hostPassword -gu guestUser -gp guestPassword runProgramInGuest "[standard] vm/myVM.vmx" /usr/bin/X11/xclock -display :0

Creating a snapshot of a virtual machine with Workstation on a Windows host

   vmrun -T ws snapshot "c:\my VMs\myVM.vmx" mySnapshot

Reverting to a snapshot with Workstation on a Windows host

   vmrun -T ws revertToSnapshot "c:\my VMs\myVM.vmx" mySnapshot

Deleting a snapshot with Workstation on a Windows host

   vmrun -T ws deleteSnapshot "c:\my VMs\myVM.vmx" mySnapshot

Enabling Shared Folders with Workstation on a Windows host

   vmrun -T ws enableSharedFolders "c:\my VMs\myVM.vmx"

D:\ApplicationFiles\System\VMware Workstation>