Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Linux通过Python访问WMI_Python_Linux_Wmi_Wmi Query - Fatal编程技术网

从Linux通过Python访问WMI

从Linux通过Python访问WMI,python,linux,wmi,wmi-query,Python,Linux,Wmi,Wmi Query,我正在寻找一种从Linux机器(CentOS 6)远程从Python脚本访问WMI(Windows管理说明)的方法 当然有python wmi包,但它使用的Windows API在Linux上不可用。 我找到了一个可以做这种事情的机器。但是没有文档,甚至这个例子也不适合我 我之所以想这样做,是因为我想远程获取系统上的所有用户帐户,并将它们存储在数据库中。 也许你还有其他窍门怎么做 谢谢wmi客户端包装程序包,如其名称所述,是wmic客户端的包装程序。因此,您首先需要安装wmic才能使其工作。要安

我正在寻找一种从Linux机器(CentOS 6)远程从Python脚本访问WMI(Windows管理说明)的方法

当然有python wmi包,但它使用的Windows API在Linux上不可用。 我找到了一个可以做这种事情的机器。但是没有文档,甚至这个例子也不适合我

我之所以想这样做,是因为我想远程获取系统上的所有用户帐户,并将它们存储在数据库中。 也许你还有其他窍门怎么做


谢谢

wmi客户端包装程序包,如其名称所述,是wmic客户端的包装程序。因此,您首先需要安装wmic才能使其工作。要安装wmic,只需从linux计算机上运行:

sudo智能安装wmi客户端

安装WMIC后,wmi客户端包装器应按照示例中所述工作:

import wmi_client_wrapper as wmi

wmic = wmi.WmiClientWrapper(
    username="Administrator",
    password="password",
    host="192.168.1.149",
)

output = wmic.query("SELECT * FROM Win32_Processor")
您可以在此链接中找到有关wmic的更多信息

您可以使用在Python中实现了WMI的Impacket()

有两个可能有用的示例:

1) :它允许发出WQL查询并获取对象的描述


2) :与psexec类似,但通过WMI执行命令

您的Linux机箱上是否安装了
wmic
?尝试运行
wmic-U管理员%password//192.168.1.149“从Win32\U处理器中选择*”
。(这相当于wmi客户端包装器示例中的命令)Hi@beto,我一直在尝试查找Impacket支持/实现wmi的程度。官方的说法是部分/全部,这没有太大帮助。你能帮我吗?