วิธีการป้องกันไม่ให้ Windows 10 ตื่นจากโหมดสลีปเมื่อเดินทางด้วยถุง?


105

ฉันไม่ได้ปิดแล็ปท็อป แต่กลับเข้าสู่โหมดไฮเบอร์เนตเพราะมันเริ่มเร็วขึ้นมากและฉันสามารถทำงานต่อไปได้โดยไม่ต้องเริ่มแอพทั้งหมดอีกครั้ง

มันใช้งานได้นานจาก Windows XP เป็น Windows 8.1

อย่างไรก็ตามตอนนี้ (หลังจากอัพเกรดเป็น Windows 10) เมื่อฉันเพิ่งเอาแล็ปท็อปออกจากกระเป๋าหลังจากการเดินทางมันค่อนข้างร้อน ฉันรู้ว่ามันเปิดอยู่

ในบันทึกเหตุการณ์ฉันพบว่ามีการติดตั้งการอัปเดตและก่อนหน้านั้นมีบันทึกดังต่อไปนี้:

ระบบส่งคืนจากสถานะพลังงานต่ำ

เวลานอน: 2015 - 08 - 16T12: 55: 18.180075900Z เวลาเปิดเครื่อง: 2015 - 08 - 16T12: 55: 17.852758500Z

แหล่งที่มาของการปลุก: ไม่ทราบ แต่อาจเกิดจากตัวจับเวลา - Windows จะเรียกใช้งานตามกำหนดการ 'NT TASK \ Microsoft \ Windows \ UpdateOrchestrator \ Reboot' ซึ่งขอให้ปลุกคอมพิวเตอร์

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

จะทราบได้อย่างไรว่าคอมพิวเตอร์กำลังตื่นจากโหมดไฮเบอร์เนต (เป็นไปได้อย่างไร) และจะป้องกันอย่างไร


4
ฉันพบหน้าเว็บที่บังคับให้ windows ไม่เปลี่ยน reboot superuser.com/questions/973009/…

คำตอบ:


85

สิ่งนี้ได้ผลสำหรับฉันจนถึงตอนนี้ ไปที่:

ตัวเลือกแผงควบคุม \ ฮาร์ดแวร์และเสียง \ พลังงาน \ แก้ไขการตั้งค่าแผน

คลิก "เปลี่ยนการตั้งค่าพลังงานขั้นสูง"

ไปที่ "สลีป -> อนุญาตตัวจับเวลาปลุก" และเปลี่ยนการตั้งค่าเป็นปิดใช้งาน

ภาพหน้าจอตัวเลือกพลังงาน 1

การปรับปรุง:ตามที่ Erik ชี้ให้เห็นอาจมีสองตัวเลือก:

ภาพหน้าจอตัวเลือกพลังงาน 2 พร้อม 2 ตัวเลือก

ปิดใช้งานทั้งคู่


11
ไม่ได้ผลสำหรับฉันนั่นถูกปิดการใช้งานแล้วและการอัปเดต Windows จะทำให้พีซีของฉันตื่นขึ้นมาอีกครั้ง
Erik

3
ใช้ "powercfg -waketimers" เพื่อตรวจสอบว่ามีตัวจับเวลาปลุกอื่น ๆ อยู่หรือไม่ Spotify และ TeamViewer บางเวอร์ชันมีการรายงานเพื่อสร้างตัวจับเวลาการปลุกด้วย อย่างไรก็ตามฉันยังมีปัญหา Windows 10 โดยไม่สนใจตัวจับเวลาการปิดใช้งานการปลุก
voldemarz

สำหรับทุกคนที่อ่านสิ่งนี้ Spotify แก้ไขข้อผิดพลาดที่ทำให้เกิดตัวจับเวลาการปลุกเมื่อไม่กี่สัปดาห์ที่ผ่านมา
Godsmith

7
@ ด่าน: ขอบคุณ แต่ฉันไม่ชอบที่จะจัดเรียงชีวิตของฉันใหม่ arround MS ไร้ความสามารถ ; -)
นิคเวสต์เกต

3
@Dan: ฉันออกจากคอมพิวเตอร์ของฉันในเวลาไม่กี่วันและบางครั้งฉันจำเป็นต้องเข้าถึงคอมพิวเตอร์ของฉันจากระยะไกล หากอยู่ในสถานะสลีปฉันสามารถส่งแพ็คเก็ต WOL เพื่อปลุกแล้ววางในโหมดสลีปเมื่อเสร็จสิ้น อย่างไรก็ตามฉันไม่ต้องการให้ Windows Update ตื่นขึ้นมาและสิ้นเปลืองพลังงานนานหลายวัน
user33339

73

ในวันที่ 10 ชนะมีตัวเลือกในตัวแก้ไขนโยบายกลุ่มท้องถิ่นเพื่อตั้งค่าได้อย่างง่ายดาย:

  1. ค้นหา: Local Group Policy Editor (คุณสามารถเปิดตัวgpedit.msc)
  2. นำทางไปยัง: Computer Configuration / Administrative Templates / Windows Components / Windows Update
  3. ดับเบิลคลิกที่: Enabling Windows Update Power Management to automatically wake up the system to install scheduled updatesแล้วตั้งเป็น "ปิดการใช้งาน"

รูปสำหรับการตั้งค่าตัวแก้ไขนโยบายกลุ่มท้องถิ่น:

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


10
IMO นี่คือทางออกที่ถูกต้อง หากต้องการปิดใช้งานตัวจับเวลาการปลุกอย่างสมบูรณ์ไม่ต้องการเสมอไป
JeffRSon

1
+1 แต่ฉันไม่ต้องการให้ตื่น (ตอนกลางคืน) ไม่ว่าด้วยเหตุผลใด! มีการตั้งค่าใหม่สำหรับอนุญาตตัวจับเวลาปลุก: ตัวจับเวลาสัญญาณเตือนที่สำคัญเท่านั้น ไม่รู้ว่ามันทำอะไร หวังว่า MS จะตื่นขึ้นมาและอนุญาตให้เราระบุช่วงเวลาที่อนุญาตให้ตื่น โอ้ผู้ใช้ Windows 10 ในบ้านไม่มี gpedit แต่สามารถใช้แฮกรีจิสตรีได้
Nick Westgate

ฉันปิดใช้งานนโยบายแล้ว แต่งาน Windows ยังคงลงทะเบียน (ทำเครื่องหมายด้วย "powercfg –waketimers") ต้องไปและปิดการใช้งานงาน windows ด้วยตนเองตามที่ระบุไว้ในsuperuser.com/a/958264/267379เพื่อให้มันทำงานได้ หวังว่าการรวมกันของทั้งสองจะได้ผล: D
Sean Feldman

2
ฉันไม่สามารถยืนยันได้ว่านโยบายนี้ใช้งานได้ ฉันได้ตั้งค่านโยบายนี้เป็นปิดใช้งานมาหลายสัปดาห์แล้วและเมื่อวานนี้เมื่อเย็นงาน "UpdateOrchestrator \ Reboot" ทำให้คอมพิวเตอร์ตื่นขึ้นจากโหมดสลีป
Thorsten Albrecht

@ThorstenAlbrecht เหมือนกันที่นี่ ผมใช้ Windows 64 บิต 10 Pro v1703 (Build 15,063.540) และการจัดตารางงานกลับมาจากการจำศีลในเช้าวันนี้แม้ว่าฉันมีนโยบายนี้ตั้งค่าให้UpdateOrchestrator\Reboot Disabledที่จริงแล้วฉันประหลาดใจที่การตั้งค่านโยบายกลุ่มท้องถิ่นของฉันไม่ได้หายไปจากการอัปเดตของผู้สร้างเหมือนทุกอย่างอื่น ๆ อย่างน้อยที่สุดฉันจะลองยกเลิกการตั้งค่าและรีเซ็ตนโยบายนี้และดูว่ามีผลกระทบหรือไม่
BACON

36

หลังจากอัพเกรดเป็น Windows 10 คอมพิวเตอร์ในห้องนอนของฉันตื่นขึ้นมาตอนตีสาม การปิดใช้งานWake the computerตามMicrosoft\Windows\UpdateOrchestrator\Rebootกำหนดเวลาไม่ได้ช่วยอะไร Windows เปลี่ยนการตั้งค่าสถานะเป็นระยะ ๆ แม้การปิดใช้งาน "ปิดการใช้งานตัวจับเวลาการปลุก" ใน Power Options ก็ไม่ได้ช่วยอะไร UpdateOrchestrator คอยควบคุมการเตือนเวลาเที่ยงคืน

ในฐานะที่เป็นโซลูชันฉันได้เพิ่มสคริปต์ PowerShell ที่ลบการตั้งค่าการปลุกทุกชั่วโมง

  1. ในการอนุญาตให้เรียกใช้สคริปต์ powershell ให้เรียกใช้ powershell ในฐานะผู้ดูแลระบบและเรียกใช้:

    Set-ExecutionPolicy RemoteSigned

  2. สร้างไฟล์ชื่อ "disable_wakejobs.ps1" ที่มีรหัสหนึ่งบรรทัด:

    Get-ScheduledTask | ? {$_.Settings.WakeToRun -eq $true -and $_.State -ne "Disabled"} | % {$_.Settings.WakeToRun = $false; Set-ScheduledTask $_}

  3. เปิด Task Scheduler และสร้างงานตามกำหนดเวลา

  4. ในแท็บ "ทั่วไป" ตั้งค่าบัญชีผู้ใช้เป็นผู้ใช้ "ระบบ" (หรือคุณจะต้องอัปเดตรหัสผ่านที่บันทึกไว้ทุกครั้งที่คุณเปลี่ยนรหัสผ่านของคุณเอง)
  5. ในแท็บ "ทริกเกอร์" สร้างทริกเกอร์ที่ทำงานทุกวันและทำซ้ำทุกชั่วโมง
  6. ในแท็บ "การกระทำ" สร้างการกระทำเป็น "เริ่มโปรแกรม" ด้วย "โปรแกรม / สคริปต์" ตั้งค่าเป็น "PowerShell.exe" และอาร์กิวเมนต์-Command "c:\tools\disable_wakejobs.ps1"(เปลี่ยนเส้นทางไปยังตำแหน่งที่คุณเก็บไว้disable_wakejobs.ps1ในขั้นตอนที่ 2)

คำสั่ง PowerShell มาจากบล็อกโพสต์นี้โดยเรดาร์โจฮานเซน


ฉันได้รับข้อผิดพลาดในการใช้งานนี้: Set-ScheduledTask: พารามิเตอร์ไม่ถูกต้อง ที่ C: \ Users \ Filip \ scripts \ disable_wakejobs.ps1: 1 ถ่าน: 123 + ... ปิดการใช้งาน "} |% {$ _. Settings.WakeToRun = $ false; Set-ScheduledTask $ _} + ~~~~~ ~~~~~~~~~~~~~~~ + CategoryInfo: InvalidArgument: (PS_ScheduledTask: ราก / Microsoft / ... S_ScheduledTask) [Set-ScheduledTask] CimException + FullyQualifiedErrorId: HRESULT 0x80070057, Set-ScheduledTask
Godsmith

ไม่มีวิธีแก้ปัญหาอื่นที่ใช้งานได้สำหรับฉันดังนั้นฉันหวังว่านี่จะเป็นเคล็ดลับ! แฮ็ก แต่สิ่งที่ฉันสามารถทำได้เพื่อไม่ให้พีซีของฉันเปิดเครื่องในตอนกลางคืนฉันจะทำ
GotDibbs

15
มันช่างบ้าขนาดไหน? คุณไม่สามารถพึ่งพาการตั้งค่าอีกต่อไปและพวกเขาได้รับการตั้งค่าใหม่ Microsoft อยู่ในใจของพวกเขาหรือไม่? มันไม่น่าเชื่อถือโดยสิ้นเชิง
t3chb0t

ฉันไม่เห็นวิธีการตั้งค่าบัญชีผู้ใช้เป็น "ผู้ใช้" ในขั้นตอนที่ 4
Castaa

@ Castaa- บิตต่อมา แต่คุณเปลี่ยนได้โดยการเลือกเปลี่ยนผู้ใช้หรือกลุ่มและจากนั้นพิมพ์ในแล้วกดSystem check nameผลลัพธ์สุดท้ายควรมีลักษณะเช่นนี้: puu.sh/mOIX4/58082e816e.png
Paul

6

สิ่งนี้จะช่วยแก้ปัญหาของคุณ:

  1. ค้นหา Task Scheduler
  2. นำทางไปยังTask Scheduler Library\Microsoft\Windows\UpdateOrchestrator\Reboot
    หมายเหตุ: Rebootเป็นเพียงไฟล์ แต่คุณต้องเข้าไปในโฟลเดอร์เหล่านั้นทั้งหมด
  3. คลิกขวาที่คุณสมบัติจากนั้นคลิกเงื่อนไข
  4. ยกเลิกการเลือก Wake the computer to run this task

ฉันมีการเปลี่ยนแปลงหวังว่ามันจะไม่ทำงานอีกครั้ง
เทนเนสซี

13
นี่ไม่ใช่ทางออก Windows จะเปิดใช้งานช่องทำเครื่องหมายอีกครั้งในครั้งต่อไป :-(
kipusoep

ฉันทำสิ่งนี้ แต่ Windows เปิดใช้งานแฟล็กอีกครั้ง Windows จะไม่สนใจการตั้งค่า "Disable wake timers" นี่คือโพสต์บล็อกที่แสดงวิธียกเลิกการเลือก "ปลุกคอมพิวเตอร์" จากงานที่กำหนด
Andomar

ใช่ช่องทำเครื่องหมายถูกเปิดใช้งานอีกครั้ง ...
TN

2
ไม่เพียง แต่ WIndows จะรีเซ็ตตัวเลือกนี้ แต่ยังล้มเหลวในการป้อนเป็นเหตุผลเพื่อให้ผู้ใช้รู้ว่าทำไมคอมพิวเตอร์รีบูท: เมื่อฉันถาม powercfg ด้วยเหตุผลมันบอกว่า "ไม่ทราบ" :( สิ่งนี้ไม่ดีจากการออกแบบและ Microsoft ควรแก้ไข ASAP นี้ใช้เวลาหลายชั่วโมงในการค้นหาสิ่งที่ทำให้ระบบของฉันตื่นขึ้นมานอกจากนี้การรีบูตนั้นไม่จำเป็นเลยเพราะฉันทำแล้วหลังจากการอัปเดต แต่ Microsoft ตัดสินใจรีบูตต่อไป :(
Erik

4

ฉันกำลังใช้คุณสมบัติ Wake On LAN (WOL) บนคอมพิวเตอร์ของฉันเพื่อให้สามารถปลุกคอมพิวเตอร์ของฉันจากระยะไกลได้หากต้องการเข้าถึงในขณะที่ฉันไม่อยู่ .. เพื่อให้ WOL ทำงานได้ฉันต้องอนุญาตให้การ์ดเครือข่ายของฉัน ปลุกคอมพิวเตอร์เมื่อฉันส่งแพ็กเก็ตเวทย์มนตร์ WOL

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

powercfg -lastwake

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

หากคุณเห็นบางอย่างเกี่ยวกับการ์ดเครือข่ายของคุณ (เหมือน Realtek PCIe ของฉัน) .. จากนั้นคุณต้องไปที่การตั้งค่าคุณสมบัติการ์ดเครือข่ายของคุณและตรวจสอบให้แน่ใจว่าได้ทำOnly allow a magic packet to wake the computerเครื่องหมายในช่องทำเครื่องหมาย (ไม่ได้เป็นของฉัน):

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

จากนั้นอธิษฐานต่อพระเจ้าของคุณ ...


นี่เป็นคนเดียวที่ทำงานให้ฉัน: D
Jamie Hutber

1
นั่นเป็นทางออกที่ดีสำหรับคำถามอื่น คำถามระบุ "TASK \ Microsoft \ Windows \ UpdateOrchestrator \ Reboot" ใน Windows 10 เป็นสาเหตุ WOL นั้นค่อนข้างยุ่งยากในการตั้งค่าอย่างเหมาะสมดังนั้นหวังว่านี่จะช่วยผู้อื่นเช่นกัน
user33339

1

ดูเหมือนว่าจะเป็นภารกิจการบำรุงรักษาระบบที่ใช้งานอยู่ ถ้าเป็นเช่นนั้นคุณอาจลองปิดการบำรุงรักษาระบบ

ค้นหาการควบคุม WIN + R สำหรับ "การบำรุงรักษา" ในช่องค้นหาเลือก "เปลี่ยนการตั้งค่าการบำรุงรักษาอัตโนมัติ"

ล้าง "อนุญาตการบำรุงรักษาตามกำหนดเวลาให้ปลุกคอมพิวเตอร์ตามเวลาที่กำหนด"

ดูว่าสิ่งนั้นช่วยลบปัญหาได้ไหม มันจะมีความน่าเชื่อถือมากกว่ากลไกอื่น ๆ ที่เสนอ


ฉันได้ทำเครื่องหมายที่ช่องนี้แล้ว (ดังนั้นมันจะไม่ช่วยในกรณีของฉัน)
TN

1

การใช้โซลูชันของ Andomar ฉันก็มีข้อผิดพลาดเช่นกัน:

  • Set-ScheduledTask: พารามิเตอร์ไม่ถูกต้อง ที่ C: \ Users \ Filip \ scripts \ disable_wakejobs.ps1: 1 ถ่าน: 123 + ... ปิดการใช้งาน "} |% {$ .Settings.WakeToRun = $ false; Set-ScheduledTask $ } + ~~~~~~~~ ~~~~~~~~~~~~ + CategoryInfo: InvalidArgument: (PS_ScheduledTask: รูท / Microsoft / ... S_ScheduledTask) [Set-ScheduledTask], CimException + FullyQualifiedErrorId: HRESULT 0x80070057, Set-ScheduledTask

ในกรณีของฉันนี้เป็นเพราะงานที่ไม่สามารถแก้ไขได้ (AUSessionConnect ภายใน WindowsUpdate ให้แม่นยำ) ดังนั้นฉันจึงแก้ไขงานที่รับผิดชอบโดยตรง (รีบูตภายใน UpdateOrchestrator) ไฟล์ disable_wakejobs.ps1 ที่เกี่ยวข้องมีลักษณะดังนี้ (สำหรับวิธีการใช้ไฟล์นั้นลองดูคำตอบของ Andomar):

Get-ScheduledTask -TaskName "Reboot" | % {$_.Settings.WakeToRun = $false; Set-ScheduledTask $_}

เพื่อทดสอบสคริปต์ด้วยตนเองให้แน่ใจว่าคุณเรียกใช้จากอินสแตนซ์ PowerShell ยกระดับ (เรียกใช้ในฐานะผู้ดูแลระบบ)


1

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

เปิด PowerShell:

  • ทำงาน: Get-ScheduledTask | โดยที่ {$ _. settings.waketorun}

เปิด cmd:

  • เรียกใช้ SCHTASKS / Change / TN "Microsoft \ Windows \ UpdateOrchestrator \ Reboot" / DISABLE
  • เรียกใช้ icacls "% WINDIR% \ System32 \ Tasks \ Microsoft \ Windows \ UpdateOrchestrator \ Reboot" / การสืบทอด: r / ปฏิเสธ "ทุกคน: F" / ปฏิเสธ "ระบบ: F" / ปฏิเสธ "บริการในพื้นที่: F" / ปฏิเสธ "ผู้ดูแลระบบ: F"

นี่จะเป็นการป้องกันไม่ให้เปิดใช้งานอีกครั้ง สิ่งนี้จะถือว่าคุณใช้ Windows เวอร์ชันภาษาอังกฤษแปลชื่อผู้ใช้ตามความจำเป็นหรือค้นหา SID หากจำเป็น

โพสต์ต้นฉบับใน Reddit https://www.reddit.com/r/Windows10/comments/48rg7x/is_there_any_way_to_stop_updateorchestrator_for/


1

จากประสบการณ์ของฉันคุณสามารถกำหนดค่านโยบายการอัปเดตอัตโนมัติแทนวิธีแก้ไข:

  1. เปิดตัวแก้ไขนโยบายกลุ่มภายใน (gpedit.msc)
  2. ไปที่: การกำหนดค่าคอมพิวเตอร์ / แม่แบบการดูแลระบบ / ส่วนประกอบ Windows / Windows Update
  3. แก้ไข "กำหนดค่าการอัปเดตอัตโนมัติ" คุณสามารถเปิดใช้งานและตั้งค่าเป็น "2 - แจ้งเตือนสำหรับการดาวน์โหลดและแจ้งเตือนสำหรับการติดตั้ง" หรือ "3 - ดาวน์โหลดอัตโนมัติและแจ้งเตือนการติดตั้ง"

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


0

windows 10 มีสองสิ่งที่คุณสามารถ diable สำหรับตัวจับเวลาปลุก

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


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