Windows 11 PowerShell 사용 재부팅 대기 중인 컴퓨터 찾는 방법

이 가이드는 Windows 11 PowerShell 사용 재부팅 대기 중인 컴퓨터 찾는 방법에 대해 설명합니다.

Windows에서 특정 패치나 보안 업데이트를 설치한 후에는 변경 사항을 적용하기 위해서 시스템을 다시 시작해야 할 수도 있습니다.

Windows 업데이트 다시 시작해야 함
<Windows 업데이트 – 다시 시작해야 함>

그러나 시스템을 다시 시작하는 작업을 계속 미루거나 업데이트 후 자동으로 다시 시작하는 옵션이 비활성화 되어 있는 경우, 설치는 되었지만 적용되지 않은 업데이트가 대기 상태로 남아 있을 수 있습니다.

대규모 기업 환경에서는 수십 대의 컴퓨터가 몇 주 동안 시스템이 다시 시작되길 기다리는 상태로 남아 있어 운영에 상당한 지장을 초래하는 경우가 많습니다.

Windows 11에서 PowerShell 사용 재부팅 대기 중인 컴퓨터 찾기

Windows 업데이트 설치 후 시스템 다시 시작이 필요한 네트워크 상의 컴퓨터를 찾는 방법은 다음과 같습니다.

01 PendingReboot 모듈 설치

PowerShell 갤러리(PowerShell 콘텐츠의 중앙 리포지토리)에서 PendingReboot 모듈을 사용하면 컴퓨터의 재시작 대기 상태를 확인할 수 있습니다.

재부팅 대기 상태 확인을 위해 PowerShell PendingReboot 모듈 설치

키보드 단축키 Win + R 키를 눌러 실행 대화 상자를 열고 wt 입력 후 Ctrl + Shift + Enter 키를 눌러 관리자 권한으로 터미널을 실행합니다.

다음 명령을 입력하고 Enter 키를 눌러 PendingReboot 모듈을 설치합니다.

Install-Module -Name PendingReboot

02 PowerShell 사용 재부팅 대기 상태 확인

Windows 11에서 재부팅 대기 상태를 확인하려면 다음 단계를 수행합니다.

STEP 01. 로컬에서 재부팅 대기 상태 확인

Test-PendingReboot 명령으로 재부팅 대기 상태 확인

다음 명령을 입력하고 Enter 키를 눌러 시스템을 다시 시작해야 하는지 확인합니다.

Test-PendingReboot
Test-PendingReboot -Detailed 명령으로 재부팅 대기 상태 상세 확인

다음 명령을 입력하고 Enter 키를 누르면 재부팅 이유를 포함한 추가 정보를 함께 확인할 수 있습니다.

Test-PendingReboot -Detailed

STEP 02. 원격 컴퓨터 재부팅 대기 상태 확인

Invoke-Command 명령으로 원격 컴퓨터에 대한 재부팅 대기 상태 확인

원격 컴퓨터에서 재부팅이 필요한지 확인하려면 Invoke-Command 명령을 사용할 수 있습니다.

다만 원격으로 확인하기 위해서는 PowerShell 원 기능 활성화 및 구성되어 있어야 합니다.

다음 명령을 입력하고 Enter 키를 누르면 원격 컴퓨터의 재부팅 대기 상태를 확인할 수 있습니다.

Invoke-Command -ComputerName IP_ADDRESS -ScriptBlock {Test-PendingReboot}

03 PendingReboot 모듈 없이 재부팅 대기 상태 확인

PowerShell PendingReboot 추가 모듈을 설치하지 않으려면 레지스트리에서 재부팅 대기 상태를 확인할 수 있습니다.

STEP 01. PowerShell에서 보류 중인 재부팅 항목 확인

PendingReboot 모듈 설치 없이 레지스트리 키에서 재부팅 대기 상태 확인

키보드 단축키 Win + R 키를 눌러 실행 대화 상자를 열고 wt 입력 후 Ctrl + Shift + Enter 키를 눌러 관리자 권한으로 터미널을 실행합니다.

다음 명령을 입력하고 Enter 키를 눌러 보류 중인 재부팅 항목을 확인할 수 있습니다.

Get-Item 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired' -ErrorAction SilentlyContinue

STEP 02. 레지스트리 편집기에서 보류 중인 재부팅 항목 확인

다음 레지스트리 키에 항목이 있으면 시스템은 재부팅이 필요한 상태입니다.

  • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending
  • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired
  • HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations
  • HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations2
레지스트리 편집기에서 확인

키보드 단축키 Win + R 키를 눌러 실행 대화 상자를 열고 regedit 입력 후 Enter 키를 눌러 레지스트리 편집기를 실행합니다.

레지스트리 편집기에서 다음 경로로 이동합니다.

HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired

“RebootRequired” 키에서 해당 매개변수가 있으면 시스템은 재부팅이 필요합니다.

STEP 03. 레지스트리 키에서 매개변수 확인 PowerShell 함수 사용

레지스트리 키 조회 함수 사용

다음 명령을 복사하여 붙여넣고 결과를 확인합니다.

function Get-PendingReboot {
param([string[]]$ComputerName = "localhost")
foreach ($Computer in $ComputerName) {
$HKLM = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $Computer)
$CBS = $HKLM.OpenSubKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending')
$WU = $HKLM.OpenSubKey('SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired')
$SM = $HKLM.OpenSubKey('SYSTEM\CurrentControlSet\Control\Session Manager')
$Rename = $SM.GetValue('PendingFileRenameOperations')
$Rename2 = $SM.GetValue('PendingFileRenameOperations2')
[PSCustomObject]@{
Computer = $Computer
RebootNeeded = [bool]($CBS -or $WU -or $Rename -or $Rename2)
}
}
}

이 기능을 사용하면 로컬 컴퓨터에 재부팅이 필요한지 확인할 수 있습니다.

여러 원격 컴퓨터의 재부팅 대기 상태 확인

다음 명령을 사용하여 여러 원격 컴퓨터의 재부팅 대기 상태를 한 번에 확인할 수도 있습니다.

Get-PendingReboot "Computer_01","Computer_02","Computer_03"

마치며

Windows 환경에서 PendingReboot 모듈을 사용하거나, 레지스트리 키를 확인하면 시스템이 재부팅이 필요한지 여부를 손쉽게 확인할 수 있습니다.

예를 들어 업데이트 설치, 도메인 가입 또는 역할 및 기능 설치나 제거 등으로 시스템을 다시 시작해야 할 상태에 있는 컴퓨터를 쉽게 확인하여 조치할 수 있습니다.

이는 단일 시스템 뿐만 아니라 여러 대의 컴퓨터를 운영하는 환경에서도 유용하게 활용될 수 있습니다.

특히 PowerShell 스크립트로 자동화하면 주기적인 점검을 통해 업데이트 이후 발생할 수 있는 문제를 사전에 예방할 수도 있습니다.

Leave a Comment