Khi bạn cố gắng cài đặt hoặc cập nhật module PowerShell từ PowerShell Gallery trên máy tính Windows 11 hoặc Windows 10 bằng lệnh Install-Module hoặc Update-Module và nhận được thông báo lỗi Install-Module hoặc Update-Module command was found in the module PowerShellGet but the module could not be loaded, bạn có thể tham khảo các giải pháp dưới đây để khắc phục sự cố.

Module PowerShellGet là gì?
Module PowerShellGet cung cấp các lệnh để khám phá, cài đặt, cập nhật và xuất bản các sản phẩm PowerShell như Module, DSC Resources, Role Capabilities và Scripts. Tính từ tháng 4/2020, PowerShell Gallery không còn hỗ trợ các phiên bản Transport Layer Security (TLS) 1.0 và 1.1.
Khi sự cố xảy ra khi bạn chạy cmdlet Install-Module hoặc Update-Module, bạn sẽ nhận được thông báo lỗi đầy đủ như sau:
Install-Module: The ‘Install-Module’ command was found in the module ‘PowerShellGet’, but the module could not be loaded. For more information, run ‘Import-Module PowerShellGet’.
Hơn nữa, khi bạn thử chạy Import-Module PowerShellGet theo hướng dẫn của thông báo lỗi trên, bạn sẽ nhận được một trong hai thông báo lỗi sau:
Import-Module: The required module ‘PackageManagement’ is not loaded. Load the module or remove the module from ‘RequiredModules’ in the file.
HOẶC
Import-Module: The cloud file provider is not running.
Thông báo lỗi thứ hai có vẻ liên quan đến OneDrive.
Khắc phục lỗi "Install-Module command was found in the module PowerShellGet but the module could not be loaded"
Nếu lỗi Install-Module command was found in the module PowerShellGet but the module could not be loaded xảy ra trên máy tính Windows 11/10 của bạn, bạn có thể thử các giải pháp được khuyến nghị dưới đây (không theo thứ tự ưu tiên) và xem liệu chúng có giúp giải quyết vấn đề trên hệ thống của bạn hay không.
- Đặt Execution Policy thành Unrestricted
- Bật OneDrive Personal (nếu áp dụng)
- Đăng nhập bằng tài khoản người dùng khác hoặc tạo tài khoản mới
- Đặt lại Windows 11/10
Trước khi thực hiện các giải pháp dưới đây, hãy đảm bảo PowerShell đã được cập nhật và Transport Layer Security v1.2 hoặc mới hơn đã được bật và đặt làm giao thức mặc định trong phiên PS – sau đó chạy lệnh sau trong Command Prompt với quyền quản trị:
powershell.exe -NoLogo -NoProfile -Command 'Install-Module -Name PackageManagement -Force -MinimumVersion 1.4.6 -Scope CurrentUser -AllowClobber'
Sau khi lệnh thực thi xong, hãy thử lại cài đặt/cập nhật module PowerShell và kiểm tra xem có thành công hay không.
1] Đặt Execution Policy thành Unrestricted

Hầu hết người dùng bị ảnh hưởng đã khắc phục được lỗi Install-Module command was found in the module PowerShellGet but the module could not be loaded trên Windows 11/10 chỉ bằng cách đặt ExecutionPolicy thành unrestricted. Để thực hiện việc này, bạn có thể làm theo hướng dẫn trong bài viết về cách khắc phục lỗi "PowerShell cannot be loaded because running scripts is disabled".
2] Bật OneDrive Personal (nếu áp dụng)

Giải pháp này hiệu quả với những người dùng chạy cmdlet Update-Module – và khi chạy cmdlet Import-Module PowerShellGet nhận được thông báo lỗi "The cloud file provider is not running".
Vấn đề xảy ra với người dùng có tài khoản OneDrive Business được thiết lập chính xác. Tuy nhiên, tài khoản OneDrive Personal không chạy, và thư mục PowerShell OneDrive cá nhân nằm trên đường dẫn $env:PSModulePath.
Trong trường hợp này, để khắc phục sự cố, bạn cần kích hoạt lại tài khoản OneDrive Personal. Bạn có thể tham khảo hướng dẫn khắc phục lỗi "OneDrive not opening on startup in Windows 11/10".
3] Đăng nhập bằng tài khoản người dùng khác hoặc tạo tài khoản mới

Nếu bạn có nhiều tài khoản người dùng trên máy tính Windows 11/10, giải pháp này yêu cầu bạn đăng xuất khỏi tài khoản hiện tại và đăng nhập vào tài khoản khác trên máy tính, sau đó chạy lại thao tác cài đặt hoặc cập nhật module PowerShell. Một số người dùng báo cáo cách này hiệu quả. Tuy nhiên, nếu bạn không có tài khoản khác, bạn có thể tạo tài khoản người dùng mới.
4] Đặt lại Windows 11/10

Nếu các phương pháp trên đều không khắc phục được sự cố, bạn có thể đặt lại Windows 11/10 – khi thực hiện thao tác đặt lại, hãy chọn tùy chọn giữ lại tệp tin cá nhân. Sau khi đặt lại, hãy thử chạy Install-Module hoặc Update-Module và xem tác vụ có hoàn thành không còn lỗi hay không. Nếu vẫn lỗi, hãy thử lại các phương pháp khắc phục đã nêu ở trên.
Bài viết liên quan: PowerShell Get-Appxpackage Not working or Access Denied
Làm thế nào để cài đặt module PowerShellGet?
Để cài đặt phiên bản mới nhất của module PowerShellGet trên hệ thống Windows 11/10, hãy làm theo các bước sau:
- Đặt TLS1.2 làm giao thức mặc định trong phiên PS.
- Trước khi cập nhật PowerShellGet, bạn nên cài đặt nhà cung cấp NuGet mới nhất.
- Đăng ký kho PS nếu chưa thiết lập trước đó.
- Cài đặt PowerShellGet.
Làm thế nào để cập nhật module PowerShellGet?
Để cập nhật PowerShellGet và PackageManagement, hãy chạy các lệnh sau:
- Get-Module -ListAvailable PackageManagement, PowerShellGet.
- Install-PackageProvider Nuget –Force Exit.
- Install-Module –Name PowerShellGet –Force Exit.
- Set-ExecutionPolicy RemoteSigned Install-Module –Name PowerShellGet –Force -AllowClobber.
Làm thế nào để biết PowerShellGet đã được cài đặt?
Để kiểm tra xem PowerShellGet có được cài đặt trên máy tính Windows 11/10 hay không, hãy chạy lệnh Get-Module -ListAvailable PowerShellGet. Từ phiên PowerShell, sử dụng Save-Module để tải xuống phiên bản hiện tại của PowerShellGet. Hai thư mục sẽ được tải xuống: PowerShellGet và PackageManagement. Mỗi thư mục chứa một thư mục con với số phiên bản.
