วิธีอัปเดตซอฟต์แวร์ฟรีโดยอัตโนมัติด้วย Chocolatey
คุณมีแอพในคอมพิวเตอร์ของคุณ เช่นSpotify , Adobe Reader , Chrome , Firefox , 7-Zip , VLC Media Player(VLC Media Player…the list)และรายการทั้งหมดนั้นฟรี เราจะทำอย่างไรถ้าไม่มีฟรีแวร์(freeware) ? กระนั้น แอพเหล่านี้ต้องการการอัปเดตบ่อยครั้งเพื่อแก้ไขข้อผิดพลาดด้านความปลอดภัยและแนะนำคุณสมบัติใหม่และมีประโยชน์ การอัปเดตจะไม่เกิดขึ้นในเวลาที่สะดวก
นั่นคือสิ่ง ที่Chocolateyเข้ามาเล่น ใช้แอพฟรีChocolateyเพื่อให้ซอฟต์แวร์ของคุณทันสมัยอยู่เสมอ มันง่าย รวดเร็ว ง่ายและเราพูดถึงฟรีหรือเปล่า? ดูเหมือน(Seems)จะดีเกินจริง แต่ก็เป็น แต่Chocolatey คือ อะไร ?
ช็อกโกแลตคืออะไร?
หากคุณยังไม่ได้ทำสิ่งต่างๆ ในcommand line(Windows command line) , PowerShellหรือLinux command line ของ Windows แนวคิดของChocolateyอาจดูแปลกไปหน่อย Chocolateyเป็นโปรแกรมระดับเครื่องที่ช่วยคุณจัดการ(manage software)ซอฟต์แวร์
ระดับเครื่องหมายความว่าไม่มี อินเทอร์เฟซผู้ใช้(user interface)แบบกราฟิกที่ช่วยให้คุณทำสิ่งต่างๆ ได้ ต้องพิมพ์คำสั่งทั้งหมด อย่า(Don)ปล่อยให้(t let)สิ่งนั้นทำให้คุณตกใจ! หากคุณสามารถเขียนคำได้ คุณก็จะเชี่ยวชาญสิ่งนี้
ฉันจะติดตั้ง Chocolatey ได้อย่างไร
มีสองสิ่งที่Chocolateyต้องการในการทำงาน เมื่อโปรแกรมต้องการโปรแกรมอื่นๆ ของ คุณสมบัติ Windowsเพื่อทำงาน โปรแกรมที่จำเป็นเหล่านั้นจะเรียกว่าการพึ่งพา การพึ่งพาของ Chocolatey(Chocolatey)คุณต้องใช้อย่างน้อย:
- Windows 7 หรือใหม่กว่า
- PowerShell เวอร์ชัน 2 หรือใหม่กว่า
- .NET Framework 4 หรือใหม่กว่า
- นอกจากนี้ คุณต้องมีสิทธิ์การเข้าถึงของผู้ดูแลระบบ(administrator access)บนคอมพิวเตอร์ของคุณ
หากคุณมีWindows 7หรือใหม่กว่า แสดงว่าคุณมี PowerShell เวอร์ชัน 2(PowerShell version 2)หรือใหม่กว่าอยู่แล้ว หากคุณไม่แน่ใจว่ามี .NET Framework 4อยู่หรือไม่ ก็ไม่ต้องกังวล เมื่อติดตั้งChocolateyหากคุณไม่มี .NET 4 Chocolatey จะติดตั้งให้คุณ
เปิด PowerShell โดยพิมพ์ในช่องค้นหาของStart Menu PowerShell คุณควรเห็นผลลัพธ์ชื่อWindows PowerShell App(Windows PowerShell App)
คลิกขวาที่นั้นและเลือกRun as(Run as Administrator) Administrator การทำเช่นนี้เรียกว่าการเรียกใช้PowerShellในอินสแตนซ์ที่มีการยก(elevated instance)ระดับ มันถูกยกระดับเป็นสิทธิ์ของผู้ดูแลระบบ หน้าต่างPowerShell(PowerShell window)จะเปิดขึ้น
ในหน้าต่าง PowerShell(PowerShell window)ให้พิมพ์หรือคัดลอก(type or copy)และวางคำสั่ง:
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’))
ส่วนSet-ExecutionPolicy Bypass -Scope Process -Force บอกPowerShellว่าคุณไม่ต้องการบังคับใช้นโยบายการดำเนินการที่จำกัดสำหรับสิ่งต่อไปนี้ โดยค่าเริ่มต้น PowerShell(PowerShell)จะอนุญาตเฉพาะกระบวนการที่ลงนามเท่านั้นที่จะทำงาน เป็นการตั้งค่า ความปลอดภัย(security setting)สูงสุด แต่เราจำเป็นต้องเรียกใช้กระบวนการติดตั้งChocolatey ที่ไม่ได้ลงชื่อ นี้
คำiex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’)) ของคำสั่งบอกให้PowerShellไปที่เว็บไซต์ Chocolatey(Chocolatey website)ดาวน์โหลดการติดตั้ง .ps1 สคริปต์และเรียกใช้ นั่นคือส่วนที่ติดตั้ง Chocolateyจริงๆ
คุณ จะเห็นข้อความจำนวนมากบิน(text fly)ผ่านไป ลอง(Feel)กลับไปอ่านดู จะได้รู้ว่าเกิดอะไรขึ้น ในตอนท้ายแนะนำให้รันคำสั่งchoco /? เพื่อดูรายการฟังก์ชัน นั่นเป็นวิธีที่ดีเพื่อให้แน่ใจว่าการติดตั้งของคุณใช้งานได้ ไปข้างหน้าและเรียกใช้คำสั่งนั้น
อีกกองข้อความจะบินผ่านไปซึ่งเป็นสิ่งที่ดีในการอ่านและทำความเข้าใจ ในตอนท้าย หากการติดตั้งChocolatey ของ คุณใช้งานได้ คุณจะเห็นสิ่งต่อไปนี้ โดยที่ส่วนสีเขียวจะแสดงเวอร์ชันที่คุณเพิ่งติดตั้ง
การติดตั้งซอฟต์แวร์ด้วย Chocolatey
มาดูการติดตั้งซอฟต์แวร์กับ Chocolatey อย่างรวดเร็ว ก่อนที่เราจะทำการอัพเดตซอฟต์แวร์ด้วย
ไปที่หน้าhttps://chocolatey.org/packages เพื่อเรียกดูซอฟต์แวร์ ที่มีให้ผ่านChocolatey คุณจะเห็นว่าพวกเขาเรียกว่าแพ็คเกจ
ค้นหาแพ็คเกจที่คุณต้องการติดตั้ง สำหรับตัวอย่างนี้ เราจะใช้Malwarebytes Anti-Malware (Malwarebytes Anti-Malware)การมี Malwarebytes บนคอมพิวเตอร์ของคุณเป็นเรื่องที่ดีเสมอ
ในอินสแตนซ์ระดับสูงของPowerShellให้ใช้คำสั่งchoco ติดตั้ง(choco install malwarebytes) malwarebytes นั่นแหละ. การติดตั้งจะเริ่มขึ้น จะหยุดด้วยข้อความต่อไปนี้:
หากคุณสบายใจที่จะอนุญาตให้Chocolateyจัดการซอฟต์แวร์ของคุณ เมื่อการติดตั้งนี้เสร็จสิ้น เราควรใช้คุณลักษณะ choco enable -n allowGlobalConfirmation(choco feature enable -n allowGlobalConfirmation)คำสั่ง เพื่อให้เราติดตั้งและอัปเดตได้โดยอัตโนมัติในอนาคต สำหรับตอนนี้ ให้ใช้Aเพื่อทำการติดตั้งให้เสร็จสิ้น
คุณ จะเห็นว่าMalwarebytesกำลังดาวน์โหลดและเริ่มติดตั้ง
ในอีกประมาณหนึ่งนาทีMalwarebytesจะถูกดาวน์โหลดและติดตั้งโดยที่คุณไม่ต้องดำเนินการใดๆ เพิ่มเติม
อัปเดตซอฟต์แวร์ด้วย Chocolatey
ตอนนี้เราได้ติดตั้งซอฟต์แวร์แล้ว เราสามารถลองอัปเดตด้วยChocolatey อีกครั้ง(Again)คุณต้องเปิดPowerShell เป็น (PowerShell)ผู้ดูแล(Administrator)ระบบ จาก นั้นคุณสามารถเรียกใช้คำสั่งchoco upgrade malwarebytes
นั่นจะทำให้Chocolateyออกไปและดูว่ามีการอัปเดตหรือไม่แล้วอัปเดต เราเพิ่งติดตั้ง Malwarebytes ดังนั้นจึงแสดงว่าไม่มีการอัปเดตแพ็คเกจใดเลย ไม่เป็นไร
หากคุณได้ติดตั้งหลายแพ็คเกจด้วยChocolatey คุณสามารถอัปเดตแพ็คเกจทั้งหมดได้ ด้วยคำสั่งบรรทัดเดียว: choco upgrade all -y
มันยากอย่างที่คิด ตอนนี้สิ่งที่เราต้องทำเพื่ออัปเดตซอฟต์แวร์โดยอัตโนมัติด้วยChocolateyคือการทำให้คำสั่งนั้นทำงานตามกำหนดเวลา
อัปเดตซอฟต์แวร์(Update Software)โดยอัตโนมัติด้วยChocolatey
ขั้นตอนต่อไปที่คุณสามารถทำได้โดยใช้ Wither Notepadหรือ PowerShell ISE ( Integrated Scripting Environment ) เราจะทำตัวอย่างนี้โดยใช้Notepadเนื่องจากไม่ใช่ทุก เวอร์ชันของ Windowsที่มีPowerShell ISE
เปิดแผ่นจดบันทึก คัดลอกคำสั่งchoco upgrade all -yลงใน Notepad
บันทึกว่าเป็นสคริปต์ PowerShell(PowerShell script)โดยตั้งชื่อบางอย่างเช่นupgrade -ChocoPackages.ps1 (upgrade-ChocoPackages.ps1)ส่วนขยาย .ps1 จะบอก Windows ว่านี่คือ สคริปต์PowerShell(PowerShell script)
เปลี่ยนประเภทไฟล์จากText Documents (*.txt)เป็นAll Files (*.*).ถ้าคุณไม่ ทำ Windowsจะทำให้เป็นการอัพเกรด ChocoPackages.ps1.txt(upgrade-ChocoPackages.ps1.txt)และคิดว่ามันเป็นเพียงไฟล์Notepad(Notepad file)
Windows มาพร้อมกับคุณสมบัติที่ยอดเยี่ยมที่เรียกว่าTask Scheduler (Task Scheduler)ผู้ใช้ตามบ้าน(home user)ทั่วไปอาจไม่ทราบเรื่องนี้ แต่Task Schedulerเป็นคุณลักษณะที่ทำให้หลาย ๆ อย่างทำงานเป็นประจำอยู่แล้ว
ในการค้นหาเมนู Start(Start Menu search)บนTask Scheduler คลิก(Click)ที่มันเมื่อมันขึ้นมาเป็นผล
เมื่อTask Schedulerเปิดขึ้น ให้คลิกที่Task Scheduler Libraryที่ด้านซ้ายบนของหน้าต่าง การดำเนินการนี้จะแสดงงานตามกำหนดเวลาทั้งหมดที่ตั้งค่าไว้ในคอมพิวเตอร์ของคุณ
ในช่องActionsที่ด้านขวาบน ให้คลิกCreate Task (Create Task…)Create Basic Task(Create Basic Task isn)ไม่เหมาะกับสถานการณ์นี้ เนื่องจากเราจะใช้คำสั่งอาร์กิวเมนต์ในภายหลัง
ในหน้าต่างที่เปิดขึ้น ใน แท็บ ทั่วไป(General)ให้ตั้งชื่องาน เช่นChoco Upgrade Allแล้วตามด้วยคำอธิบาย(Description )เช่นอัปเดตซอฟต์แวร์ทั้งหมดที่ติดตั้งโดย Chocolatey ( Updates all software installed by Chocolatey)หากบัญชีผู้ใช้(user account) ปัจจุบันของคุณ ไม่ใช่บัญชีผู้ดูแลระบบ(administrator account)บนคอมพิวเตอร์ของคุณ ให้ใช้ปุ่มเปลี่ยนผู้ใช้หรือกลุ่ม(Change User or Group)เพื่อเลือกบัญชีผู้ดูแล(Administrator account)ระบบ
คุณจะต้องทราบรหัสผ่านของบัญชีผู้ดูแลระบบ ด้วย (Administrator account)ตรวจสอบ ให้(Make)แน่ใจว่า ได้ เลือกRun ไม่ว่าผู้ใช้จะเข้าสู่ระบบหรือไม่ (Run whether the user is logged on or not)ซึ่งจะช่วยให้สคริปต์ทำงานแม้ว่าคุณจะไม่ได้ใช้งานคอมพิวเตอร์และจะมีสิทธิ์ทั้งหมดที่จำเป็นในการทำงาน
แท็ บทริกเกอร์(Triggers)เป็นที่ที่คุณบอกงานเมื่อคุณต้องการเรียกใช้ สำหรับสิ่งนี้สัปดาห์ละครั้งควรจะเพียงพอ ในตัวอย่างของเรา กำหนดให้เรียกใช้ทุกวันอาทิตย์(Sunday)เวลา 01:00 น. เลือกเวลาที่คุณไม่น่าจะใช้คอมพิวเตอร์ของคุณเพื่อประสิทธิภาพที่ดีที่สุด
ขอแนะนำให้ตรวจสอบหยุดงานด้วยหากทำงานนานกว่า:(Stop the task if it runs longer than:)และเปลี่ยนระยะเวลาเป็น 2 ชั่วโมง คุณสามารถปรับเปลี่ยนได้ตามที่คุณต้องการ ในการอนุญาตให้ใช้ทริกเกอร์ คุณต้องทำ เครื่องหมายที่ช่อง Enabledที่ด้านล่าง
ไปที่แท็บ การ ดำเนิน การ แล้วเราจะบอกงานว่าต้องการให้ทำอะไร (Actions)การดำเนินการ(Action)จะถูกตั้งค่าเริ่มต้นให้เริ่มโปรแกรม (Start a program)นั่นคือสิ่งที่เราต้องการ ปล่อยมันไปเถอะ ในฟิลด์Program/scriptซึ่งจะทำให้ Windows รู้ว่าคุณกำลังจะเรียกใช้ สคริปต์PowerShell(PowerShell script)
ใน ฟิลด์ เพิ่มอาร์กิวเมนต์(Add arguments)ให้ป้อนอาร์กิวเมนต์ต่อไปนี้
-noprofile - สิ่งนี้จะป้องกันไม่ให้ สคริปต์ โปรไฟล์ PowerShell(PowerShell profile)ทำงานและบอกให้เรียกใช้สคริปต์ที่คุณต้องการ
-ExecutionPolicy Bypass – หากคุณไม่แน่ใจว่ามีการเปิดใช้การเรียกใช้สคริปต์หรือไม่ ควรมีสิ่งนี้ในอาร์กิวเมนต์ จะทำให้แน่ใจว่าสคริปต์ทำงาน
-file -นี่คืออาร์กิวเมนต์ที่บอก Task Scheduler ว่าสิ่งต่อไปนี้คือเส้นทางไปยังไฟล์ที่เราต้องการให้ PowerShellทำงาน ในตัวอย่างของเรา สคริปต์ถูกบันทึกไปที่C:\Scripts\upgrade-ChocoPackages.ps1 ChocoPackages.ps1 บนคอมพิวเตอร์ของคุณอาจแตกต่างกัน ดังนั้นให้ปรับตามนั้น หากพาธไปยังไฟล์ของคุณมีชื่อที่มีช่องว่างอยู่ คุณจะต้องใส่พาธทั้งหมดไว้ในเครื่องหมายคำพูด
อาร์กิวเมนต์แบบเต็มจะมีลักษณะ-noprofile -executionpolicy bypass -file C:\Scripts\upgrade-ChocoPackages.ps1
บน แท็บ เงื่อนไข(Conditions )มีตัวเลือกเพิ่มเติมที่เราสามารถตั้งค่าได้ว่าจะให้สคริปต์ทำงานอย่างไร ดูพวกเขาเพื่อดูว่าคุณต้องการสมัครอันไหน สำหรับตัวอย่างนี้ มีการตั้งค่าให้เริ่มงานเฉพาะเมื่อคอมพิวเตอร์เปิดไฟ AC(Start the task only if the computer is on AC power)และหยุดหากคอมพิวเตอร์สลับไปใช้พลังงานจากแบตเตอรี่(Stop if the computer switches to battery power )เพื่อให้แน่ใจว่าแบตเตอรี่จะไม่หมด
ปลุกคอมพิวเตอร์ให้ทำงานนี้(Wake the computer to run this task)ถูกเลือกเพื่อให้แน่ใจว่างานทำงาน ไม่ว่าคอมพิวเตอร์จะอยู่ในโหมดสลีปหรือไม่
ในแท็บการตั้งค่า ขอแนะนำให้ทำเครื่องหมายที่ช่อง (Settings )Allow task to be run on Demandเพื่อให้เราสามารถทดสอบงานด้วยตนเองเมื่อเราทำเสร็จแล้ว การเลือกเริ่มต้นสำหรับส่วนที่เหลือนั้นใช้ได้
คลิกตกลง(OK)เพื่อสิ้นสุดการสร้างงานที่กำหนดเวลาไว้ หน้าต่างจะปรากฏขึ้นพร้อมชื่อผู้ใช้ที่คุณเลือกกลับมาในแท็บทั่วไป คุณต้องป้อนรหัสผ่านสำหรับ ผู้ใช้ และคลิก(user and click) ตกลง (OK)สิ่งนี้จะบอก Windows ว่าคุณมีสิทธิ์ในการรันงานนี้
ตอนนี้คุณกลับมาที่หน้าต่าง Task Scheduler(Task Scheduler window)หลัก ค้นหางานใหม่ของคุณ คลิกขวาที่งานและเลือก(task and select) เรียกใช้(Run )เพื่อทดสอบ
คุณจะไม่เห็นอะไรที่สำคัญเกิดขึ้น ยกเว้นสถานะของงานจะเปลี่ยนเป็นกำลังทำงาน (Running)ในอีกไม่กี่นาที คุณจะเห็นLast Run Timeเปลี่ยนเป็นการประทับเวลาเมื่อคุณเริ่มทำงาน
หากคุณไม่ได้รับข้อความแสดงข้อผิดพลาด งานก็ควรจะเรียบร้อย ปิดหน้าต่าง Task Scheduler(Task Scheduler window)และไม่ต้องกังวลกับการอัปเดตซอฟต์แวร์ใดๆ ที่คุณติดตั้งด้วยChocolatey ด้วย ตนเองอีกครั้ง
ทุกอย่างเสร็จเรียบร้อย!
อาจดูเหมือนงานหนักในการตั้งค่านี้ พิจารณาสิ่งนี้: คุณใช้เวลาประมาณ 10 ถึง 30 นาทีในการตั้งค่านี้ หากคุณกำลังใช้สิ่งนี้เพื่ออัปเดต 10 โปรแกรม และแต่ละโปรแกรมใช้เวลาประมาณ 6 นาทีในการอัปเดตทุกเดือน แสดงว่าคุณประหยัดเวลาได้ระหว่าง 30 ถึง 50 นาที
คุณอยู่ข้างหน้าในเวลาที่บันทึกไว้ ในช่วงเวลาหนึ่งปี อาจช่วยประหยัดเวลาได้ 6 ถึง 10 ชั่วโมง นั่นไม่รวมเวลาที่บันทึกไว้โดยรู้วิธีใช้Chocolateyเพื่อติดตั้งโปรแกรมในหนึ่งหรือสองนาที แทนที่จะเป็น 10 หรือ 15 นาที
Related posts
Best Free Karaoke Software สำหรับ Windows
12 Best Free Android Calculator Apps and Widgets
5 Best Apps ซื้อ Stocks สำหรับ Free
สุดยอดซอฟต์แวร์กำจัดสปายแวร์และมัลแวร์ฟรี
วิธีการลบไฟล์โดยอัตโนมัติใน Windows
การกำหนดราคา IFTTT: Pro คุ้มค่ากับค่าใช้จ่ายหรือไม่
บอร์ด Kanban ออนไลน์ฟรีที่ดีที่สุดเพื่อจัดการโครงการใด ๆ
Twitch Turbo คืออะไรและคุ้มค่าหรือไม่
6 Best Pregnancy Apps ของ 2021
9 Best Discord Voice Changer Software (2021)
Intego Antivirus Review: ที่มีประสิทธิภาพ แต่คุณลักษณะที่ จำกัด
3 การเดินป่าที่ดีที่สุด Apps ถึง Find Trails, Log Hikes และไม่หลงทาง
5 แอพที่ดีที่สุดในการดาวน์โหลดเพลงฟรีบน Android
4 โปรแกรมดีที่สุดในการเปิดเครื่องคอมพิวเตอร์ของคุณให้เป็น Streaming Media Center
คืออะไร BetterDiscord and How การติดตั้งมันได้หรือไม่
4 Best Apps ถึง Remotely View A Webcam บน iOS and Android
Slack vs Discord: อันไหน Better?
6 Best Reddit Alternatives คุณสามารถใช้ฟรี
7 Best Apps ที่จะเป็นเพื่อน Online and IRL
10 add-on และส่วนขยาย Firefox ที่ดีที่สุด