我们从单独的Windows 2008 R2服务器pipe理Exchange 2010,并最近将pipe理计算机升级到Windows 2012 R2。 EMC的工作正常,但我在壳上有限。 一旦它远程CAS服务器,它下降到PS版本2(按预期),但我不能再导入ActiveDirectory模块2012年的盒子,因为它需要版本3.这是坏的,因为我有几个脚本,使用AD作为以及Exchange模块。 是否可以/支持在Windows 2012上安装旧版本的RSAT? 或者至less得到旧的ActiveDirectory模块? 我知道这听起来像一个简单的问题,谷歌会回答,但我没有find它。 以为我会看到你们知道的:-) 编辑: 错误信息是在底部,但我相信这是没有帮助的。 问题似乎是模块想要版本3.如果我在本地运行PowerShell,它会成功导入。 只有当我远程进入交换服务器(并且下降到版本2)时,它才拒绝加载。 PS C:\> cat (Get-Module -Name ActiveDirectory).Path | select -First 10 @{ GUID="{43c15630-959c-49e4-a977-758c5cc93408}" Author="Microsoft Corporation" CompanyName="Microsoft Corporation" ModuleVersion="1.0.0.0" PowerShellVersion="3.0" CLRVersion="4.0" Copyright="© Microsoft Corporation. All rights reserved." NestedModules="Microsoft.ActiveDirectory.Management" RequiredAssemblies="Microsoft.ActiveDirectory.Management" 错误: [PS] C:\>Import-Module ActiveDirectory Import-Module : The 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\ActiveDirectory\ActiveDirectory.psd1' module cannot be […]
我试图从我的机器“A”login到Windows 2008服务器“C”。 在“B”之间有一台机器,用作运行Windows Server 2008的跳转箱,并运行“支持SSH的PowerShell PowerShell Access for Windows(powershellserver.com)” 我正在从机器“A”对机器B执行ssh。 从机器BI能够创buildPS机器到C机,但无法进入会话,下面是我所看到的错误。 PS C:\Users\Documents> New-PsSession -Credential $mycreds -Computername xxxx Id Name ComputerName State ConfigurationName Availability — —- ———— —– —————– ———— 228 Session228 xxxx Opened Microsoft.PowerShell Available PS C:\Users\Documents> Get-PSSession | Remove-PSSession PS C:\Users\Documents> $session = New-PsSession -Credential $mycreds -Computername xxxx PS C:\Users\Documents> enter-pssession $session enter-pssession […]
我有一个Windows Server 2008 R2configuration为从大量的客户端(Windows 7 \ 8.1)接收转发的事件。 它从WLAN-Autoconfig源接收事件ID范围为8000-8006的事件(服务器没有源,但可将其添加到订阅以便能够从该源接收)。 该服务器安装了美国英语,并具有挪威语区\文化。 客户安装NB-no挪威和挪威语区\文化。 我遇到的第一个问题是服务器无法正确读取事件。 它给了这个错误: 无法find来自Microsoft-Windows-WLAN-AutoConfig的事件ID 8000的说明。 引发此事件的组件未在本地计算机上安装,或者安装已损坏。 您可以在本地计算机上安装或修复组件。 如果事件发生在另一台计算机上,显示信息必须与事件一起保存。 这不是一个大问题,因为事件对象和内容仍然到达,可以用于收集的目的。 但后来,当试图编写一个Powershell脚本来获取和过滤这些事件时,我遇到了一些问题。 首先我试过这个方法: Get-WinEvent -ComputerName $ServerName -FilterHashtable @{logname = 'ForwardedEvents'; id = 8000, 8001, 8002, 8003; StartTime = $StartDate; EndTime = $EndDate } -MaxEvents 3 但是这个查询没有返回任何值。 从filter中删除“StartTime”和“EndTime”使其工作出于某种原因。 深信“-FilterHashTable”选项不起作用我尝试使用“-FilterXML”选项,但要做到这一点,我不得不在事件日志中创buildfilter来查找语法。 我login到服务器,打开事件查看器,并使用以下选项从ForwardedEvents日志创build自定义视图: 日志= ForwardedEvents ID = 8000-8003 StartTime = SomeDate EndTime […]
我有一个csv文件,其中包含10个不同的网站configuration。 我已经创build了下面的脚本来自动创build它们。 当我testing脚本,它运行成功,但我想知道这是否是自动化网站创build的最佳devise。 我使用循环和if / else语句是否正确? 我希望有人可以审查,让我知道,如果这个脚本看起来不错。 我也想知道是否有办法在不同的虚拟目录上设置不同的权限? 例如,如果我有一个用于上传和下载的文件夹,有没有办法通过PowerShell脚本来为该虚拟目录设置读/写权限? 谢谢! #populate array object with contents from webservers.csv file $webObjects = Import-Csv c:\\iis\webservers.csv ForEach ($obj in $webObjects) { $name = $obj.WebSiteName $path = $obj.Path $vPath = $obj.VirtualDirectory $appPool = $obj.AppPoolName $appPoolId = $obj.appPoolIdentity $dotNetVersion = $obj.DotNetVersion $port = $obj.Port #new website path if ( ! (Test-Path […]
我试图找出这个问题:当用户断开办公室1中他/她的RDS(在Windows Server 2012 R2)会话并在Office 2中重新连接时,仍然映射与Office 1相关的所有打印机。 第一个想法是使用任务计划程序在触发“会话重新连接”时运行powershell脚本,该脚本查看“clientname”variables,并在重新连接后将所有相关打印机添加到该位置。 问题在于: 使脚本在刚刚重新连接的特定用户的上下文中运行,而不是在某些pipe理上下文中(尝试通过以“组DOMAIN \ Users”运行来解决此问题,但似乎不按需要工作) PS脚本通过任务计划程序运行时,“客户端名称”环境variables不可用。 它似乎是唯一的变数缺失,但是,足够糟糕,那正是我需要在这里的那个! 所以,我要么正在寻找一种方式如何正确地解决脚本问题,或者更好的是,当用户重新连接来自不同位置的terminal服务器会话时,如何处理打印机映射已知最佳实践? 将文件显示在远处的办公室/地点是没有多大意义的;-) 非常感谢。
我有2个模板1个Windows 2008 R2 1个Windows 2012 R2 我有sysprep'ed模板,Generalize /closures等,等等 在这两个模板上,我有以下post-sysprep脚本,应该运行在从任一模板调配的新主机上运行 C:\ WINDOWS \ SETUP \脚本\ setupcommand.cmd 内容: @powershell -NoProfile -ExecutionPolicy unrestricted -Command“iex((new-object net.webclient).DownloadString(' http://repo.myserver.com/chef/winbuild/winconfig.ps1 '))” 此脚本适用于Windows 2008 R2模板 任何人都可以回答为什么这个脚本甚至没有运行我的Windows 2012 R2模板? 在你问之前,脚本是一个复杂的脚本(在Win2k8R2模板上工作),所以我删除了它,并创build了一个简单的创build文件,以查看脚本是否正在运行 像之前在Windows 2008 R2上工作,但不是Windows 2012 R2 我查看了sysprep错误日志,但这是在sysprep之后,所以我看不到任何错误。 我添加了error handling到我简单的创build文件脚本,甚至没有创build错误文件,更不用说输出任何错误,所以我知道它没有运行。 这是奇怪的事情,如果我运行setupcommand.cmd,一旦login,它运行得很好,如果我在ISE中运行它,它运行得很好,只是不运行post-sysprep。 我也注意到,当图像旋转时,“准备好设备”需要很长时间,这可能与它有关 任何build议将是伟大的
我无法通过下面的脚本连接到域控制器。 此脚本正在为另一个域控制器工作,所以它意味着脚本是正确的。 当我连接时,我得到一个错误: enter-pssession : Connecting to remote server "COMPUTER Name" failed with the following error message : The user name or password is incorrect. For more information, see the about_Remote_Troubleshooting Help topic. 我100%确定我的凭据是正确的,如果我手动键入,我可以连接(PSsession)到域。 脚本 – $password = ConvertTo-SecureString "<MyPassword>" -AsPlainText -Force $cred= New-Object System.Management.Automation.PSCredential ("<Domain\UserName>", $password) Enter-PSSession -ComputerName <IPAddress> -Port <PortNumber> -Credential $cred WinRM服务正在工作。 […]
我正在configuration一个新的networking,我需要启用Powershell远程处理。 我在Active Directory域中,所有客户端都连接到域。 我能够成功地运行远程命令(Get-Process -Computername A1P1),但是我不能做一对一的远程处理(new-pssession -cn A1P1) 我已采取的步骤: winrm quickconfig 启用,PSRemoting GPOconfiguration远程处理 启用RemoteRegistry 在pipe理站和客户端上将TrustedHosts设置为* winrm服务正在运行,端口已打开。 有小费吗? 编辑:我只是意识到我曾经能够远程连接到我的服务器,但我现在不能。 这是errorId: WinRMOperationTimeout,PSSessionOpenFailed 编辑2:这是一个GPO的问题,我试图禁用它和gpupdating和侦听器现在工作正常(后启用PSRemoting)。 现在我需要find导致问题的设置…
假设是我在一个具有pipe理员权限的DC上。 我想添加一个即时的任务到GPO在工作站上运行一个.exe,但是我想在没有GUI的情况下安静地执行它。 有没有办法做到这一点progrematically? 还是在Powershell?
目前我在交换服务器上工作很多,并希望确保没有build立在它们之上的背压。 知道我有一个PowerShell脚本每4小时运行检查事件日志: $username = "Administrator" $password = cat C:\securestring.txt | convertto-securestring $cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password $server = "hubextserver" $body = @() #Event ID 15004: Increase in the utilization level for any resource (eg from Normal to Medium) $15004 = Get-EventLog -ComputerName $server -LogName Application -After (Get-Date).AddDays(-1) | where {$_.EventID -eq "15004"} […]