כיצד לבדוק אתחול מחדש בהמתנה במחשב Windows

Kyzd Lbdwq Thwl Mhds Bhmtnh Bmhsb Windows



בדרך כלל, לאחר שמשתמש מתקין מנהל התקן, עדכון (תוכנה או מערכת) או תוכנה, או מבצע שינויים מסוימים בתצורה בלקוח או בשרת של Windows, המשתמש יתבקש לאתחל את המערכת. בפוסט זה נדריך אותך בשלבים כיצד לעשות זאת בדוק את ההמתנה מחדש במחשב Windows .



  כיצד לבדוק אתחול מחדש בהמתנה במחשב Windows





כיצד לבדוק אתחול מחדש בהמתנה במחשב Windows

עם השלמת משימות רבות של מערכת ההפעלה של Windows, לפעמים המחשב נאלץ לדרוש אתחול מחדש. תוך כדי כניסה ובהפעלה פעילה, תקבל הודעה על כך שאתחול מחדש ממתין או נדרש על ידי תיבת קופץ או הודעה כלשהי - שאותה תוכל לבטל או לקבל כדי להפעיל מחדש את Windows. אבל, במצבים מסוימים שבהם אינך רוצה או לא יכול לאתחל מיד את המחשב - לדוגמה, יש לך עבודה לא גמורה שאתה צריך להשלים לפני שאתה מתחיל מחדש, או שהרגע התקנת עדכונים על שרת ייצור והשרת הזה יכול לא יופעל מחדש מיד.





בתרחישים כמו זה, במיוחד כשזה נוגע לאחרון, אתה עלול לשכוח מהאתחול מחדש ובזמן מאוחר יותר להבין שיש לאתחל שרתים או מחשבי לקוח מסוימים, אך כעת אינך מסוגל לזהות אילו מהמכונות - במצב זה, אתה יכול לבדוק את ההמתנה מחדש במחשב Windows באמצעות א פגז כוח תַסרִיט.



כעת, כאשר ממתין לאתחול מחדש, Windows יוסיף כמה ערכי רישום או דגלים כדי לציין זאת במיקום הרישום הבא עם הערכים והתנאים המשויכים כפי שמוצג בטבלה למטה.

מַפְתֵחַ ערך מַצָב
HKLM:\SOFTWARE\Microsoft\Updates UpdateExeVolatile הערך הוא כל דבר אחר מאשר 0
HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager PendingFileRenameOperations ערך קיים
HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager PendingFileRenameOperations2 ערך קיים
HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired זֶה מפתח קיים
HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Services\Pending זֶה כל מפתחות משנה של GUID קיימים
HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\PostRebootReporting זֶה מפתח קיים
HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce DVDRebootSignal ערך קיים
HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending זֶה מפתח קיים
HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootInProgress זֶה מפתח קיים
HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\PackagesPending זֶה מפתח קיים
HKLM:\SOFTWARE\Microsoft\ServerManager\CurrentRebootAttempts זֶה מפתח קיים
HKLM:\SYSTEM\CurrentControlSet\Services\Netlogon JoinDomain ערך קיים
HKLM:\SYSTEM\CurrentControlSet\Services\Netlogon הימנע מ-SpnSet ערך קיים
HKLM:\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName שם המחשב ערך שם מחשב ב-HKLM:\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName שונה

מכיוון שזיהינו את נתיבי הרישום הרלוונטיים, במקום לסרוק באופן ידני את הרישום מכיוון שאתה עלול לשכוח לבדוק נתיב רישום אחד או פשוט לשכוח אילו מהם לבדוק, אתה יכול ליצור ולהפעיל סקריפט Check-PendingReboot.ps1 באמצעות הקוד שלהלן כדי להפוך את המשימה לאוטומטית לבדיקת כל מפתחות הרישום בטבלה למעלה.

  צור והרץ סקריפט PowerShell



[CmdletBinding()]
param(
[Parameter(Mandatory)]
[ValidateNotNullOrEmpty()]
[string[]]$ComputerName,
[Parameter()]
[ValidateNotNullOrEmpty()]
[pscredential]$Credential
)
$ErrorActionPreference = 'Stop'
$scriptBlock = {
$VerbosePreference = $using:VerbosePreference
function Test-RegistryKey {
[OutputType('bool')]
[CmdletBinding()]
param
(
[Parameter(Mandatory)]
[ValidateNotNullOrEmpty()]
[string]$Key
)
$ErrorActionPreference = 'Stop'
if (Get-Item -Path $Key -ErrorAction Ignore) {
$true
}
}
function Test-RegistryValue {
[OutputType('bool')]
[CmdletBinding()]
param
(
[Parameter(Mandatory)]
[ValidateNotNullOrEmpty()]
[string]$Key,
[Parameter(Mandatory)]
[ValidateNotNullOrEmpty()]
[string]$Value
)
$ErrorActionPreference = 'Stop'
if (Get-ItemProperty -Path $Key -Name $Value -ErrorAction Ignore) {
$true
}
}
function Test-RegistryValueNotNull {
[OutputType('bool')]
[CmdletBinding()]
param
(
[Parameter(Mandatory)]
[ValidateNotNullOrEmpty()]
[string]$Key,
[Parameter(Mandatory)]
[ValidateNotNullOrEmpty()]
[string]$Value
)
$ErrorActionPreference = 'Stop'
if (($regVal = Get-ItemProperty -Path $Key -Name $Value -ErrorAction Ignore) -and $regVal.($Value)) {
$true
}
}
# Added "test-path" to each test that did not leverage a custom function from above since
# an exception is thrown when Get-ItemProperty or Get-ChildItem are passed a nonexistant key path
$tests = @(
{ Test-RegistryKey -Key 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending' }
{ Test-RegistryKey -Key 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootInProgress' }
{ Test-RegistryKey -Key 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired' }
{ Test-RegistryKey -Key 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\PackagesPending' }
{ Test-RegistryKey -Key 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\PostRebootReporting' }
{ Test-RegistryValueNotNull -Key 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager' -Value 'PendingFileRenameOperations' }
{ Test-RegistryValueNotNull -Key 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager' -Value 'PendingFileRenameOperations2' }
{ 
# Added test to check first if key exists, using "ErrorAction ignore" will incorrectly return $true
'HKLM:\SOFTWARE\Microsoft\Updates' | Where-Object { test-path $_ -PathType Container } | ForEach-Object { 
(Get-ItemProperty -Path $_ -Name 'UpdateExeVolatile' | Select-Object -ExpandProperty UpdateExeVolatile) -ne 0 
}
}
{ Test-RegistryValue -Key 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce' -Value 'DVDRebootSignal' }
{ Test-RegistryKey -Key 'HKLM:\SOFTWARE\Microsoft\ServerManager\CurrentRebootAttemps' }
{ Test-RegistryValue -Key 'HKLM:\SYSTEM\CurrentControlSet\Services\Netlogon' -Value 'JoinDomain' }
{ Test-RegistryValue -Key 'HKLM:\SYSTEM\CurrentControlSet\Services\Netlogon' -Value 'AvoidSpnSet' }
{
# Added test to check first if keys exists, if not each group will return $Null
# May need to evaluate what it means if one or both of these keys do not exist
( 'HKLM:\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName' | Where-Object { test-path $_ } | %{ (Get-ItemProperty -Path $_ ).ComputerName } ) -ne 
( 'HKLM:\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName' | Where-Object { Test-Path $_ } | %{ (Get-ItemProperty -Path $_ ).ComputerName } )
}
{
# Added test to check first if key exists
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Services\Pending' | Where-Object { 
(Test-Path $_) -and (Get-ChildItem -Path $_) } | ForEach-Object { $true }
}
)
foreach ($test in $tests) {
Write-Verbose "Running scriptblock: [$($test.ToString())]"
if (& $test) {
$true
break
}
}
}
foreach ($computer in $ComputerName) {
try {
$connParams = @{
'ComputerName' = $computer
}
if ($PSBoundParameters.ContainsKey('Credential')) {
$connParams.Credential = $Credential
}
$output = @{
ComputerName = $computer
IsPendingReboot = $false
}
$psRemotingSession = New-PSSession @connParams
if (-not ($output.IsPendingReboot = Invoke-Command -Session $psRemotingSession -ScriptBlock $scriptBlock)) {
$output.IsPendingReboot = $false
}
[pscustomobject]$output
} catch {
Write-Error -Message $_.Exception.Message
} finally {
if (Get-Variable -Name 'psRemotingSession' -ErrorAction Ignore) {
$psRemotingSession | Remove-PSSession
}
}
}

אתה יכול לספק שרתים רבים ככל שתרצה דרך שם המחשב פרמטר בסקריפט שיחזור נָכוֹן אוֹ שֶׁקֶר יחד עם שם השרת. אתה יכול להפעיל את הסקריפט בדומה להלן ולוודא PowerShell Remote מוגדר וזמין בשרתים שלך.

PS51> .\Test-PendingReboot.ps1 -Server SRV1,SRV2,SRV3,etc

לקרוא : כיצד לתזמן סקריפט PowerShell ב-Task Scheduler

על ידי שימוש בסקריפט PowerShell, אתה יכול לבצע שאילתות על אחד או כל המחשבים בדומיין או לספק באופן ידני את שמות השרתים כדי לקבוע את המכונות בהמתנה לאתחול מחדש. לאחר זיהוי, תוכל לאתחל את המכונות מיד או ליצור רשימה לאתחול מאוחר יותר.

עכשיו תקרא : כיצד להפעיל מחדש את מחשב Windows באמצעות PowerShell

מה המשמעות של אתחול מחדש של Windows בהמתנה?

בדרך כלל, בקשת אתחול מחדש ממתינה מתרחשת כאשר תוכנית או התקנה מבצעים שינוי בקבצים, מפתחות רישום, שירותים או הגדרות מערכת ההפעלה העלולים להשאיר את המערכת במצב חולף. במקרה שאתה מקבל את זוהה אתחול מחדש בהמתנה הודעה, זה פשוט מציין שעדכונים ממתינים במחשב ויש לבצע אתחול מחדש לפני שניתן יהיה להתקין עדכונים נוספים.

לקרוא :

  • כיצד להשבית או להפעיל את הודעת ההפעלה מחדש של עדכון
  • Windows Update בהמתנה להתקנה או הורדה, אתחול וכו'

כיצד לבדוק אתחולים בהמתנה ברישום?

אתה יכול לעשות זאת על ידי חיפוש ברישום של Windows בשביל ה דרוש הפעלה מחדש מַפְתֵחַ. בטבלה למעלה בפוסט זה, זיהינו את מיקום הרישום הרלוונטי למפתחות הרישום הממתינים לאתחול מחדש. אם ברצונך להציג הודעה כאשר המחשב שלך דורש הפעלה מחדש כדי להשלים התקנת עדכון Windows, לחץ על הַתחָלָה > הגדרות > עדכון ואבטחה > עדכוני Windows > אפשרויות מתקדמות . העבר את הלחצן למצב מופעל או כבוי עבור הצג הודעה כאשר המחשב שלך דורש הפעלה מחדש כדי לסיים את העדכון אוֹפְּצִיָה.

קרא גם : קיים תיקון מערכת בהמתנה הדורש אתחול כדי להשלים .

רשום פופולרי