Trong khi việc cài đặt NET Framework 3.5 trên Windows 10 là một thách thức đơn giản, trên Windows Server 2012 R2 lại có những điều khác biệt. Server Manager cho phép người dùng cài đặt cùng lúc hai phiên bản .NET Framework: 3.5 và 4.5. Việc cài đặt NET Framework 4.5 diễn ra mà không gặp sự cố nào, tất cả đều diễn ra suôn sẻ.
Tuy nhiên, trong quá trình cài đặt NET Framework 3.5 trên Windows Server 2012 R2 với các cài đặt mặc định, nhiều người dùng phải đối mặt với lỗi: '«Cài đặt một hoặc nhiều vai trò, dịch vụ vai trò hoặc tính năng không thành công. Không thể tìm thấy các tệp nguồn...»' xuất hiện trên màn hình.
Lý do gây lỗi là vì các tệp nhị phân .NET Framework 3.5 là một phần của bộ nhớ cache cục bộ, chúng được lưu trữ trong máy chủ khi hệ điều hành được cài đặt. Các tệp này được kích hoạt trong tính năng Features on Demand trên Windows Server 2012 để sử dụng không gian trống một cách tiết kiệm.
Để kiểm tra xem .NET Framework 3.5 có nằm trong kho lưu trữ cục bộ hay không, bạn sử dụng lệnh PowerShell dưới đây:
Get-WindowsFeature *Framework*
Như bạn có thể thấy trong hình, yếu tố yêu cầu đã bị xóa.
Theo mặc định, hệ thống sẽ cố gắng tải các tệp cần thiết từ Windows Update (WSUS server cục bộ không phù hợp cho mục đích này). Nếu không thành công, người dùng sẽ được yêu cầu chỉ định đường dẫn đến bản phân phối, từ đó các tệp bị thiếu sẽ được cài đặt.
Để cài đặt .NET Framework 3.5 trên Windows Server 2012 R2 theo cách thủ công, nhấp chọn Chỉ định một đường dẫn nguồn thay thế để nhập đường dẫn thay thế đến thư mục chứa ổ cài đặt Windows Server 2012 R2.
Với đường dẫn này, bạn có thể chỉ định thư mục cục bộ (trong ví dụ này là D:\source\sxs, trong đó D:\ là tên ổ DVD chứa bản phân phối Windows Server) hoặc thư mục mạng.
Bằng cách nhấp chọn OK, hệ thống sẽ tìm thấy các tệp nhị phân .NET Framework 3.5 và cài đặt các thành phần tương ứng.
Ngoài ra, bạn cũng có thể thực hiện thao tác tương tự bằng cách chạy lệnh sau trên cửa sổ Windows PowerShell với quyền quản trị:
dism /online /enable-feature /featurename:NetFX3 /all /Source:d:\sources\sxs /LimitAccess
Trong đó:
/Online: được hiểu là bạn cần nâng cấp từ phiên bản hệ điều hành hiện tại, chứ không phải từ hình ảnh (image).
/enable-feature/featurename: NetFX3/all là điều cần thiết để triển khai .NET Framework 3.5 và các tính năng liên quan.
/Source là đường dẫn tới thư mục chứa bản phân phối Windows, bao gồm các thành phần quan trọng.
/LimitAccess tắt quyền truy cập Windows Update để kiểm soát quá trình cài đặt.
Lệnh tương tự trên PowerShell được thể hiện như sau:
Thêm tính năng NET-Framework-Core -Source d:\sources\sxs để bắt đầu quá trình cài đặt.
Ngoài ra, bạn cũng có thể chỉnh sửa đường dẫn gốc đến bản phân phối Windows trên hệ thống bằng lệnh sau:
Thiết lập registry RepairContentServerSource trong HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Servicing.
Hoặc sử dụng group policy Specify settings for optional component installation and component repair (có thể thay đổi cài đặt policy trong registry này).
Chú ý: Chính sách Chỉ định cài đặt thành phần tùy chọn và sửa chữa thành phần nằm trong phần GPO: Cấu hình máy tính => Mẫu quản trị => Hệ thống phải được kích hoạt, và đường dẫn đến thư mục chứa bản phân phối hệ điều hành cần được xác định (đường dẫn nguồn thay thế). Để ngăn chặn máy chủ cố gắng tải payload trực tuyến, hãy đánh dấu vào hộp nằm kế bên Không thử tải payload từ Windows Update bao giờ.
Do đó, bài viết trên Mytour đã hướng dẫn cách cài đặt .NET Framework 3.5 trên Windows Server 2012 R2. Nếu bạn thấy nó hữu ích, đừng quên chia sẻ với bạn bè và người thân của bạn nhé.