查找域内所有的Windows Server 2012 R2的服务器,并区分出哪些是物理机,那些是虚拟机

通过使用Get-Adcomputer和Get-Wmiobject 组合来实现。

思路是这样的,先看一台服务器的属性值有什么可用利用的。

[12r2-dc]: PS C:\> Get-ADComputer -Identity 12r2-dc -Properties *

AccountExpirationDate                :

accountExpires                       : 9223372036854775807

AccountLockoutTime                   :

AccountNotDelegated                  : False

AllowReversiblePasswordEncryption    : False

AuthenticationPolicy                 : {}

AuthenticationPolicySilo             : {}

BadLogonCount                        : 0

badPasswordTime                      : 0

badPwdCount                          : 0

CannotChangePassword                 : False

CanonicalName                        : abc.com/Domain Controllers/12R2-DC

Certificates                         : {System.Security.Cryptography.X509Certificates.X509Certificate}

CN                                   : 12R2-DC

codePage                             : 0

CompoundIdentitySupported            : {False}

countryCode                          : 0

Created                              : 10/9/2016 10:29:00 PM

createTimeStamp                      : 10/9/2016 10:29:00 PM

Deleted                              :

Description                          :

DisplayName                          :

DistinguishedName                    : CN=12R2-DC,OU=Domain Controllers,DC=abc,DC=com

DNSHostName                          : 12R2-DC.abc.com

DoesNotRequirePreAuth                : False

dSCorePropagationData                : {10/9/2016 10:29:03 PM, 12/31/1600 4:00:01 PM}

Enabled                              : True

HomedirRequired                      : False

HomePage                             :

instanceType                         : 4

IPv4Address                          : 169.254.15.118

IPv6Address                          :

isCriticalSystemObject               : True

isDeleted                            :

KerberosEncryptionType               : {RC4, AES128, AES256}

LastBadPasswordAttempt               :

LastKnownParent                      :

lastLogoff                           : 0

lastLogon                            : 131498622097210925

LastLogonDate                        : 9/10/2017 11:04:43 PM

lastLogonTimestamp                   : 131495834837332604

localPolicyFlags                     : 0

Location                             :

LockedOut                            : False

logonCount                           : 1860

ManagedBy                            :

MemberOf                             : {CN=Pre-Windows 2000 Compatible Access,CN=Builtin,DC=abc,DC=com, CN=Cert

Publishers,CN=Users,DC=abc,DC=com}

MNSLogonAccount                      : False

Modified                             : 9/12/2017 7:23:19 PM

modifyTimeStamp                      : 9/12/2017 7:23:19 PM

msDFSR-ComputerReferenceBL           : {CN=12R2-DC,CN=Topology,CN=Domain System

Volume,CN=DFSR-GlobalSettings,CN=System,DC=abc,DC=com}

msDS-GenerationId                    : {45, 30, 43, 189...}

msDS-SupportedEncryptionTypes        : 28

msDS-User-Account-Control-Computed   : 0

Name                                 : 12R2-DC

nTSecurityDescriptor                 : System.DirectoryServices.ActiveDirectorySecurity

ObjectCategory                       : CN=Computer,CN=Schema,CN=Configuration,DC=abc,DC=com

ObjectClass                          : computer

ObjectGUID                           : bf0a2518-aa9c-4cb9-ab8e-09be04b3e27b

objectSid                            : S-1-5-21-2770570338-4234891044-2636713416-1001

OperatingSystem                      : Windows Server 2012 R2 Standard

OperatingSystemHotfix                :

OperatingSystemServicePack           :

OperatingSystemVersion               : 6.3 (9600)

PasswordExpired                      : False

PasswordLastSet                      : 8/20/2017 4:58:11 PM

PasswordNeverExpires                 : False

PasswordNotRequired                  : False

PrimaryGroup                         : CN=Domain

看到这里就知道利用哪个属性值了,过滤一下,用一个通配符表达式或是任何一个能把这个值抓住的条件就可以,再用一个选择语句把名字选择出来。

$computer = Get-ADComputer -Filter {operatingsystem -like "*20*"} | select -ExpandProperty name

然后运行了一下Get-Wmiobject,结果如下:

[12r2-dc]: PS C:\> Get-WmiObject -Class win32_computersystem

Domain              : abc.com

Manufacturer        : Microsoft Corporation

Model               : Virtual Machine

Name                : 12R2-DC

PrimaryOwnerName    : Windows User

TotalPhysicalMemory : 2094039040

然后想到,如果把变量$computer传递进来,再把两个属性暴露出来,就会产生一个结果集,当然,你愿意输出到文件自己再用管道符输出就是了。

Invoke-Command -ComputerName $computer {Get-WmiObject win32_computersystem} -ErrorAction SilentlyContinue | select name,model | sort model

结果就是:

Name                                                        Model

----                                                        -----

12R2-SCCM                                                   Virtual Machine

时间: 09-13

查找域内所有的Windows Server 2012 R2的服务器,并区分出哪些是物理机,那些是虚拟机的相关文章

Windows Server 2012 R2 CA服务器部署

AD服务器部署完成后,安装一台服务器加入到现有的域中,部署CA服务器:在加域之前对服务器进行初始化配置:计算机名称.IP地址.防火墙.Windows 补丁.1.在域成员服务器上打开服务器管理器,选择添加角色和功能2.下一步3.下一步4.下一步5.选择Active Directory 证书服务,添加功能6.添加完成7.下一步8.下一步9.添加证书颁发机构Web注册,选择添加功能10.添加完成,下一步11.下一步12.下一步13.等待安装完成14.选择配置目标服务器上的Active Director

windows server 2012 r2 VPN 服务器搭建

最近有这么个需求:外地的分公司需要连接到公司总部内网,这篇文章把整个过程分享一下. VPN有两个方法实现: 1.硬件,如果路由器自带此功能,直接启用即可. 2.软件,利用windows系统进行搭建. 这篇文章主要说一下第二种. 环境: windows server2012 r2 标准版,并更新为当下最新更新. 正式开始: 一.安装VPN组件 添加角色和功能---远程访问----角色服务,选择"DIRECTACCESS和VPN(RAS)"项------等待完成安装 二.打开 开始向导 进

Windows Server 2012 R2 创建AD域

? ? 前言 我们按照下图来创建第一个林中的第一个域.创建方法为先安装一台Windows服务器,然后将其升级为域控制器.然后创建第二台域控制器,一台成员服务器与一台加入域的Win8计算机. 环境 网络192.168.100.1 子网掩码 255.255.255.0 网关192.168.100.2 域名 contoso.com DC1 192.168.100.11/24 DC2 192.168.100.12/24 Server 192.168.100.13/24 PC1 192.168.100.1

安装VMware workstation以及创建windows server 2012 R2

windows server 2012 R2是服务器的一种,在此之前还有windows server 2003.windows server 2008,不过现在windows server 2003已经过期了,而且在windows server 2012 R2出版之后,windows server 2008页应经停止销售了,所以在一般的企业里使用的都是windows server 2012 R2.VMware是虚拟机,在我们的计算机里服务器只能借助VMware的平台才可以打开,首先要学会安装VM

Windows Server 笔记(六):Windows Server 2012 R2 NIC Teaming(NIC组)

什么是NIC Teaming? NIC Teaming 就是将两个或更多的网络适配器组合在一起,从而达到容错和带宽聚合作用.NIC Teaming 中的每个网络适配器都是物理存在的(虚拟机中的网络适配器也算物理存在的,因为需要绑定物理网卡.)并且各自连接独立的网络电缆. 在Windows Server早期的版本中,NIC Teaming只能通过第三方软件来实现,例如Intel.然而在Windows Server 2012 R2中,NIC Teaming 可以直接通过系统实现,而不需要安装额外的软

清除 Windows Server 2012(R2) 中的无线网络配置

最近为了测试新一期的活动实验环境和同事借用了一台TPW530,系统是Windows Server 2012 R2,但由于实验环境要求有外网连接,于是在家里测试还在公司测试的时候分别根据需要配置和连接了公司和家里的SSID,但是配置好无线网络以后配置文件信息会保留所有用于网络连接的信息,包括了安全秘钥等等,因此再次连接的时候就不需要再配置了:但是现在机器用完了要把这些信息清除掉,该如何操作呢?如果是Windows 8.1的客户端,更新了2014年4月8号的补丁,那么很简单,可以通过Windows键

windows server 2012 r2 NIC组合的一些概念

成组模式 1.静态成组: 也叫做交换机依赖组,由于这种NIC组合需要交换机参与到组合中,所以NIC组中的所有适配器都必须连接到相同的交换机上面,不能分散在多个不同的交换机上.需要交换机支持IEEE802.3ad标准. 2.交换机独立: 该NIC组合无需交换机参与到组合中,所以每个适配器可以连接到不同的交换机,也在交换机级别提供了基本的容错. 3.LACP: 链路汇聚控制协议(Link Aggregation Control Protocol,LACP),该组合可以自动将多个NIC组合成一股逻辑(

Windows Server 笔记(七):Windows Server 2012 R2 NIC Teaming(NIC组)

什么是NIC Teaming?         NIC Teaming 就是将两个或更多的网络适配器组合在一起,从而达到容错和带宽聚合作用.NIC Teaming 中的每个网络适配器都是物理存在的(虚拟机中的网络适配器也算物理存在的,因为需要绑定物理网卡.)并且各自连接独立的网络电缆.        在Windows Server早期的版本中,NIC Teaming只能通过第三方软件来实现,例如Intel.然而在Windows Server 2012 R2中,NIC Teaming 可以直接通过

Dynamics CRM 2013 试用之系统篇 Windows Server 2012 R2安装

Dynamics CRM 2013要求Windows Server 2008 R2以上,本人就装最新的Windows Server 2012 R2 测试. 系统安装很简单,直接下载原版iso载入虚拟机运行即可以. 以下为一般步骤: 选第二个,选第一个的话,就变成DOS了, 成功进入桌面后,如下图了: 安装中涉及到一些文档,可以到如下文件夹中下载:http://www.400gb.com/u/1550913/11909733