Windows 7: การจัดทำดัชนีการค้นหาติดอยู่


13

เมื่อฉันเปิดตัวเลือกการทำดัชนีจะมีข้อความระบุว่า:

กำลังจัดทำดัชนีรายการ 4,317 รายการ ผลการค้นหาอาจไม่สมบูรณ์ในช่วงเวลานี้

มันติดอยู่ที่ 4,317 แม้ว่า; ไม่มีการจัดทำดัชนีรายการอีกแล้ว SearchIndexer.exe แย่ที่สุดจากทั้งหมด SearchIndexer.exe ใช้ CPU 100% (ดีมาก 50% แต่ฉันมีซีพียูดูอัลคอร์มันใช้กำลังการประมวลผลทั้งหมดเท่าที่จะทำได้) มันไม่ได้ทำให้เกิดกิจกรรมฮาร์ดไดรฟ์

ฉันลองคลิก "แก้ไขปัญหาการค้นหาและการจัดทำดัชนี" ที่ด้านล่างของหน้าต่างตัวเลือกการจัดทำดัชนี แต่ไม่พบปัญหาใด ๆ

ฉันได้ลองใช้รีจิสตรีคีย์ซ่อมที่หลาย ๆ เว็บไซต์แนะนำ ฉันเปลี่ยนการตั้งค่าการค้นหา HKLM \ SOFTWARE \ Microsoft \ Windows เสร็จสมบูรณ์เป็น 0 และรีสตาร์ทคอมพิวเตอร์และเห็นได้ชัดว่าได้รับการซ่อมแซมเนื่องจากมันพลิกกลับเป็น 1 แต่ปัญหาเดียวกันยังคงเกิดขึ้น

มันลดอายุการใช้งานแบตเตอรี่ของแล็ปท็อปของฉันและทำให้มันร้อนจริง ๆ เพื่อให้แฟน ๆ ของฉันทำงานตลอดเวลา ฉันต้องปิดบริการ Windows Search ฉันจะแก้ไขสิ่งนี้ได้อย่างไร ฉันต้องฟอร์แมตคอมพิวเตอร์ของฉันใหม่หรือไม่


อัปเดต:
ฉันได้ลองสร้างใหม่อีกครั้งสองครั้ง ไม่มีอะไรผิดปกติเกี่ยวกับสถานที่ที่ฉันต้องจัดทำดัชนีและฉันไม่มีการดาวน์โหลดใด ๆ อยู่ระหว่างดำเนินการหรืออะไรทำนองนั้น ฉันไม่เห็นเหตุผลว่าทำไมจึงหยุดทำงานและฉันสังเกตเห็นว่ามันสายเกินไปที่จะทำการกู้คืนระบบ ณ จุดนี้ฉันหวังว่าบางคนจะเสนอคำตอบลับที่จะแก้ไขปัญหาดังนั้นรางวัล


การอัปเดตอื่น:
ฉันพยายามเริ่มบริการอีกครั้งเพื่อให้ลองอีกครั้ง ดูเหมือนว่าโอเคในตอนแรก (ตัวเลือกการทำดัชนีแสดงให้เห็นว่ามันทำงานที่ความเร็วลดลงเนื่องจากกิจกรรมของผู้ใช้และจำนวนไฟล์ที่เพิ่มขึ้น) ไม่นานฉันก็ตรวจสอบและบริการหยุดทำงาน ตัวแสดงเหตุการณ์พบข้อผิดพลาดบางอย่างเช่นนี้:

Log Name:      Application
Source:        Application Error
Date:          2/1/2010 7:34:23 PM
Event ID:      1000
Task Category: (100)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      ricky-win7
Description:
Faulting application name: SearchIndexer.exe, version: 7.0.7600.16385, time stamp: 0x4a5bcdd0
Faulting module name: NLSData0007.dll, version: 6.1.7600.16385, time stamp: 0x4a5bda88
Exception code: 0xc0000005
Fault offset: 0x002141ba
Faulting process id: 0x13a0
Faulting application start time: 0x01caa39f2a70ec02
Faulting application path: C:\Windows\system32\SearchIndexer.exe
Faulting module path: C:\Windows\System32\NLSData0007.dll
Report Id: b4f7a7ae-0f92-11df-87fc-e5d65d8794c2
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Application Error" />
    <EventID Qualifiers="0">1000</EventID>
    <Level>2</Level>
    <Task>100</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2010-02-02T00:34:23.000000000Z" />
    <EventRecordID>10689</EventRecordID>
    <Channel>Application</Channel>
    <Computer>ricky-win7</Computer>
    <Security />
  </System>
  <EventData>
    <Data>SearchIndexer.exe</Data>
    <Data>7.0.7600.16385</Data>
    <Data>4a5bcdd0</Data>
    <Data>NLSData0007.dll</Data>
    <Data>6.1.7600.16385</Data>
    <Data>4a5bda88</Data>
    <Data>c0000005</Data>
    <Data>002141ba</Data>
    <Data>13a0</Data>
    <Data>01caa39f2a70ec02</Data>
    <Data>C:\Windows\system32\SearchIndexer.exe</Data>
    <Data>C:\Windows\System32\NLSData0007.dll</Data>
    <Data>b4f7a7ae-0f92-11df-87fc-e5d65d8794c2</Data>
  </EventData>
</Event>

หากคุณมีข้อผิดพลาดเดียวกันและมาถึงที่นี่จากการค้นหาของ Google โปรดแสดงความคิดเห็นหรือเพิ่มคำตอบที่แสดงรายละเอียดความคืบหน้าของคุณหากมี ...


4
ยังไงก็ตาม ... ไม่มีใครรู้วิธีที่จะคิดออกว่ารายการที่มหัศจรรย์ 4,317 ชิ้นนี้คืออะไร? ฉันชอบที่จะรู้ว่ามีไฟล์ผิดปกติเพียงไฟล์เดียวที่รบกวนระบบทั้งหมดหรือไม่
Ricket

คุณสามารถเปิดไฟล์ Windows.edb โดยใช้บางตำแหน่งที่เรียกว่า ESEDatabaseView ที่นี่: nirsoft.net/utils/ese_database_view.html
user2924019

คำตอบ:


8

ฉันคิดว่าคุณสามารถแก้ไขได้เมื่อคุณบอกว่ามีไฟล์เสียหายที่ทำให้ไฟล์หยุดทำงาน วิธีที่หยั่งรู้ในการพยายามระบุไฟล์คือไปที่แท็บไฟล์และปิดไฟล์ครึ่งหนึ่งจากการจัดทำดัชนี ปล่อยให้มันวิ่ง ไม่ว่าจะเสร็จสมบูรณ์หรือหยุด หากหยุดลงให้ปิดอีกครึ่งหนึ่ง หากเสร็จสิ้นคุณจะรู้ว่าประเภทไฟล์ที่ไม่ดีอยู่ในอีกครึ่งหนึ่ง การทำเช่นนี้จะช่วยให้คุณสามารถระบุประเภทไฟล์ที่ไม่ดีได้

ดูจากรายการไฟล์ที่มีการจัดทำดัชนี ประเภทไฟล์มีผู้ให้บริการการค้นหาที่แตกต่างกันเช่น HTML ข้อความธรรมดาเป็นต้น มีผู้ใดบ้างที่ดูผิดที่อาจถูกติดตั้งโดยแอปพลิเคชันบุคคลที่สามบางส่วน

อีกแนวคิดหนึ่งคือให้การค้นหาแขวนในไฟล์ที่ 4,317 จากนั้นเรียกใช้พรอมต์คำสั่ง ชนิด

CD c:\
DIR /s /TA /O-D >c:\newt.txt

สิ่งนี้จะสร้างไฟล์ชื่อ newt.txt ซึ่งจะเก็บไฟล์ทั้งหมดและครั้งสุดท้ายที่พวกเขาเข้าถึง เข้าถึงหมายถึงอ่านไม่ได้แก้ไข คุณจะต้องค้นหาไฟล์ด้วยเครื่องมือแก้ไขไฟล์ แต่ค้นหาไฟล์ล่าสุดหลายไฟล์ที่ถูกแก้ไข หากเราโชคดีไฟล์ไม่ดีของคุณจะอยู่ในนั้น โชคดี!


เคล็ดลับที่ดี (ความคิดที่สอง) ตัวสร้างดัชนีไม่เก็บบันทึกของไฟล์บางไฟล์ที่จัดทำดัชนีไว้ที่อื่นหรือ มันช่วยให้เราเห็นไฟล์สุดท้ายที่สร้างดัชนีสำเร็จและอาจได้รับเบาะแสด้วยวิธีนี้
mtone

@mtone - เป็นไปได้หรือไม่ที่จะจัดทำดัชนีโฟลเดอร์หนึ่งครั้ง? มันจะ จำกัด การค้นหาให้แคบลง
Nifle

@Nifle - ใช่มันจะเป็นการสอบสวนที่สมเหตุสมผลในการลดจำนวนโฟลเดอร์ที่จัดทำดัชนี ใต้เมนูเริ่มพิมพ์ "การจัดทำดัชนี" และคลิกที่ตัวเลือกการจัดทำดัชนี พาเนลนั้นแสดงรายการตำแหน่งที่คุณกำลังจัดทำดัชนี
Knox

@Knox +1 สำหรับแนวคิดแรก คุณกำลังแนะนำการกำจัด[ค้นหาไบนารี] และหากคุณปรับเปลี่ยนมันด้วยความเข้าใจของความเป็นไปได้ของข้อบกพร่องและ จำกัด การจัดทำดัชนีให้กับผู้ที่แรกแล้วคุณจะได้รับมากดีกว่าO (log2 N)เพิ่มความเร็ว
ElderDelp

4

ฉันพบข้อมูลนี้ที่ฟอรัม Technet

ดูเหมือนว่าจะเป็นข้อบกพร่องที่รู้จัก:

  1. พีซีมีไดรฟ์หรือพาร์ติชั่นสองตัว (หรือหลายตัว)

  2. โปรไฟล์ผู้ใช้และ Windows จะอยู่ที่ไดรฟ์หรือพาร์ติชันแรก (สมมติว่าตัวอักษรไดรฟ์ C :)

  3. ไดรฟ์หรือพาร์ติชั่นที่สองมีเนื้อที่ว่างบนดิสก์มากกว่ากว่าตัวแรก (สมมติว่าตัวอักษรไดรฟ์ D :)

  4. ลำดับงานรีเฟรช OSD ของ ConfigMgr 2007 ที่ใช้ USMT 4 พร้อมการเชื่อมโยงอย่างหนักถูกเรียกใช้บนพีซีจากนั้นงานจับไฟล์และการตั้งค่าผู้ใช้ "/" สถานะผู้ใช้จับภาพ "จะสำเร็จ แต่" กู้คืนสถานะผู้ใช้ "/" กู้คืนไฟล์ผู้ใช้และการตั้งค่า "งานจะล้มเหลว

มติ

เพื่อแก้ไขปัญหาตัวแปร OSDStateStorePath จะต้องเปลี่ยนจากค่าเริ่มต้น เมื่อใช้การรวม MDT 2010 / MDT 2010 Update 1 ตัวแปรจะต้องถูกกำหนดใหม่หลังจากที่ได้รับการตั้งค่าโดยสคริปต์ ztiuserstate.wsf ในงาน "กำหนดท้องถิ่นหรือผู้ใช้ระยะไกล"

เพื่อให้แน่ใจว่า State Store ได้รับการบันทึกลงในไดรฟ์ / พาร์ติชั่นเดียวกันที่ติดตั้ง Windows และโปรไฟล์ผู้ใช้ตั้งอยู่ตัวแปรสภาพแวดล้อม SystemDrive สามารถใช้เป็นส่วนหนึ่งของพา ธ ที่กำหนดตัวแปร OSDStateStorePath

หากไม่ได้ใช้การรวม MDT 2010 / MDT 2010 Update 1 งาน "ตั้งค่าตัวแปรลำดับของลำดับงาน" ที่ตั้งค่าตัวแปร OSDStateStorePath จะต้องแก้ไข:

  1. ในคอนโซลผู้ดูแลระบบของ ConfigMgr 2007 ให้ไปที่โหนดComputer Management-> Operating System Deployment->Task Sequences

  2. คลิกขวาที่ลำดับของงานที่ได้รับผลกระทบและเลือก "แก้ไข"

  3. คลิกที่Set Local State Locationงาน ตรวจสอบให้แน่ใจว่างานเป็นงานที่กำหนดตัวแปรSet Task Sequence Variable OSDStateStorePath

ถัดจากช่องValue:ข้อความให้เปลี่ยนจาก%_SMSTSUserStatePath% เป็น%SystemDrive%\UserState

  1. คลิกที่ปุ่ม "ตกลง" หรือ "นำไปใช้" เพื่อบันทึกลำดับงาน หากไม่มีงาน "Set Local State Location" ให้ค้นหางาน "Set Task Sequence Variable" ที่ตั้งค่าตัวแปร OSDStateStorePath แล้วทำการเปลี่ยนแปลงด้านบน หากใช้การรวม MDT 2010 / MDT 2010 Update 1 ดังนั้นต้องเพิ่มงาน "Set Task Sequence Variable" ใหม่หลังจากงาน "กำหนดท้องถิ่นหรือผู้ใช้ระยะไกล" ที่กำหนดตัวแปร OSDStateStorePath ใหม่:

  2. ในคอนโซลผู้ดูแลระบบของ ConfigMgr 2007 ให้ไปที่โหนดComputer Management-> Operating System Deployment->Task Sequences

  3. คลิกขวาที่ลำดับของงานที่ได้รับผลกระทบและเลือก "แก้ไข"

  4. คลิกที่งาน "กำหนดท้องถิ่นหรือผู้ใช้ระยะไกล" จากนั้นไปที่ "เพิ่ม" -> "ทั่วไป" -> "ตั้งค่าตัวแปรลำดับงาน" สิ่งนี้ควรสร้างงาน "ตั้งค่าตัวแปรลำดับของลำดับงาน" หลังจากงาน "กำหนดผู้ใช้ภายในหรือระยะไกลของผู้ใช้" แต่ก่อนหน้างาน "ที่จัดเก็บคำขอของรัฐ"

  5. ใน "ชุดงานลำดับตัวแปรงานที่สร้างขึ้นใหม่":

    • ถัดจากName:ช่องข้อความให้ป้อน:Set Local State Location
    • ถัดจากTask Sequence Variable:ช่องข้อความให้ป้อน OSDStateStorePath
    • ถัดจากValue:ช่องข้อความให้ป้อน:%SystemDrive%\StateStore
  6. คลิกที่ปุ่ม "ตกลง" หรือ "นำไปใช้" เพื่อบันทึกลำดับงาน

หากในขั้นตอนที่ 3 งาน "กำหนดท้องถิ่นหรือผู้ใช้ระยะไกล" ไม่มีอยู่หรือถูกเปลี่ยนชื่อให้มองหางาน "เรียกใช้บรรทัดคำสั่ง" ที่รันสคริปต์ ztiuserstate.wsf แล้วทำตามขั้นตอนด้านบน


4

ก่อนอื่นให้ลองสร้างดัชนีของคุณใหม่ นอกจากนี้ยังไม่รวมอยู่ในการสร้างดัชนีโฟลเดอร์ที่มีการดาวน์โหลดชั่วคราว / ไม่สมบูรณ์ ไฟล์ที่ยังไม่เสร็จนั้นเกิดจากคำจำกัดความที่เสียหายและอาจค้างกระบวนการ ตัวแปลงสัญญาณวิดีโอ / เสียงอาจเป็นไปได้เช่นกันหากการจัดทำดัชนีค้นหาข้อมูลเมตาในนั้น

ข้อความแสดงแทน


คุณสามารถอธิบายเพิ่มเติมเกี่ยวกับความคิดเห็นข้อมูลเมตาได้หรือไม่? หากมีอะไรบางอย่างที่ติดขัดเรื่องนี้บางทีมันอาจช่วยให้ฉันคิดถึงมันได้
Ricket

การจัดทำดัชนีพยายามที่จะรับข้อมูลเมตาโดยดูเป็นไฟล์ ไฟล์บางประเภทเช่นไฟล์ภาพยนตร์ AVI จำเป็นต้องใช้ตัวแปลงสัญญาณ (หรือตัวตักคอนเทนเนอร์มักจะอ้างถึงเป็นตัวแปลงสัญญาณเช่นกัน) เพื่อเปิดไฟล์เหล่านี้และรับความละเอียดความยาว ฯลฯ ตัวแปลงสัญญาณอาจหยุดทำงานหากไฟล์เสียหาย ที่กล่าวว่าฉันยังไม่พบปัญหาใน Windows 7 แต่ใน XP มันเคยเป็นปัญหาทั่วไป
mtone

4

การค้นหาของฉันติดขัดเนื่องจากไฟล์ Outlook.pst ไม่ดี ฉันใช้ยูทิลิตีการซ่อมแซม pst ที่SCANPST.EXEพบในไดเรกทอรีเดียวกับที่ปฏิบัติการใน Outlook 2007 ( C:\Program Files (x86)\Microsoft Office\Office12บนเครื่อง Windows 7 x64 ของฉัน)

ป้อนคำอธิบายรูปภาพที่นี่


1
ไฟล์ชื่อ SCANPST.EXE
M. Dudley

2

คุณได้ตรวจสอบแล้วว่าฮาร์ดไดรฟ์ของคุณไม่ตายใช่ไหม

คลิกขวาที่ไดรฟ์เปิดไดอะล็อกคุณสมบัติไปที่แท็บเครื่องมือและทำการตรวจสอบข้อผิดพลาด (ด้วยการสแกนเซกเตอร์เสีย)


ใช่เป็นความคิดที่ดีมากเพื่อให้มั่นใจว่าพื้นฐานทำงานถูกต้อง ตรวจสอบบันทึกเหตุการณ์เพื่อดูข้อผิดพลาดของระบบ
Knox

2

หนึ่งในคำถามที่ถามถึงที่นี่คือเกี่ยวกับวิธีดูว่า SearchIndexer.exe ถูกบล็อกทำผิดพลาดหรือหยุดทำงานหรือยังมีความคืบหน้าอยู่หรือไม่ นอกจากนี้จะเป็นการดีหากได้ดูว่าไฟล์ใดที่กำลังถูกทำดัชนี

นี่คือวิธีในการค้นหา

Microsoft ไม่ได้เตรียมเครื่องมือให้คุณเพื่อดูไฟล์บันทึกที่สร้างขึ้นในระหว่างการค้นหาเช่น MSS.log (คัดลอกและเปลี่ยนภายหลังในชื่ออื่นจากนั้นลบ) เป็นไฟล์ไบนารีและไม่สามารถอ่านได้เว้นแต่จะมีเครื่องมือพิเศษ

อีกทางเลือกหนึ่งที่ผมพยายามจะหาว่ามันถูกแขวนอยู่บนไฟล์เดียวหรือไม่ก็จะเหม่ถึงกระบวนการตรวจสอบของ sysinternal ฉันตั้งค่าตัวกรองดังนี้:

  • รวมถึงกระบวนการSearchProtocolHost.exe(หมายเหตุ: ไม่ SearchIndexer.exe )
  • รวมถึงประเภทของเหตุการณ์File System,
  • ยกเว้นอะไรในC:\WindowsและC:\ProgramDataไดเรกทอรี
  • และ / หรือรวมถึงไดเรกทอรีที่คุณกำลังจัดทำดัชนีจริง ๆ
  • ReadFileเลือกการตั้งค่าการดำเนินการเพื่อ
  • คลิกใช้หรือตกลงจากนั้นคลิกปุ่มถ่ายภาพด้านบนซ้าย

มุมมองเหตุการณ์ที่เกิดขึ้นช่วยให้คุณสามารถReadFileดำเนินการทั้งหมด(และอื่น ๆ ) ที่กำลังอ่านโดยบริการดัชนีการค้นหาของ Microsoft

ควรเป็นรายการReadFileการดำเนินการที่ยาวนานและไฟล์ที่กำลังจัดทำดัชนีอยู่ในคอลัมน์พา ธ คอลัมน์ผลลัพธ์ควรแสดงSUCCESS(ถ้าไม่มีมีปัญหาของคุณ) และคอลัมน์รายละเอียดควรแสดงออฟเซ็ตอื่นอย่างต่อเนื่อง (หากไม่ใช่มันเป็นลูปและนั่นเป็นคำแนะนำที่เป็นไปได้สำหรับสาเหตุของปัญหาของคุณ)


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.