我在尝试获取一个非常基本的脚本来重新启动我的 Windows 2019 Server 时遇到了很大的困难。我以域和本地管理员(在管理员组中)的身份登录。
当我运行这个基本的 PowerShell 命令时:Restart-Computer -Force
它给出了一个错误: restart-computer :无法重新启动计算机 myComputer,并显示以下错误消息:未保留权限。 。 在行:1 字符:1
+ CategoryInfo : OperationStopped: (myComputer:String) [Restart-Computer], InvalidOperationException
+ FullyQualifiedErrorId : RestartcomputerFailed,Microsoft.PowerShell.Commands.RestartComputerCommand
有关此错误的 Microsoft 文章此处
表示下载适用于您的操作系统的更新。但它在 Windows 2016 上结束,并表示将自动下载并随 Windows 更新一起安装。检查更新,说我是最新的。我试图找到特定的 2016 更新 KB4034674,以防万一它可以修复它,但更新已不再出现在更新目录中。
我尝试了这篇 stackoverflow 文章这里
我将密码存储在password.bin 文件中,并检索了它,但它又回到了上面的“权限未保留”错误。
# Capture encrypted password once and store to file
$passwd = Read-Host "Enter password" -AsSecureString
$encpwd = ConvertFrom-SecureString $passwd
$encpwd > C:\Scripts\password.bin
# Afterwards always use this to start the script
$encpwd = Get-Content C:\Scripts\password.bin
$passwd = ConvertTo-SecureString $encpwd
$cred = new-object System.Management.Automation.PSCredential 'corp\myadmin',$passwd
Start-Process PowerShell -Cred $cred -ArgumentList "-noexit","-file C:\Scripts\Reboot.ps1"
如果我以“以管理员身份运行”运行 powershell ISE,它就可以工作。 但是,我需要它自己运行
我还尝试了 Windows 批处理文件和命令,例如 c:\windows\system32\shutdown.exe /r),除非“以管理员身份运行”,否则它们也不起作用
更糟糕的是,任务计划程序在此服务器上不起作用。它以某种方式被冲洗掉了。我正在使用 Task Till Dawn 并尝试使用其内置的重新启动并尝试使用它运行 powershell 脚本,但它也不起作用。
有人知道如何自动重启 Windows 2019 Server 吗?这有点可笑
您需要以管理员身份运行该命令,没有办法解决这个问题。无论您使用的是 Powershell、ISE 还是 cmd.exe,只需启动应用程序就会在普通用户上下文中启动它(无论您是否以管理员身份登录计算机)。要执行任何需要管理员权限的命令,您需要提升您正在使用的任何内容,通过 UAC,只有这样 Powershell 才能以管理员身份运行。
通常我建议最简单的选择(如果您尝试自动化该过程)是使用任务计划程序,因为您可以明确地告诉它以管理员身份运行,但正如您所说,这不是一个选项。
我认为任务直到黎明也没有选项来告诉任务被提升?尝试看一下,但似乎没有很多文档列出所有可用选项。
您到底想要实现什么目标?这是一个常规的事情,还是只是在某个时间偶尔重新启动(例如,您希望稍后重新启动,但又不想亲自去那里执行此操作)?如果是后者,您可以使用
shutdown /r /t nnn
在特定秒数(可能是几个小时后)后重新启动。