Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Windows

วิธี Restart คอมพิวเตอร์ Windows 10 แบบ Remote ด้วย PowerShell

ทุกเมื่อ ส่วนใหญ่เป็นผู้ดูแลระบบ (system administrator) จะต้องรีสตาร์ทเซิร์ฟเวอร์หรือระบบ ปกติคุณสามารถ Remote Shut down หรือ Restart Windows 10 ผ่าน graphical user interface – PowerShell มีหลายวิธีสำหรับการรีบูทคอมพิวเตอร์ระยะไกล และเราจะรेखากลยุทธ์ 6 วิธีที่รู้จักในบทความนี้

วิธี Restart คอมพิวเตอร์ Windows 10 แบบ Remote ด้วย PowerShell

วิธี Remotely Restart Windows 10 ด้วย PowerShell

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

คุณจะต้องมี:

  • บัญชีผู้ใช้บนคอมพิวเตอร์ระยะไกลในกลุ่ม local administrator
  • Windows PowerShell หรือ PowerShell Core

1] รีสตาร์ทคอมพิวเตอร์ระยะไกลด้วย Restart-Computer

Cmdlet นี้ใช้งานง่ายด้วยพารามิเตอร์ที่ยืดหยุ่น ข้อกำหนดเพิ่มเติมสำหรับคำสั่งให้ทำงานคือ ต้องแน่ใจว่า WinRM ถูกกำหนดค่าและอนุญาตผ่าน Windows firewall ของคอมพิวเตอร์ระยะไกล และ WMI ถูกอนุญาตผ่าน Windows firewall

Restart-Computer -ComputerName $ComputerName -Force

เพื่อรีสตาร์ทคอมพิวเตอร์หลายเครื่องพร้อมกัน (parallel) ให้รันคำสั่งต่อไปนี้:

$ComputerArray | ForEach-Object -Parallel { Restart-Computer -ComputerName $_ -Force } -ThrottleLimit 3

2] รีสตาร์ทคอมพิวเตอร์ระยะไกลด้วย Invoke-CimMethod

Invoke-CimMethod ทำงานโดยใช้วิธี WIM เพื่อรีบูทระบบระยะไกล – แม้จะไม่ยืดหยุ่นเท่า Restart-Computer cmdlet

ข้อกำหนดเพิ่มเติมสำหรับคำสั่งให้ทำงานคือ ต้องแน่ใจว่า WinRM ถูกกำหนดค่าและอนุญาตผ่าน Windows firewall ของคอมพิวเตอร์ระยะไกล

Invoke-CimMethod -ComputerName $ComputerName -ClassName 'Win32_OperatingSystem' -MethodName 'Reboot'

3] รีสตาร์ทคอมพิวเตอร์ระยะไกลด้วย shutdown.exe

shutdown.exe คือ executable ในตัวมาตรฐานที่ Windows เสนอเพื่อรีสตาร์ทระบบ และมันไม่ใช่คำสั่ง PowerShell แต่เสนอตัวเลือกที่แข็งแกร่งหลายอย่าง

ข้อกำหนดเพิ่มเติมสำหรับคำสั่งให้ทำงานคือ ต้องแน่ใจว่าคอมพิวเตอร์ระยะไกลมี Remote Registry service เปิดใช้งาน และ WMI ถูกอนุญาตผ่าน Windows firewall

shutdown.exe /m \\remotecomputer /r /t 0

4] รีสตาร์ทคอมพิวเตอร์ระยะไกลด้วย PSExec.exe

หนึ่งใน utilities ที่ใช้มากที่สุดใน Sysinternals toolkit psexec.exe เสนอความสามารถเฉพาะตัวหลายอย่างที่ทำให้การโต้ตอบกับระบบระยะไกลง่ายขึ้น

ข้อกำหนดเพิ่มเติมสำหรับคำสั่งให้ทำงานคือ ต้องแน่ใจว่า SMB Service กำลังรัน, file and printer sharing เปิดใช้งาน, simple file sharing ปิดใช้งาน และ admin$ administrative share พร้อมใช้งาน

psexec.exe -d -h \\remotecomputer "shutdown.exe /r /t 0 /f"

5] รีสตาร์ทคอมพิวเตอร์ระยะไกลด้วย RunDLL32.exe

rundll32.exe เสนอวิธีในการรันเมธอดบางอย่างกับ executables ภายในและ Windows APIs เช่น shell32.dll มีสองวิธีที่คุณสามารถรีสตาร์ทระบบโดยใช้ฟังก์ชันนี้ แต่วิธีนี้ไม่สามารถใช้งานระยะไกลได้ด้วยตัวมันเอง คุณสามารถรวมกับ PowerShell ผ่าน Invoke-Command บนระบบระยะไกล

Method 1:

Invoke-Command -ComputerName $ComputerName -ScriptBlock { & rundll32.exe user.exe ExitWindowsExec }

Method 2:

Invoke-Command -ComputerName $ComputerName -ScriptBlock { & rundll32.exe user.exe ExitWindowsExec }

6] รีสตาร์ทคอมพิวเตอร์ระยะไกลด้วย Taskkill.exe

สุดท้ายแต่ไม่ใช่น้อยที่สุด taskkill.exe เป็นอีกหนึ่ง Windows utility ที่เสนอฟังก์ชันบางอย่างเพื่อรีสตาร์ท Windows แบบอ้อมๆ โดยการจบกระบวนการ lsass.exe คุณจะบังคับให้ Windows รีสตาร์ท

taskkill.exe /S \\remotecomputer /IM lsass.exe /F

นั่นคือ 6 วิธีในการใช้ PowerShell เพื่อรีสตาร์ทคอมพิวเตอร์ระยะไกล!

วิธี Restart คอมพิวเตอร์ Windows 10 แบบ Remote ด้วย PowerShell