您的位置:首页 > 运维架构 > Shell

[32] Window PowerShell DSC 学习系列----使用DSC Package安装时,如何获取Product ID?

2017-08-28 12:35 786 查看
DSC的自身提供Package的DSC资源去安装msi格式的文件。 刚好笔者需要自动安装Chef的客户端,其就是一个msi格式的文件。但是有点复杂和烦人的是其需要使用这提供一个Product ID,其具体格式参考如下:

Package [string] #ResourceName

{

Name = [string]

Path = [string]

ProductId = [string]

[ Arguments = [string] ]

[ Credential = [PSCredential] ]

[ Ensure = [string] { Absent | Present } ]

[ LogPath = [string] ]

[ DependsOn = [string[]] ]

[ ReturnCode = [UInt32[]] ]

}

如果要安装Chef的客户端,其DSC的Configuration文件应该如下:



从上面看我们需要一个ProductID,但是目前没有直接的方法可以获取这个Product ID,一个的变通的方法是先安装上,然后通过Get-WmiObject Win32_Product 命令进行查看。

比如,

PS C:\Users\chancein007> Get-WmiObject Win32_Product -Filter “name like ‘%Chef%’”| Format-Table IdentifyingNumber, Name, Version

IdentifyingNumber Name Version

—————– —- ——-

{1EF1B367-A04C-4091-841C-8BCE15378EC0} Chef Client v13.1.31 13.1.31.1

{D4D32DC9-9CAF-46B6-AC52-376049930910} Chef Development Kit v0.17.17 0.17.17.1

而且这个Product ID是不会变化的,就是说这个安装包,装在任何一台机器上,其Product ID都是一样的,只要安装包一样。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐