Cách tự động cập nhật phần mềm miễn phí với Chocolatey

Bạn đã có các ứng dụng trên máy tính của mình như Spotify , Adobe Reader , Chrome , Firefox , 7-Zip , VLC Media Player ... danh sách(VLC Media Player…the list) vẫn tiếp tục và chúng hoàn toàn miễn phí. Chúng tôi sẽ làm gì nếu không có phần mềm miễn phí(freeware) ? Tuy nhiên, các ứng dụng này yêu cầu cập nhật thường xuyên để sửa các lỗ hổng bảo mật và giới thiệu các tính năng mới và hữu ích. Cập nhật không bao giờ xảy ra vào một thời điểm thuận tiện.

Đó là nơi Chocolatey phát huy tác dụng. Sử dụng ứng dụng miễn phí Chocolatey để cập nhật phần mềm của bạn. Thật dễ dàng, nhanh chóng, đơn giản và chúng tôi đã đề cập đến miễn phí chưa? Có vẻ như(Seems) quá tốt là đúng, nhưng nó là. Nhưng Chocolatey là gì?

Chocolatey là gì?

Nếu bạn chưa thực hiện những việc trong dòng lệnh Windows(Windows command line) , PowerShell hoặc Linux(Linux command line) , thì khái niệm Chocolatey có thể hơi kỳ lạ. Chocolatey là một chương trình cấp máy giúp bạn quản lý phần mềm(manage software) .

Cấp độ máy nghĩa là không có giao diện người dùng(user interface) đồ họa giúp bạn thực hiện mọi việc. Tất cả các lệnh phải được nhập. Đừng (Don)để(t let) điều đó làm bạn sợ hãi! Nếu bạn có thể viết từ, bạn có thể thành thạo điều này.

Làm cách nào để cài đặt Chocolatey?

Có một số điều mà Chocolatey cần để hoạt động. Khi một chương trình cần các chương trình khác của các tính năng Windows để hoạt động, các chương trình cần thiết đó được gọi là phần phụ thuộc. Chocolatey - những phụ thuộc mà bạn phải sử dụng ít nhất là:

  • Windows 7 trở lên
  • PowerShell phiên bản 2 hoặc mới hơn
  • .NET Framework 4 hoặc mới hơn
  • Ngoài ra, bạn phải có quyền truy cập quản trị viên(administrator access) trên máy tính của mình

Nếu bạn đã có Windows 7 hoặc mới hơn, thì bạn đã có PowerShell phiên bản 2(PowerShell version 2) hoặc mới hơn. Nếu bạn không chắc mình có .NET Framework 4 hay không, đừng lo lắng. Khi cài đặt Chocolatey , nếu bạn chưa có .NET 4, Chocolatey sẽ cài đặt nó cho bạn.

Mở PowerShell bằng cách gõ vào hộp tìm kiếm của Menu Start - (Start Menu)PowerShell . Bạn sẽ thấy một kết quả xuất hiện có tên Ứng dụng Windows PowerShell(Windows PowerShell App) .

Nhấp chuột phải vào đó và chọn Run as Administrator . Thực hiện điều này được gọi là chạy PowerShell trong một phiên bản nâng cao(elevated instance) . Nó được nâng lên thành đặc quyền của Quản trị viên. Cửa sổ PowerShell(PowerShell window) sẽ mở ra.

Trong cửa sổ PowerShell(PowerShell window) , nhập hoặc sao chép(type or copy) và dán lệnh:

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’))

Phần Set-ExecutionPolicy Bypass -Scope Process -Force cho PowerShell biết rằng bạn không muốn thực thi chính sách thực thi bị hạn chế chỉ cho điều tiếp theo này. PowerShell , theo mặc định, sẽ chỉ cho phép các quy trình đã ký chạy. Đây là cài đặt bảo mật(security setting) cao nhất . Nhưng chúng ta cần chạy quá trình cài đặt Chocolatey không dấu này .

Phần iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’)) yêu cầu PowerShell truy cập trang web Chocolatey(Chocolatey website) , tải xuống bản cài đặt .ps1 script và chạy nó. Đó là phần thực sự cài đặt Chocolatey .

Bạn sẽ thấy một loạt văn bản lướt(text fly) qua. Hãy(Feel) quay lại và đọc nó để bạn biết những gì vừa xảy ra. Cuối cùng, nó gợi ý rằng bạn nên chạy lệnh choco /? để xem danh sách các chức năng. Đó là một cách tốt để đảm bảo rằng cài đặt của bạn hoạt động. Tiếp tục và chạy lệnh đó.

Một đống văn bản khác sẽ bay qua, cũng rất tốt để đọc và hiểu. Cuối cùng, nếu quá trình cài đặt Chocolatey của bạn hoạt động, bạn sẽ thấy một cái gì đó giống như sau, trong đó phần màu xanh lục liệt kê phiên bản bạn vừa cài đặt.

Cài đặt phần mềm với Chocolatey

Chúng ta hãy xem nhanh cách cài đặt phần mềm với Chocolatey trước khi chúng ta cập nhật phần mềm với nó.

Truy cập trang https://chocolatey.org/packages để duyệt qua phần mềm có sẵn qua Chocolatey . Bạn sẽ thấy rằng chúng được gọi là gói.

Tìm một gói mà bạn muốn cài đặt. Đối với ví dụ này, chúng tôi sẽ sử dụng Malwarebytes Anti-Malware . Luôn luôn tốt nếu có Malwarebyte trên máy tính của bạn.

Trong phiên bản nâng cao của PowerShell , hãy sử dụng lệnh choco install malwarebytes . Đó là nó. Quá trình cài đặt sẽ bắt đầu. Nó sẽ dừng lại với văn bản sau:

Nếu bạn cảm thấy thoải mái khi cho phép Chocolatey quản lý phần mềm của mình, thì khi quá trình cài đặt này hoàn tất, chúng tôi nên sử dụng lệnh choco tính năng enable -n allowGlobalConfirmation(choco feature enable -n allowGlobalConfirmation) để chúng tôi có thể tự động cài đặt và cập nhật trong tương lai. Hiện tại, hãy sử dụng A để hoàn tất quá trình cài đặt.

Bạn sẽ thấy rằng Malwarebytes đang tải xuống và sau đó bắt đầu cài đặt.

Trong khoảng một phút, Malwarebytes sẽ được tải xuống và cài đặt mà bạn không cần thực hiện thêm bất kỳ thao tác nào.

Cập nhật phần mềm với Chocolatey

Bây giờ chúng tôi đã cài đặt một số phần mềm, chúng tôi có thể thử cập nhật phần mềm đó bằng Chocolatey . Một lần nữa(Again) , bạn cần mở PowerShell với tư cách (PowerShell)Quản trị viên(Administrator) . Sau đó, bạn có thể chạy lệnh choco nâng cấp malwarebyte(choco upgrade malwarebytes) .

Điều đó sẽ khiến Chocolatey đi ra ngoài và xem có bản cập nhật nào không rồi cập nhật nó. Chúng tôi vừa cài đặt Malwarebytes, vì vậy nó sẽ cho thấy rằng không có một gói nào được cập nhật. Không sao đâu.

Nếu bạn đã cài đặt một số gói với Chocolatey , bạn có thể cập nhật tất cả chúng bằng lệnh một dòng: choco nâng cấp tất cả -y(choco upgrade all -y) .

Điều đó càng khó càng tốt. Bây giờ những gì chúng ta phải làm để tự động cập nhật phần mềm với Chocolatey là bằng cách nào đó làm cho lệnh đó chạy theo lịch trình.

Tự động cập nhật phần mềm(Update Software) với Chocolatey

Bước tiếp theo bạn có thể thực hiện bằng cách sử dụng Wither Notepad hoặc PowerShell ISE ( Môi trường tập(Integrated Scripting Environment) lệnh tích hợp ). Chúng tôi sẽ làm ví dụ này bằng Notepad vì không phải tất cả các phiên bản Windows đều có PowerShell ISE .

Mở Notepad. Sao chép lệnh choco nâng cấp all -y(choco upgrade all -y ) vào Notepad.

Lưu nó dưới dạng tập lệnh PowerShell(PowerShell script) bằng cách đặt tên nó giống như lift-ChocoPackages.ps1(upgrade-ChocoPackages.ps1) . Phần mở rộng .ps1 cho Windows biết rằng đây là một  tập lệnh PowerShell(PowerShell script) .

Thay đổi loại tệp từ Text Documents (*.txt) thành All Files (*.*).Nếu bạn không, Windows sẽ nâng cấp nó lên-ChocoPackages.ps1.txt(upgrade-ChocoPackages.ps1.txt) và cho rằng nó chỉ là một tệp Notepad(Notepad file) .

Windows đi kèm với một tính năng tuyệt vời được gọi là Task Scheduler . Người dùng gia đình(home user) bình thường có lẽ không biết về nó, nhưng Task Scheduler là tính năng đã giúp cho nhiều thứ hoạt động thường xuyên.

Trong Start Menu, tìm kiếm(Start Menu search) trên Task Scheduler . Nhấp(Click) vào nó khi nó xuất hiện.

Khi Task Scheduler mở ra, hãy nhấp vào Task Scheduler Library ở khu vực trên cùng bên trái của cửa sổ. Thao tác này sẽ hiển thị cho bạn tất cả các tác vụ đã lên lịch hiện đang được thiết lập trên máy tính của bạn.

Trong ngăn Tác vụ(Actions) ở khu vực trên cùng bên phải, nhấp vào Tạo tác vụâ € ¦(Create Task…) . Tạo Tác vụ Cơ bản không(Create Basic Task isn) phù hợp với tình huống này, vì chúng ta sẽ sử dụng các câu lệnh đối số sau này.

Trong cửa sổ mở ra, trong tab Chung(General) , đặt tên cho nhiệm vụ như Choco Upgrade All và sau đó là Mô tả(Description ) như Cập nhật tất cả phần mềm do Chocolatey cài đặt( Updates all software installed by Chocolatey) . Nếu tài khoản người dùng(user account) hiện tại của bạn không phải là tài khoản quản trị viên(administrator account) trên máy tính của bạn, hãy sử dụng nút Thay đổi Người dùng hoặc Nhóm(Change User or Group) để chọn tài khoản Quản trị(Administrator account) viên .

Bạn cũng cần biết mật khẩu của tài khoản Quản trị(Administrator account) viên. Đảm(Make) bảo Run cho dù người dùng đã đăng nhập hay chưa(Run whether the user is logged on or not) được chọn. Điều này sẽ cho phép tập lệnh chạy ngay cả khi bạn không ở trên máy tính của mình và nó sẽ có tất cả các đặc quyền cần thiết để thực hiện công việc.

Tab Kích hoạt(Triggers) là nơi bạn cho biết nhiệm vụ khi bạn muốn nó chạy. Đối với điều này, một lần một tuần nên được nhiều. Trong ví dụ của chúng tôi, nó được thiết lập để chạy vào Chủ nhật(Sunday) hàng tuần lúc 1:00 sáng. Chọn thời điểm mà bạn không có khả năng sử dụng máy tính của mình để có hiệu suất tốt nhất.

Cũng nên chọn Dừng tác vụ nếu nó chạy lâu hơn:(Stop the task if it runs longer than:) và thay đổi thời lượng thành 2 giờ. Bạn có thể điều chỉnh điều đó theo ý muốn. Để cho phép trình kích hoạt áp dụng, bạn phải chọn hộp Đã bật(Enabled) ở dưới cùng.

Chuyển đến tab Tác vụ và chúng tôi sẽ cho biết nhiệm vụ mà chúng tôi muốn nó thực hiện. (Actions)Hành động(Action) sẽ được đặt mặc định là Bắt đầu một chương trình(Start a program) . Đó là những gì chúng tôi muốn vì vậy chỉ cần để lại điều đó. Trong trường Program/script , nhập powershell.exe. Điều này cho phép Windows biết bạn đang chạy tập lệnh PowerShell(PowerShell script) .

Trong trường Thêm đối số(Add arguments) , hãy nhập các đối số sau.

-noprofile - Điều này ngăn không cho các tập lệnh hồ sơ PowerShell(PowerShell profile) chạy và yêu cầu nó chỉ chạy tập lệnh mà bạn muốn.

-ExecutionPolicy Bypass - Nếu bạn không chắc chắn liệu quá trình thực thi tập lệnh đã được bật hay chưa, thì tốt hơn nếu bạn có điều này trong các đối số. Nó sẽ đảm bảo tập lệnh chạy.

-file - Đây là đối số nói với Task Scheduler rằng bất cứ thứ gì tiếp theo sau là đường dẫn đến tệp mà chúng ta muốn PowerShell chạy. Trong ví dụ của chúng tôi, tập lệnh đã được lưu vào C:\Scripts\upgrade-ChocoPackages.ps1 . Nó có thể khác trên máy tính của bạn, vì vậy hãy điều chỉnh cho phù hợp. Nếu đường dẫn đến tệp của bạn có bất kỳ tên nào có dấu cách, bạn sẽ cần đặt toàn bộ đường dẫn bên trong dấu ngoặc kép.

Đối số đầy đủ sẽ giống như -noprofile -executionpolicy bypass -file C:\Scripts\upgrade-ChocoPackages.ps1

Trên tab Điều kiện(Conditions ) , có nhiều tùy chọn hơn mà chúng ta có thể đặt về cách chạy tập lệnh. Nhìn vào chúng để biết bạn muốn áp dụng những cái nào. Đối với ví dụ này, nó được đặt thành Chỉ bắt đầu tác vụ nếu máy tính đang sử dụng nguồn AC(Start the task only if the computer is on AC power)Dừng nếu máy tính chuyển sang nguồn pin(Stop if the computer switches to battery power ) để đảm bảo chúng tôi không bị cạn pin.

Đánh thức máy tính để chạy tác vụ(Wake the computer to run this task) này được chọn để đảm bảo tác vụ chạy, cho dù máy tính đang ở chế độ ngủ hay không.

Trong tab Cài đặt , nên chọn hộp (Settings )Cho phép chạy tác vụ theo yêu cầu(Allow task to be run on demand) , để chúng tôi có thể kiểm tra tác vụ theo cách thủ công khi chúng tôi hoàn thành. Các lựa chọn mặc định cho phần còn lại vẫn ổn.

Bấm OK để hoàn tất việc tạo tác vụ đã lên lịch. Một cửa sổ sẽ bật lên với tên của người dùng bạn đã chọn trở lại trên tab Chung. Bạn phải nhập mật khẩu cho người dùng và bấm (user and click) OK . Điều này cho Windows biết rằng bạn thực sự có quyền chạy tác vụ.

Bây giờ bạn quay lại cửa sổ chính của Task Scheduler(Task Scheduler window) . Tìm nhiệm vụ mới của bạn. Nhấp chuột phải vào tác vụ và chọn (task and select) Chạy(Run ) để kiểm tra nó.

Bạn sẽ không thấy bất kỳ điều gì quan trọng xảy ra, ngoại trừ trạng thái của nhiệm vụ sẽ chuyển thành Đang chạy(Running) . Trong một phút hoặc lâu hơn, bạn sẽ thấy Thời gian chạy cuối cùng(Last Run Time ) cũng thay đổi thành dấu thời gian khi bạn bắt đầu chạy tác vụ.

Nếu bạn không nhận được bất kỳ thông báo lỗi nào, tác vụ sẽ ổn. Đóng cửa sổ Trình lập lịch tác vụ(Task Scheduler window) và đừng lo lắng về việc phải cập nhật lại thủ công bất kỳ phần mềm nào bạn đã cài đặt với Chocolatey .

Tất cả đã được làm xong!

Có vẻ như rất nhiều công việc để thiết lập điều này. Hãy xem xét điều này: bạn đã mất khoảng từ 10 đến 30 phút để thiết lập điều này. Nếu bạn đang sử dụng tính năng này để cập nhật 10 chương trình và mỗi chương trình mất khoảng 6 phút để thực hiện quá trình cập nhật hàng tháng, bạn đã tiết kiệm cho mình từ 30 đến 50 phút.

Bạn đã đi trước trong thời gian được lưu. Trong suốt một năm, có thể tiết kiệm được 6 đến 10 giờ thời gian. Đó là không bao gồm thời gian tiết kiệm được bằng cách sử dụng Chocolatey để cài đặt các chương trình trong một hoặc hai phút thay vì 10 hoặc 15 phút.



About the author

Tôi là một chuyên gia Windows 10 được đề xuất với hơn 10 năm kinh nghiệm trong ngành phần mềm. Tôi có kiến ​​thức chuyên môn về cả Explorer và Office 365, đồng thời tôi đặc biệt có kỹ năng trong việc cá nhân hóa và tùy chọn giao diện cho người dùng của mình. Kỹ năng của tôi là trọng tâm của công việc kinh doanh của tôi, đó là cung cấp dịch vụ khách hàng tuyệt vời thông qua các bài đánh giá trực tuyến và tận dụng các công nghệ như AI để cải thiện hỗ trợ.



Related posts