[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都是一样的,只要安装包一样。
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都是一样的,只要安装包一样。
相关文章推荐
- [6] Window PowerShell DSC 学习系列----如何安装最新的PowerShell DSC 5.1 Pull Server?
- [3] Window PowerShell DSC 学习系列----如何在PowerShell DSC 5.x 安装最新的DSC Module?
- [7] Window PowerShell DSC 学习系列----如何被管理的设置节点注册到Pull Server?
- [28] Window PowerShell DSC 学习系列----如何用Java调用PowerShell DSC 5.x的oData服务
- [29] Window PowerShell DSC 学习系列----如何备份数据库和解决一个MS Server 2008上的大坑?
- [30] Window PowerShell DSC 学习系列----如何解决跨节点(across computers)依赖?
- [5] Window PowerShell DSC 学习系列----如何生成一个DSC MOF文件?
- [22]Window PowerShell DSC学习系列---- 如何用PowerShell脚本查看DSC服务器的执行报表(Report)
- [9] Window PowerShell DSC 学习系列----错误诊断和分析
- [2] Window PowerShell DSC 学习系列----DSC的资源(Resource)以及配置和格式(Configuration && Sytax )
- [11] Windows PowerShell DSC学习系列---如何定制一个基于PowerShell脚本实现的DSC Resource
- [21]Window PowerShell DSC学习系列---- 在Window 2012 R2 安装DSC 5.0 Pull服务器报错的解决方案
- [31] Window PowerShell DSC 学习系列----PowerShell DSC 专栏竟然在CSDN推荐的优秀专栏里面
- [1] Window PowerShell DSC 学习系列----DSC的定义和2种架构模式
- [4] Window PowerShell DSC 学习系列----PowerShell DSC 5.x 提供了哪些有用好用的工具命令?
- [8] Window PowerShell DSC 学习系列----MOF文件和DSC Module的部署
- 树莓派学习系列——使用C++来获取usb设备ID,效果同lsusb
- [14]Windows PowerShell DSC学习系列---如何Debug PowerShell DSC?
- [25]Window PowerShell DSC学习系列----如何更换DSC Pull服务器数据库为Access数据库?
- [10] Window PowerShell DSC 学习系列----目标节点和Pull 服务器底层通信原理剖析