看起来这应该很容易,但我没有找到任何关于如何通过 WMI、Powershell 或其他可以相对快速地查询大量机器的方法远程识别 Windows Server“核心”安装的信息。我试图报告我们运行核心与完整安装的服务器的百分比。有任何想法吗?
windows powershell windows-server-2008 wmi windows-server-2008-r2
我需要枚举嵌入在Get-AdPermission的属性“ExtendedRights”中的权限 。
如何展开此多值对象中的属性并显示它们?
通常我看到这样的命令:
Get-Mailbox | Get-ADPermission | where {($_.ExtendedRights -like "*Send-As*")} | Fl
Run Code Online (Sandbox Code Playgroud)
但是现在我的情况是我只想报告授予用户的权限(可以是发送方式,也可以是接收方式)
我正在寻找一种方法来查找在 Exchange 2010 中没有设置 SEND AS SELF 标志的所有用户。没有该标志,用户将无法通过 SMTP 发送电子邮件,而且似乎有些用户缺少此标志(尤其是用户谁曾经是域管理员等)
我想这必须与下面的查询类似,尽管这应该显示具有 Send-as 的用户(因为它隐藏了用户名),而我正在寻找没有的用户。
[PS] C:\Windows\system32>Get-Mailbox | Get-ADPermission | where {($_.ExtendedRights -like "*Send-As*")}
Identity User Deny Inherited
-------- ---- ---- ---------
LGBSPL.LGBS/LGBS/... NT AUTHORITY\SELF False False
LGBSPL.LGBS/LGBS/... NT AUTHORITY\SELF False False
Run Code Online (Sandbox Code Playgroud) 我想创建一个打印机统计信息,并且我有一个简单但功能强大的 XML 解析器。所以我想将打印机日志中的所有事件导出为 XML 格式。
打印服务器运行Win2008R2。当我想将过滤后的日志导出到 XML(我过滤了事件 ID 307)时,我只有 6000 个中的 300 个事件。
你可以帮帮我吗?我也尝试过 powershell 导出日志,但我无法获得 xml 结构。
我不想在 GUI 中翻转开关来告诉 IIS 使用应用程序池标识进行匿名身份验证,而是想在 powershell 脚本中执行此操作。
Scott Forsyth 发布了一个解决方案,该解决方案更改了所有站点的默认设置。
如何仅对特定站点执行相同操作?用powershell?
我已经使用相关术语的各种变体进行了搜索,但找不到其他人遇到同样问题的其他实例,所以我希望这里有人能提供线索。
我通过从 Microsoft.com 下载并运行 Windows6.1-KB2506143-x64.msu 安装了 Windows Management Framework 3.0 (KB2506143)。完成后,我根据要求重新启动了机器。重新启动并登录后,我尝试运行 64 位 PowerShell 命令外壳,它出现一秒钟然后消失。32 位外壳似乎工作正常,只是 64 位外壳出现故障。
查看 Fusion 日志,我发现:
*** Assembly Binder Log Entry (10/4/2012 @ 1:51:48 PM) ***
The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.
Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscorwks.dll
Running under executable C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: User = ********\*****
LOG: DisplayName = Microsoft.PowerShell.ConsoleHost, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL
<remainder …Run Code Online (Sandbox Code Playgroud) 我偷偷怀疑这可能是一个错误,但我绝对愿意接受我做错事的可能性。
我在 $vm 中有一个 VMware 虚拟机,我正在尝试为它分配一个引导 CD。$vm 已关闭。
记录的方法似乎很简单:
Set-CDDrive -CD (Get-CDDrive -vm $vm) -IsoPath "[datastorename] \whatever.iso" -StartConnected 1
Run Code Online (Sandbox Code Playgroud)
现在,当我启动 VM 时,它会立即尝试 PXEboot。我关闭机器,在 vSphere 客户端中,我编辑虚拟机的属性,转到“CD/DVD 驱动器 1”,并确认“设备状态”在“开机时连接”旁边有一个复选标记。
这是疯狂的事情。当我取消选中该框,然后再次选中它,然后启动 VM,它从 ISO 启动。
我一次又一次地这样做,打开控制台,关闭它,每次,我都可以在 CLI 上设置 StartConnected 标志,GUI 反映设置,但只有在我手动标记复选框后,它才真正做到从 ISO 启动。
是否有我忽略在 PowerCLI 中执行的步骤以使此设置“采用”?
由于我的服务器上出现了一些错误,我的SMTP服务[SMTP Virtual Server #1]停止了。我想创建将定期运行以检查SMTP服务器状态的作业,如果它停止,则脚本将再次启动它。
我用过,Start-Service "SMTPSVC"但它只启动UATSERV服务而不是[SMTP Virtual Server #1]虚拟主机(请看附件)。
服务启动后如何启动虚拟服务器?
我的管理团队正在处理这个问题。我想同时使用这个临时解决方案。
任何帮助表示赞赏... :)
我们有一些脚本可以使用 PowerShell 作为我们应用程序的一部分来创建计划作业。最近在测试它们时,我注意到其中一些总是立即失败,并且没有产生任何输出(它们甚至没有出现在Get-Job列表中)。
经过多天的调整,我们已经设法将它与任何设置为每周运行的作业隔离开来。下面是一个脚本,它创建两个完全相同的作业。当我们在我们的域上运行它,并提供域用户的凭据,然后强制两个作业在任务计划程序 GUI 中运行(右键单击 -> 运行),每天运行良好(0x0 结果),每周运行失败(0x41306)。
注意:如果我不提供 -Credential 参数,两个工作都可以正常工作。仅当任务是每周一次并且以此域用户身份运行时,作业才会失败。
我找不到有关为什么会发生这种情况的信息,也找不到任何原因它在每周工作中的表现会有所不同。Task Scheduler中的“History£”选项卡几乎没有任何有用的信息,只有“任务因用户请求而停止”和“任务终止”,两者都没有有用的信息:
任务计划程序终止了“\Microsoft\Windows\PowerShell\ScheduledJobs\Test1”任务的“{eabba479-f8fc-4f0e-bf5e-053dfbfe9f62}”实例。任务计划程序根据用户 "MyDomain\SomeUser" 的请求停止了任务 "\Microsoft\Windows\PowerShell\ScheduledJobs\Test1" 的实例 "{eabba479-f8fc-4f0e-bf5e-053dfbfe9f62}"。
这是怎么回事?为什么每周任务的运行方式不同,我该如何解决这个问题?
这是 Windows Server 2008 R2 上的 PowerShell v3。我一直无法在本地复制此内容,但我没有以与我们生产域中的用户相同的方式设置用户(我正在处理此问题,但我想尽快发布此内容,希望有人知道发生了什么!)。
Import-Module PSScheduledJob
$Action =
{
"Executing job!"
}
$cred = Get-Credential "MyDomain\SomeUser"
# Remove previous versions (to allow re-running this script)
Get-ScheduledJob Test1 | Unregister-ScheduledJob
Get-ScheduledJob Test2 | Unregister-ScheduledJob
# Create two identical jobs, with different triggers
Register-ScheduledJob "Test1" -ScriptBlock $Action -Credential $cred -Trigger (New-JobTrigger -Weekly -At …Run Code Online (Sandbox Code Playgroud) powershell scheduled-task windows-server-2008-r2 powershell-v3.0
ActiveDirectory模块中的所有 PowerShell cmdlet 都支持使用-server参数针对特定域控制器运行;但是有什么方法可以设置默认 DC 以用于所有与 AD 相关的操作,或者我是否需要在每个命令上指定它,如果我真的关心我正在使用哪个 DC(在涉及复制延迟时很常见) )?
powershell ×10
windows ×3
email ×1
iis ×1
iis-7.5 ×1
powercli ×1
pxe-boot ×1
smtp ×1
virtualhost ×1
wmi ×1