Microsoft Windows - ติดตั้งการปรับปรุงและเริ่มต้นใหม่ (แทนที่จะติดตั้งและปิดเครื่อง)


27

ฉันมีกล่อง Windows ที่ฉันต้องการจัดการจากระยะไกล เมื่อฉันเข้าสู่ระบบในเช้านี้เมนูเริ่มแสดง! ถัดจากปุ่มปิดเครื่องเพื่อแจ้งให้ฉันทราบว่ามีการปรับปรุงที่จะติดตั้ง แต่ตัวเลือกเดียวที่ทำให้ฉันติดตั้งการอัปเดตคือการปิดแล้ว ไม่มีวิธีบอกให้ "ติดตั้งการอัปเดตและรีสตาร์ท" หรือไม่?


2
Windows รุ่นใด
Andy Shinn

อย่าลืมทำเครื่องหมายคำตอบสำหรับคำถามของคุณ - แม้แต่คำตอบที่คุณตอบเอง
mfinni

1
ในกรณีที่คุณต้องการเลิกใช้กระบวนการนี้อาจเป็นจุดเริ่มต้นที่มีประโยชน์: scms.waikato.ac.nz/~harry/wsusupdate.vbs
Harry Johnston

นี่คือการออกแบบโดย Microsoft คิดว่าคุณไม่สนใจโดยทั่วไปแล้วไม่สนใจว่าจะต้องปิดเครื่องนานเท่าใด (เว้นแต่จะเกิดจากไฟฟ้าขัดข้องจากนั้นการปิดระบบ -s -t 00 จะหลีกเลี่ยงการอัปเดต) แต่คุณจะสนใจว่า เริ่มใหม่เมื่อเห็นว่าการเริ่มระบบใหม่หมายถึงคุณต้องการให้บริการโฮสต์บนกล่องและเปิดใช้งาน
Alex Berry

ฉันไม่เห็นด้วย. ฉันอาจต้องการรีสตาร์ทเพื่อติดตั้งอัปเดตที่ต้องรีสตาร์ท ยิ่งไปกว่านั้นที่ทำงานของฉันมีข้อ จำกัด แปลก ๆ ที่เราไม่สามารถติดตั้งการอัปเดตผ่านทาง Windows Update และต้องติดตั้งโปรแกรมเหล่านั้นด้วยการปิดเครื่อง ฉันต้องการติดตั้งและเริ่มต้นใหม่เหมือนกัน
สจ๊วต

คำตอบ:


15

ใช่. คุณสามารถติดตั้งการอัปเดตทั้งหมดที่มี - ผ่าน Windows Update ในแผงควบคุมของคุณหรือโล่ WU สีเหลืองในถาดระบบใกล้นาฬิกา จากนั้นเมื่อเสร็จแล้วคุณสามารถทำการรีบูตได้จากเมนูเริ่ม (หรือเรียกการปิด / r จากบรรทัดคำสั่ง)

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


ใช่ติดตั้งด้วยตนเองแล้วทำการรีสตาร์ทตามปกติ
Brent Pabst

3
การรีสตาร์ทปกติไม่ปรากฏว่าติดตั้งการปรับปรุงจริง
CoolUserName

2
CoolUserName - ใช่ฉันรู้ นั่นเป็นเหตุผลที่ฉันบอกว่า 1) ติดตั้งการอัปเดตแล้ว 2) ทำการรีสตาร์ท
mfinni

10

มีประโยชน์บางอย่างในการติดตั้งการอัปเดตระหว่างการรีบูต / ปิดเครื่อง:

  • การติดตั้งไม่ได้ทำให้ช้าลงหรือถูกแก้ไขโดยซอฟต์แวร์อื่นที่ทำงานอยู่ AVP ฯลฯ

  • ไม่มี UI ที่จะจัดการคลิกผ่าน ฯลฯ มันทำงานได้เร็วขึ้น เมื่อเสร็จแล้วในกรณีที่มีการรีบู๊ตเครื่องคอมพิวเตอร์พร้อมที่จะไป

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

ShutdownWithUpdates /r /f

จากสิ่งที่ฉันเห็นมันสามารถรีบูตและติดตั้งการอัปเดตบนเวิร์กสเตชันระยะไกลในการตั้งค่าไดเรกทอรีที่ใช้งานอยู่

อ่านเพิ่มเติมได้ที่นี่


8

ฉันเห็นว่านี่เป็นคำถามที่เก่ากว่า แต่ตอนนี้เป็นไปได้ที่จะติดตั้งการอัปเดตแล้วรีบูตโดยใช้ Powershell โดยเฉพาะคุณจะต้องดาวน์โหลดและติดตั้งการปรับปรุง Windows PowerShell โมดูล จากนั้นคุณสามารถเรียกใช้คำสั่งGet-WUInstall -AcceptAll -AutoReboot(มีสวิตช์และอาร์กิวเมนต์อื่น ๆ เพื่อควบคุมการติดตั้งการปรับปรุง) นี่จะทำให้ Windows ดาวน์โหลดการปรับปรุงติดตั้งและทำการรีบูตเมื่อเสร็จสิ้น ในความคิดของฉันนี้เป็นที่ดีสำหรับเซิร์ฟเวอร์เพราะคุณสามารถเรียกใช้คำสั่งเดียวแล้วเดินออกไป


2

ไม่มีวิธีในการเริ่มต้น "ติดตั้งการปรับปรุงและเริ่มต้นใหม่" ด้วยตนเอง คุณสามารถกำหนดเวลาสำหรับการอัปเดตที่จะติดตั้งแล้วระบุว่าเครื่องสามารถรีบูตได้หลังจาก Automatic Updates ไม่ว่าจะผ่านทางแผงควบคุม Automatic Updates (หรือ Windows Update) โดยตรงผ่านรีจิสตรีหรือผ่านนโยบายกลุ่ม:

http://support.microsoft.com/kb/328010

แต่เท่าที่ตัวเลือก "ติดตั้งการอัปเดตและรีบูต" เพียงคลิกเดียวก็ไม่มี


ใน Windows 10 มี
Mick

2

สิ่งนี้จะปรากฏขึ้นสูงในการค้นหาของ Google "ติดตั้งและรีสตาร์ทไม่ติดตั้งและปิดเครื่อง" ดังนั้นฉันคิดว่าฉันควรเพิ่มวิธีแก้ปัญหาที่ฉันเขียนลงไปสำหรับปัญหาที่น่ารำคาญนี้ (ผู้คนบอกฉันว่า Win10 มีสิ่งนี้ตามค่าเริ่มต้น แต่ฉันไม่ได้ใช้บน Win10)

ใช้งานได้สองไฟล์แบตช์ อันแรกเรียกว่า "rebootAfterUpdates.bat"

@echo OFF
@setlocal ENABLEEXTENSIONS
@set REBOOT_KEY="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired"
@SET REGDWORD=REG_DWORD
@SET VALUEVAL=0x1

@REM skip=4 may be required on some versions of Windows
@FOR /F "usebackq skip=2 tokens=1-3" %%A IN (`reg query %REBOOT_KEY% /s 2^>nul`) DO (
    @IF %%B EQU %REGDWORD% (
        @IF %%C EQU %VALUEVAL% (
            call :REBOOT
        )
    )
)

:NOREBOOT
@Echo No reboot required
exit /b 36877
REM 36877 is 0x900D (i.e. Good, no reboot required)
:REBOOT
@ECHO Here We REBOOT
SHUTDOWN -r -f -t 10
exit /b 3059719
REM 3059719 is 0x2EB007 (i.e. REBOOT was triggered)

อันที่สองเรียกว่า "scheduleRebootAfterUpdates.bat":

@schtasks /query /TN RebootAfterUpdates > doh
@findstr /B /I "RebootAfterUpdates" doh >nul
@if %errorlevel%==0  goto :update
@goto :create

:update
@del doh
@SCHTASKS /Change /TN RebootAfterUpdates /SD %DATE%
@echo Task updated to execute today
@goto :exitBat

:create
@del doh
@SCHTASKS /Create /SC ONCE  /TN RebootAfterUpdates /TR "C:\tmp\Scripts\rebootAfterUpdates.bat" /ST 23:55 /sd %DATE%  /ru SYSTEM /f
@echo Task created. Set the "Wake to Execute Flag" through Task Scheduler GUI

:exitBat
@exit /b

ไฟล์ทั้งสองจะอยู่ใน C: \ tmp \ Scripts \ เมื่อ Windows ดึงคุณไปที่ "Install Updates" ให้ปล่อยให้มันเริ่มติดตั้งการอัพเดท ในขณะที่ติดตั้งการอัปเดตให้เรียกใช้ "scheduleRebootAfterUpdates.bat"

พื้นหลังของการดำเนินการ:

หากการปรับปรุงต้องการการรีบูตรีจิสตรีคีย์ (ภายใต้คีย์การลงทะเบียน WindowsUpdate) จะถูกตั้งค่าเป็น 0x1

เราตรวจสอบว่ากุญแจเหล่านี้มีอยู่ในไฟล์ bat แรกหรือไม่ หากเป็นเช่นนั้นให้รีบูททันที

โดยปกติฉันเรียกการปรับปรุงเมื่อจะออกจากงาน (และประมาณ 4-5 ชั่วโมงก่อนเที่ยงคืน)

ไม้ตีที่สองสร้างภารกิจตามกำหนดเวลา (หรืออัปเดตงานที่มีอยู่เพื่อรัน 5 นาทีก่อนเที่ยงคืน) และงานที่กำหนดเวลาไว้นี้จะดำเนินการไม้ตีแรก

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

นอกจากนี้คุณสามารถตั้งค่า 'เครื่องปลุกเพื่อเรียกใช้งาน' จาก GUI ตัวกำหนดเวลางานรวมทั้งตรวจสอบรหัสส่งคืนการเรียกใช้เพื่อดูสิ่งที่เกิดขึ้นครั้งล่าสุด

PS ทดสอบบน Win7 64 บิต

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