powershell - 运行“Uninstall-ADDSDomainController”并重新启动后如何运行 Powershell 代码
问题描述
我有一个有趣的挑战,我正在尝试对服务器进行更改,以将其从本地安装的 AD 服务器中删除,并将其重新添加到外部托管的域控制器中。这个过程的第一步是卸载AD角色,这个过程需要我重新启动系统才能继续。理想情况下,我希望有一系列脚本可以为我执行整个操作。为此,我将“Uninstall-ADDSDomainController”命令与“Register-ScheduledTask”结合起来。类似于以下内容:
Register-ScheduledTask `
-TaskName "Test_Job" `
-RunLevel Highest `
-User ("\Administrator") -Password $DefaultPassword `
-Trigger (New-ScheduledTaskTrigger -Once -At ((Get-Date).AddMinutes(3))) `
-TaskPath "\Microsoft\Windows\PowerShell\ScheduledJobs\" `
-Action (New-ScheduledTaskAction -Execute "Powershell" -Argument ("-Command & '" + $DefaultPath + "Test.ps1' `"1`" `"" + $DefaultUsername + "`" `"" + $DefaultPassword + "`""))
$SecurePassword = ConvertTo-SecureString $DefaultPassword -AsPlainText -Force
Uninstall-ADDSDomainController -ForceRemoval -LocalAdministratorPassword $SecurePassword -SkipPreChecks -Force -DemoteOperationMasterRole
然而,这似乎无法正常工作。“Uninstall-ADDSDomainController”运行并重新启动系统,但登录后,“Test”中的代码没有运行,如果再次运行脚本并重新启动,它将正常工作。我相信正在发生的事情是,从 AD 服务中删除服务器后,凭据不再有效。如果您在 Windows 中检查计划任务,您实际上可以看到它的影响:
但是,在从本地安装的 AD 角色中删除服务器后,我不知道哪些凭据是有效的。
非常简单地说,我想要实现的是:我想在“Uninstall-ADDSDomainController”完成并重新启动系统后运行一个 powershell 脚本。这可能吗?如果可以,怎么做?
解决方案
推荐阅读
- node.js - URL 不会随 res.render() 改变
- bash - bash将mp3文件与文件名中的空格结合起来
- php - 如何检查用户是否登录 opencart 版本 3.x
- css - 我会因为我的网站看起来与 Google 新闻非常相似而陷入(法律)麻烦吗?
- c++ - 已解决 - 文件未写入文件夹
- php - laravel - 从 linux 文件夹上传目录路径
- json - 使用 torchtext 加载 json 文件
- http - 使用浏览器缓存的跨站点攻击(会起作用吗?)
- javascript - 如何从 React js 中的元素获取价值?
- css - 用 css 做一个更大的 antd transfer