Windows-Server-2012-R2

Server 2012 R2 上的 Windows 索引搜尋隨機失敗

  • March 8, 2018

簡而言之,文件伺服器的索引會隨機失敗。

文件伺服器啟用並索引了 Windows Search 服務。有許多客戶端連接到此伺服器,可能多達 100 個。客戶端 Windows (7/10) 機器將無法搜尋伺服器。綠條一直走,沒有顯示結果。

在伺服器上,只需重新啟動 Windows Search (Wsearch) 服務即可解決。停止/重新啟動需要很長時間(比如一分鐘)。當“停止”時,它會拋出一個錯誤,說服務無法停止。以下是從 powershell 停止服務時引發的錯誤。

Stop-Service : Service 'Windows Search (Wsearch)' cannot be stopped due to the following error: Cannot stop Wsearch
service on computer '------'.
At C:\Users\------\Documents\PSscript\Wsearch-stop.ps1:4 char:54
+ Get-Service -Name $svc_name -ComputerName $pc_name | Stop-Service
+                                                      ~~~~~~~~~~~~
   + CategoryInfo          : CloseError: (System.ServiceProcess.ServiceController:ServiceController) [Stop-Service],
  ServiceCommandException
   + FullyQualifiedErrorId : CouldNotStopService,Microsoft.PowerShell.Commands.StopServiceCommand

有時它不會失敗,但它也可能每天失敗很多次。我們無法找出罪魁禍首,必鬚根據要求重新啟動它。文件操作不受阻礙。

編輯:我想知道是否有人遇到過這樣的問題。我在網上什麼也沒找到。我目前的解決方案是嘗試製作一個腳本來從客戶端電腦查詢網路索引,當發現錯誤時,重新啟動服務。

查看客戶端機器上的事件日誌,找出索引搜尋失敗的時間。您可以創建一個特殊的計劃任務,該任務將由所需事件觸發並執行 PS 腳本。我的同事為您寫了一個範例:

輸入-PSSession -ComputerName “example-server.domain.local”

設置服務“WSearch”-StartupType 手冊

獲取服務-名稱“WSearch”| 格式列表-屬性名稱,DependentServices |

外空

停止服務-名稱“WSearch”-強制-確認

啟動服務-名稱“WSearch”-確認

搜尋索引器.exe

引用自:https://serverfault.com/questions/900332