SearchIndexer.exe грузит процессор или диск в Windows 10/11 — как исправить (2025)
Поиск стал медленным, вентилятор ревёт, а диск на 100%? Часто виноват индексатор: он зацепился за мусорные папки или база поиска испортилась. Ниже — короткий план и подробная инструкция.
Коротко: что сделать сразу
- Откройте Win+R →
control /name Microsoft.IndexingOptionsи уберите из индексации временные папки. - Перестройте индекс: «Дополнительно» → «Перестроить».
- Проверьте диск и системные файлы — команды ниже.
1) Служба Windows Search
Выполните команды, чтобы включить и запустить поиск.
Командная строка (Администратор) — выполнять по одной:
sc config WSearch start= delayed-auto
sc start WSearch
sc query WSearch
2) Сузить область индексации
Исключите кэши, загрузки и папки с миллионами маленьких файлов.
Win+R → control /name Microsoft.IndexingOptions → «Изменить» → снимите галочки с временных папок. В «Дополнительно» проверьте типы файлов.
3) Перестроить индекс
Если база повреждена, индексатор «жует» диск бесконечно. Перестройте индекс штатно.
Параметры индексации → Дополнительно → «Перестроить».
4) Сброс базы Windows.edb вручную
PowerShell (Администратор) — вставить целиком:
Stop-Service WSearch -Force
$path = "C:\ProgramData\Microsoft\Search\Data\Applications\Windows"
$edb = Join-Path $path "Windows.edb"
if (Test-Path $edb) { Remove-Item $edb -Force -ErrorAction SilentlyContinue }
Start-Service WSearch
"Готово: база будет создана заново. Оставьте ПК включённым для первичной индексации."
5) Проверка диска и системы
Командная строка (Администратор) — выполнять по одной:
chkdsk C: /scan
sfc /scannow
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /RestoreHealth
6) Исключения через реестр (по желанию)
PowerShell (Администратор) — вставить целиком:
$excluded = @("$env:USERPROFILE\AppData\Local\Temp",
"$env:LOCALAPPDATA\Microsoft\Windows\INetCache",
"$env:USERPROFILE\Downloads")
$regPath = "HKLM:\SOFTWARE\Microsoft\Windows Search\Gather\Windows\SystemIndex\Sites\LocalHost\Paths"
for ($i=0;$i -lt $excluded.Count;$i++) {
$name = "ExcludedPath_$i"
New-ItemProperty -Path $regPath -Name $name -PropertyType String -Value $excluded[$i] -Force | Out-Null
}
"Исключения добавлены. Перезапустите службу WSearch."
7) Диагностика
PowerShell (Администратор) — выполнять по одной:
Get-WinEvent -LogName Application -Max 300 | Where-Object {$_.ProviderName -like "*Search*"} | Select TimeCreated, Id, LevelDisplayName, Message
Get-Process -Name SearchIndexer, SearchApp, SearchUI -ErrorAction SilentlyContinue | Format-Table Name, CPU, Id
8) Временно отключить индексацию
Командная строка (Администратор) — выполнять по одной:
sc stop WSearch
sc config WSearch start= disabled