active-directory – “dsquery computer -inactive x”忽略非常
我继承了一个包含数百个长期死计算机帐户的AD环境.我想开始清理它们.如果我使用dsquery computer -inactive命令,它似乎忽略这些计算机,并且仅返回在最近几个月/周内处于活动状态但在给定时间段内未处于活动状态的计算机.
例如,如果我运行dsquery computer -inactive 4,我会得到一台计算机.如果我运行dsquery计算机-inactive 3我得到大约五.如果我运行dsquery computer -inactive 1,我会得到一个大的列表.这些列表都没有显示非常旧的计算机帐户. 我误解了这个命令应该做什么吗?
dsquery computer -inactive x使用LastLogonTimeStamp属性来确定计算机是否处于非活动状态. LastLogonTimeStamp的两个特性是:
1)它非常松散,即无处接近实时.每次计算机登录到域时都不会更新此属性,即使更新它,也不会立即将其复制到其他域控制器. 2)它可以为null,在这种情况下,dsquery很可能会忽略它. -stalepwd开关还可以帮助您识别不活动的计算机帐户.计算机帐户应每30天自动更新一次密码.但请注意,它使用pwdLastSet LDAP属性,该属性也可以为null. pwdLastSet是一个恼人的文件时间,但.Net / Powershell可以轻松地将其转换为人性化的日期: PS C:Usersryan> Get-ADComputer -Filter * -Properties PasswordLastSet,LastLogonTimeStamp | ? { $_.PasswordLastSet -LT $(Get-Date).AddDays(-180) } | Select Name,PasswordLastSet,LastLogonTimeStamp | Sort-Object PasswordLastSet -Descending 上面的Powershell行将为您提供所有计算机帐户,其中pwdLastSet属性(Powershell将其转换为人类可读的PasswordLastSet)超过180天,最新的帐户将位于顶部.最旧的帐户和具有null pwdLastSets的帐户将位于底部. (当然,您可以在计算机上禁用密码更改,但这是相对罕见的事情.) 这些具有空值的帐户通常意味着他们从未登录过域和/或从未更改过他们的密码.我确定可能会出现其他一些奇怪的用例,例如管理员预先安排计算机帐户,然后决定永远不会真正将计算机加入域,来自同一个林的其他子域的计算机帐户等你只需要调查那些. 如果您想阅读它,请参阅AskDS的LastLogonTimeStamp的更多信息: http://blogs.technet.com/b/askds/archive/2009/04/15/the-lastlogontimestamp-attribute-what-it-was-designed-for-and-how-it-works.aspx (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- windows – 如何使Process Explorer的功能“替换
- 如何克服`文件名或扩展名太长`错误与Windows中的
- 为什么VirtualBox找不到名为Windows_7的注册机器
- osx – 用于在Windows / Linux上创建Mac软件包的
- 有谁知道如何在Windows上设置ZeroMQ以使用OpenPG
- Windows Azure:重新安装Linux而不重新创建VM
- 在Windows和Linux上获取Python中唯一的计算机ID
- C语言计时
- windows-server-2003 – 需要IPX的Server 2003 G
- windows-xp – 更新KB971092的Windows Update行为