当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 你是我的纳米吗?

作者:精品下载站 日期:2024-12-14 07:50:22 浏览:12 分类:玩电脑

你是我的纳米吗?


既然 Windows Server 2016 已经发布,我就更深入地研究 Nano 领域了。当我部署几台服务器时,我意识到存在潜在的长期管理问题。在技术预览期间,Nano 装置因其 Tuva 名称而得到认可。但现在,Nano 服务器只是另一个 Windows Server 2016 安装。那么如何判断服务器是否是 Nano 安装呢?这是我想出的解决方案。

您可以使用的一种解决方案是新的 Get-ComputerInfo cmdlet。一方面,这是一个很棒的 cmdlet,因为它提供了大量的系统信息。

[玩转系统] 你是我的纳米吗?

我可以使用它通过 WindowsEditionID 属性来识别 Nano 服务器。但是,此 cmdlet 仅存在于 Windows Server 2016 上,并且没有远程计算机选项,因此您必须通过 PSSession 运行它。

$computers = "chi-p50.globomantics.local",
"nano-01.globomantics.local",
"chi-test01.globomantics.local",
"chi-test03.globomantics.local"
$cred = Get-Credential globomantics\jeff

invoke-command -scriptblock { get-computerinfo | select CSName,windowsEditionID,WindowsProductName} -computer $computers -Credential $cred -hidecomputername | 
select * -ExcludeProperty RunspaceID

当然,它确实有效。

[玩转系统] 你是我的纳米吗?

我想要的是一种无需依赖 Windows Server 2016 或 PowerShell 5.1 即可识别 Nano 服务器安装的方法。答案就隐藏在 Win32_OperatingSystem 类中。该类有一个名为 OperatingSystemSKU 的属性。如果您阅读文档,您会发现不同的操作系统有不同的值。 Nano 服务器的值为 143 或 144,具体取决于您安装的是 Datacenter 还是 Standard。从我的角度来看,这种方法是非常受欢迎的,因为我可以查询任何支持 PowerShell 3.0 的服务器。

所以我写了这个函数,你可以在 GitHub 上找到它作为要点。

该函数使用 Get-CimInstance 查询远程计算机并检查 Win32_OperatingSystem 类。默认情况下,该函数将一个简单的对象写入管道。

Test-IsNanoServer -Computername $computers -Credential $cred | format-list

[玩转系统] 你是我的纳米吗?

或者,像 Test-Connection 一样,我包含一个 -Quiet 参数来返回简单的 True/False。

$computers | Where { Test-IsNanoServer $_ -Credential $cred -quiet}

[玩转系统] 你是我的纳米吗?

理想情况下,我希望看到 Get-ComputerInfo 能够扩展到远程工作,但现在我认为我的简单测试功能应该可以满足我的需求。我希望您开始尝试一下 Nano Server。如果您愿意,我很想听听您的痛点。

如果您对我的功能有意见或问题,请在要点页面上发表评论。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯