簡體   English   中英

如何使用Python在受密碼保護的計算機上遠程重新啟動服務?

[英]How to remotely restart a service on a password protected machine using Python?

我決定將Python作為一種新的學習語言。 我要做的第一件事是編寫一個腳本,該腳本將允許我從本地計算機遠程重新啟動其他計算機上的服務。 當遠程計算機要求用戶名和密碼登錄時,我該怎么做? 我不需要提供完整的解決方案,但是可能需要一些指向我應該使用的庫的指針,或者在編寫腳本時需要解決的任何問題。

編輯:所有遠程計算機都使用Windows 2003

人們通常建議將paramiko作為執行ssh的庫(我假設您需要ssh才能進入遠程計算機)。 有一個很好的教程

編輯 :在Windows上,最簡單的方法可能是使用SysInternals psservice實用程序,並通過os.system進行調用; 這樣可以啟動遠程服務,並接受登錄憑據。

如果要直接在Python中執行此操作,則需要win32service.StartService 在此之前,需要先打開遠程服務管理器,然后再打開遠程服務。 在此之前,您需要模擬要執行該操作的用戶,請參見示例

看看Fabric是基於paramiko的 這確實是一個使用python自動執行遠程任務的好工具。

Fabric文檔將向您展示它的易用性。

您的遠程計算機運行哪種操作系統? 如果是linux,請使用subprocess模塊運行ssh(1)

如果是Windows,則獲取win32擴展 它們允許您調用Windows函數。 應該有一個API允許訪問服務。 如果沒有,您可以使用子過程模塊運行一個名為scdocs )的工具。

目標機器使用哪個操作系統? 如果“服務”是“ Windows NT服務”,而您的本地計算機也是Windows,我將使用IronPython作為Python語言實現,並直接調用.net System.Management命名空間中的WMI工具-這意味着像這樣的遠程管理員。

在Windows上, wmi模塊現在非常適合此操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM