# Windows Modules Installer Worker CPU 높음: 기다릴까 고칠까

Windows Modules Installer Worker의 CPU 사용량이 높다면 대개 Windows가 업데이트를 설치하거나 정리하는 중입니다. `TiWorker.exe`는 Windows Modules Installer 서비스(서비스 이름 `TrustedInstaller`)가 시작하는 작업자 프로세스로, 업데이트와 선택적 기능을 추가하고 변경하고 제거하는 일을 맡습니다. 이 작업은 Patch Tuesday, 기능 업데이트, 새 선택적 기능을 추가한 뒤 한동안 CPU와 디스크를 많이 씁니다. 대부분은 PC를 전원에 연결해 둔 채 끝날 때까지 기다리고, Windows가 요청할 때 다시 시작하면 됩니다.

같은 활동이 다시 시작할 때마다 돌아오거나, Windows 업데이트가 몇 시간째 진행되지 않거나, 업데이트가 계속 실패할 때만 문제가 됩니다. 그때 고쳐야 할 것은 작업자 프로세스가 읽는 구성 요소 저장소이지, 프로세스를 멈추는 것이 아닙니다. 아래에서 두 경우를 어떻게 구분하는지, 무엇을 실행해야 하는지 Microsoft가 안내하는 순서대로 살펴봅니다.

## TiWorker.exe와 TrustedInstaller는 무엇인가

Microsoft의 [서비스 참조 문서](https://learn.microsoft.com/en-us/windows-server/security/windows-services/security-guidelines-for-disabling-system-services-in-windows-server)는 Windows Modules Installer의 서비스 이름을 `TrustedInstaller`로 소개하고, 이 서비스가 "enables installation, modification, and removal of Windows updates and optional components", 즉 Windows 업데이트와 선택적 구성 요소의 설치, 수정, 제거를 가능하게 한다고 설명합니다. 시작 유형이 수동이라 평소에는 대부분 실행되지 않고, 서비스 작업이 있을 때만 나타납니다. 작업 관리자의 프로세스 탭에서는 Windows Modules Installer Worker로, 세부 정보 탭에서는 파일 이름 `TiWorker.exe`로 보입니다.

이 작업자 프로세스는 서비스 스택의 일부입니다. Microsoft의 [서비스 스택 페이지](https://learn.microsoft.com/en-us/windows/deployment/update/servicing-stack-updates)는 서비스 스택을 "the component that installs Windows updates"로 설명하는데, 이는 CBS(구성 요소 기반 서비스) 위에 만들어져 있고 DISM, 시스템 파일 검사기, Windows 기능 켜기/끄기, 구성 요소 복구도 그 위에서 동작합니다. 그래서 겉으로는 서로 관계없어 보이는 여러 이유로 같은 프로세스가 바빠질 수 있습니다. 월별 업데이트일 수도, 방금 추가한 기능일 수도, Windows가 오래된 구성 요소 버전을 정리하는 중일 수도 있습니다.

## 사용량이 치솟는 시점

| 원인 | 발생 시점 | 보이는 모습 |
| --- | --- | --- |
| 월별 보안 업데이트 | 매월 둘째 화요일 | 다운로드 후 긴 설치 단계와 다시 시작 |
| 선택적 미리 보기 업데이트 | 매월 넷째 주, 직접 설치를 선택한 경우에만 | 같은 흐름, 해당 사용자는 더 적음 |
| 연간 기능 업데이트 | 1년에 한 번, 하반기 | 가장 오래 걸리고, 여러 번의 다시 시작에 걸치는 경우가 많음 |
| 선택적 기능 추가 | 설정에서 추가를 누른 직후 | 다운로드가 끝나자마자 작업자 프로세스가 시작 |
| 구성 요소 정리 | PC가 유휴 상태일 때 | 자리를 비운 사이 활동하고, 돌아와도 아직 실행 중일 때가 있음 |

날짜는 Microsoft의 [릴리스 주기 페이지](https://learn.microsoft.com/en-us/windows/deployment/update/release-cycle)를 따른 것입니다. 월별 보안 업데이트는 Patch Tuesday 또는 Update Tuesday라고도 하며, 매월 둘째 화요일 보통 태평양 시간 오전 10시에 게시됩니다. 누적 업데이트이므로 각 업데이트에 이전의 모든 수정 사항이 들어 있습니다. 2021년 2월부터는 서비스 스택 업데이트가 이 누적 업데이트에 합쳐져서, 설치할 패키지가 두 개가 아니라 하나로 묶여 있습니다.

선택적 기능도 같은 경로를 거칩니다. Microsoft의 [선택적 기능 가이드](https://learn.microsoft.com/en-us/windows/client-management/client-tools/add-remove-hide-features)에 따르면 기능을 추가할 때 Windows 업데이트를 사용하며, 콘텐츠를 다운로드하려면 장치가 온라인이어야 합니다. 그래서 설정 › 시스템 › 선택적 기능에서 무언가를 추가하거나 Windows 기능 켜기/끄기에서 기능을 켜면, 대기 중인 업데이트가 없어도 작업자 프로세스가 시작됩니다.

유휴 시간의 사용량 급증은 대개 구성 요소 정리입니다. Microsoft의 [WinSxS 정리 페이지](https://learn.microsoft.com/en-us/windows-hardware/manufacture/desktop/clean-up-the-winsxs-folder)는 StartComponentCleanup 작업이 시스템을 사용하지 않을 때 구성 요소를 정리하고, 업데이트된 구성 요소가 설치된 뒤 최소 30일을 기다렸다가 이전 버전을 제거하며, 제한 시간이 1시간이라고 설명합니다. 작업 스케줄러의 작업 스케줄러 라이브러리 › Microsoft › Windows › Servicing에서 확인할 수 있습니다. Microsoft는 구성 요소 정리를 사용하지 않도록 설정하지 말 것을 강력히 권장합니다. 실제로 신경 쓰이는 것이 이 작업으로 확보되는 디스크 공간이라면, [WinSxS 폴더 정리](/ko/windows/blog/winsxs-folder-cleanup-windows)에서 DISM 스위치와 `/ResetBase`로 무엇을 포기하게 되는지 다룹니다.

## 진행 중인지 멈췄는지 구분하기

문제가 있다고 판단하기 전에 세 가지를 확인하세요.

1. **Windows 업데이트 자체.** 설정 › Windows 업데이트를 엽니다. 움직이는 백분율, 대기 중인 다시 시작, 아무것도 표시되지 않은 "업데이트 확인" 중 무엇이 보이는지에 따라 지금 어느 단계인지 알 수 있습니다. Microsoft의 [Windows 업데이트 FAQ](https://support.microsoft.com/en-us/windows/windows-update-faq-8a903416-6f45-0718-f5c7-375e92dddeb2)에 따르면 설정 › Windows 업데이트 › 업데이트 기록에서 설치된 항목과 실패한 항목을 볼 수 있습니다.
2. **몇 분 동안 작업 관리자 보기.** `Ctrl + Shift + Esc`를 누르고 CPU로 정렬한 다음 디스크로 정렬합니다. CPU와 디스크를 번갈아 쓰다가 사라지는 작업자 프로세스는 제 일을 하고 있는 것입니다. 최고치보다 지속 시간을 보세요. 업데이트 후 몇 분에서 한 시간까지는 정상이고, 기능 업데이트는 더 오래 걸립니다.
3. **안정성 모니터.** `perfmon /rel`을 실행합니다([Microsoft의 `perfmon` 참조 문서](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/perfmon)에 이 스위치가 나와 있습니다). 여러 날 연속으로 업데이트 설치가 실패했다면 긴 작업이 아니라 반복 루프라는 가장 분명한 신호입니다.

자세한 내용을 보고 싶다면 서비스 로그가 `%windir%\Logs\CBS\CBS.log`에 있습니다. 크기가 크고 작업자 프로세스가 실행되는 동안 기록되므로, 편집하거나 삭제하지 말고 읽기만 하세요. 로그의 마지막 줄이 계속 바뀐다면 설정의 백분율이 아직 움직이지 않았더라도 작업은 진행 중입니다.

배터리로 동작하는 노트북은 한 가지 짚어 둘 점이 있습니다. FAQ는 노트북과 태블릿을 사용하지 않을 때도 전원에 연결해 두어, 사용 시간 외에 설치가 진행될 때 끝까지 마칠 전력이 있도록 권장합니다. [업데이트 문제 해결 문서](https://support.microsoft.com/en-us/windows/troubleshoot-problems-updating-windows-188c2b0f-10a7-d72f-65b8-32d177eb136c)도 전원과 인터넷 연결을 첫 번째 확인 항목으로 꼽습니다. 배터리 상태에서 설치가 계속 멈추면 멈춘 것처럼 보이지만, 실제로는 필요한 시간을 얻지 못하는 작업입니다.

## 정말로 멈췄을 때

순서대로 진행하고, 해결되는 단계에서 멈추세요.

**전원을 연결하고 한 번 기다리기.** PC를 AC 전원과 인터넷에 연결한 채로 두고, 닫을 수 있는 것은 닫은 뒤 절전 없이 한 시간을 줍니다. "멈췄다"는 보고의 상당수는 덮개를 닫아서 두 번 중단된 누적 업데이트입니다.

**한 번 다시 시작하기.** Microsoft의 문제 해결 문서는 다른 앱이 업데이트를 막지 않도록 다시 시작할 것을 권합니다. 표시된다면 시작 › 전원 › 업데이트 및 다시 시작을 사용하고, 그런 다음 설정 › Windows 업데이트를 다시 확인합니다. 다시 시작은 한 번만 하고, 설치 도중에 여러 번 반복하지 마세요.

**Windows 업데이트 문제 해결사 실행하기.** Windows 11에서는 같은 문서가 먼저 도움말 앱의 자동 문제 해결사를 안내합니다. 직접 하려면 설정 › 시스템 › 문제 해결 › 기타 문제 해결사로 가서 Windows 업데이트 옆의 실행을 누릅니다. Windows 10에서는 설정 › 업데이트 및 보안 › 문제 해결 › 추가 문제 해결사 › Windows 업데이트입니다. 문서에는 64비트 업그레이드에 최소 20 GB의 여유 공간이 필요하다는 내용도 있으니, 다시 시도하기 전에 C 드라이브에 공간이 있는지 확인하세요.

**다운로드가 계속 실패할 때만 다운로드 캐시 보기.** `C:\Windows\SoftwareDistribution\Download`를 비우는 것은 손상된 다운로드를 위한 해결책이지 바쁜 작업자 프로세스를 위한 것이 아니며, 업데이트 설치 중에는 안전하지 않습니다. [Windows 업데이트 파일 삭제](/ko/windows/blog/delete-windows-update-files)에서 언제 해당하는지, 먼저 서비스를 중지하는 방법을 설명합니다.

## 구성 요소 저장소 복구: DISM 다음에 SFC

업데이트가 반복해서 실패하고 작업자 프로세스가 같은 작업으로 계속 돌아온다면, 설치에 쓰는 파일이 손상되었을 수 있습니다. Microsoft의 [시스템 파일 검사기 문서](https://support.microsoft.com/en-us/topic/use-the-system-file-checker-tool-to-repair-missing-or-corrupted-system-files-79aa86cb-ca52-166a-92a3-966e85d4094e)는 순서를 분명히 밝힙니다. 시스템 파일 검사기보다 DISM을 먼저 실행합니다. 관리자 권한으로 명령 프롬프트를 열고 다음을 실행합니다.

```cmd
DISM.exe /Online /Cleanup-image /Restorehealth
sfc /scannow
```

DISM은 교체 파일의 원본으로 Windows 업데이트를 사용하므로 온라인 상태를 유지하세요. 문서에 따르면 몇 분 걸릴 수 있고, 연결이 느리면 더 걸립니다. 이어서 `sfc /scannow`가 복구된 저장소를 기준으로 보호된 시스템 파일을 검사합니다. 복구가 필요한지부터 알고 싶다면, Microsoft의 [이미지 복구 가이드](https://learn.microsoft.com/en-us/windows-hardware/manufacture/desktop/repair-a-windows-image)가 이미지를 정상, 복구 가능, 복구 불가능으로 알려 주는 `/CheckHealth`와, 몇 분 걸리는 더 긴 검사인 `/ScanHealth`를 설명합니다.

```cmd
Dism /Online /Cleanup-Image /CheckHealth
```

SFC도 결과를 같은 `CBS.log`에 기록합니다. SFC 줄만 뽑아내려면 SFC 문서에 나온 다음 명령을 씁니다.

```cmd
findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log >"%userprofile%\Desktop\sfcdetails.txt"
```

이 명령들은 복구만 할 뿐 설치한 것을 제거하지 않으므로 되돌릴 것이 없습니다. Windows 업데이트 자체가 고장 나서 DISM이 끝나지 않는다면, SFC 문서에 `/Source`를 정상 작동하는 Windows 설치나 Windows 미디어로 지정하고 `/LimitAccess`를 붙이는 방법이 나와 있습니다.

## 하지 말아야 할 것

- **Windows Modules Installer 서비스를 사용 안 함으로 설정하지 마세요.** Microsoft의 설명에 따르면 이 서비스를 사용하지 않으면 Windows 업데이트 설치나 제거가 실패할 수 있습니다. CPU 사용량은 사라지지만 패치도 함께 사라집니다.
- **작업자 프로세스를 멈추려고 Windows 업데이트를 끄지 마세요.** 작업자 프로세스는 선택적 기능과 구성 요소 복구도 처리하며, 패치를 멈춘 PC라고 패치가 필요 없어지는 것은 아닙니다. 작업이 나중으로 쌓일 뿐입니다.
- **작업 관리자에서 TiWorker.exe를 끝내지 마세요.** 설치 도중에 멈추면 업데이트가 절반만 적용되고, 긴 작업이 실패 루프로 바뀌는 것이 바로 이런 경우입니다.
- **업데이트가 설치되는 동안 `SoftwareDistribution`을 삭제하지 마세요.** 파일을 지우려고 `C:\Windows\WinSxS`의 소유권을 가져오는 것도 하지 마세요. Microsoft는 WinSxS에서 파일을 삭제하면 PC가 부팅하거나 업데이트하지 못할 수 있다고 경고합니다.
- **업데이트 다시 시작이 마무리되는 중에 전원을 끄지 마세요.** Microsoft FAQ는 다시 시작이 설치를 마치는 과정의 일부라고 설명하므로, 시간이 걸려도 끝까지 두세요.

## Mole이 하는 일

Mole for Windows는 Windows 업데이트, TrustedInstaller 서비스, 정리 일정을 바꾸지 않습니다. 최적화 페이지에는 시스템 파일 검사 및 복구라는 작업이 있는데, Windows 자체 이미지 서비스 API에 `DISM /CheckHealth`와 같은 정상, 복구 가능, 복구 불가능 판정을 최대 30일에 한 번 요청합니다. 이미지가 복구 가능하면 결과에서 시스템 파일 복구를 별도 단계로 제시하며, 이는 Windows 업데이트에서 같은 RestoreHealth 복구를 실행하고 최대 약 30분이 걸린다고 표시됩니다. 검사와 복구 모두 관리자 권한을 요청하고, 배터리가 부족하면 복구를 거부하며, 쓰기 전에 디스크를 다시 확인합니다. 두 번째 작업인 멈춘 업데이트 다운로드 재설정은 Windows 업데이트가 설치 중이거나 다시 시작을 기다리는 동안 대기하는데, [도움말 페이지](/ko/windows/help)에서 진행 중인 업데이트가 일부 유지 관리를 미룰 수 있다고 한 것이 이 뜻입니다.

창 왼쪽 위의 Mole 마크에서 여는 Doctor는 Windows가 업데이트 설치를 마치기 위해 다시 시작을 기다리고 있으면 알려 주고, PC가 며칠째 켜져 있는 상태에서 Windows 프로세스가 높은 CPU를 쓰며 멈춰 있으면 다시 시작을 권합니다. 서비스 작업이 아닌 높은 CPU 사용량은 [Windows CPU 사용량이 높을 때](/ko/windows/blog/windows-high-cpu-usage)를 참고하세요.

## 자주 묻는 질문

### Windows Modules Installer Worker는 바이러스인가요?

정상 프로세스는 `TiWorker.exe`이며, Windows Modules Installer 서비스(`TrustedInstaller`)가 업데이트와 선택적 기능을 설치하려고 시작합니다. 작업 관리자에서 마우스 오른쪽 단추로 누르고 파일 위치 열기를 선택하면 Windows 폴더 안에 있어야 합니다.

### TiWorker.exe의 높은 CPU 사용량은 얼마나 지속되나요?

월별 업데이트 후에는 보통 설치와 그 뒤의 다시 시작 사이에 가라앉고, 기능 업데이트는 더 오래 걸립니다. PC가 유휴 상태일 때의 활동은 대개 구성 요소 정리 작업이며, 1시간 뒤에 멈춥니다.

### 높은 CPU 사용량을 막으려고 TrustedInstaller를 사용 안 함으로 설정해도 되나요?

안전하지 않습니다. Microsoft는 이를 사용하지 않으면 Windows 업데이트 설치나 제거가 실패할 수 있다고 밝힙니다. 작업을 끝까지 두고, 한 번 다시 시작한 뒤, 계속 돌아오면 DISM과 SFC로 복구하세요.

### TrustedInstaller 때문에 디스크 사용량이 높은 이유는 무엇인가요?

업데이트를 설치하거나 기능을 추가하면 구성 요소 저장소에 많은 파일을 쓰고, 교체되는 이전 파일을 읽습니다. 느리거나 거의 가득 찬 드라이브에서는 이것이 디스크 100%로 나타납니다. 디스크 쪽은 [작업 관리자에서 디스크 100%](/ko/windows/blog/windows-disk-100-percent)에서 다룹니다.


Canonical: https://mole.fit/ko/windows/blog/windows-modules-installer-worker-high-cpu
