Chèn driver bởi model và nhà sản xuất
Trong phiên bản trước của MDT 2008, bạn có thể sử dụng nhóm driver để tổ chức một cách logic các driver out-of-box mà bạn import vào deployment share của mình. Cho ví dụ, bạn có thể tạo một nhóm driver cho driver ổ lưu trữ và một nhóm khác cho Windows PE image,... Sau đó bạn liên kết nhóm driver nào đó với chuỗi nhiệm vụ cụ thể để điều khiển các driver nào sẽ được triển khai bằng cách sử dụng chuỗi nhiệm vụ đó.
Trong MDT 2010, bạn không thể tạo các nhóm driver dài hơn cách sử dụng Workbench vì không thể tạo các thư mục tùy chỉnh thay vì, đó là cách thức cung cấp cho bạn sự linh hoạt. Mặc dù vậy bạn vẫn có thể định nghĩa các nhóm driver mới bằng DriverGroup và sử dụng nó như một biến bên trong chuỗi nhiệm vụ của mình để điều khiển driver nào sẽ được triển khai vào máy tính mục tiêu dựa trên model và nhà sản xuất máy tính.
Mẹo: Nếu bạn không chắc chắc về model hay nhà sản xuất máy tính của mình, hãy sử dụng kịch bản WMI có trong phần 17 của loạt bài này để xác định rõ thông tin đó.
Đây là cách ban có thể chèn driver trong quá trình triển khai dựa trên model và nhà sản xuất máy tính mục tiêu. Bắt đầu bằng cách tạo một kiến trúc thư mục tùy chỉnh bên dưới thư mục Out-Of-Box Drivers của deployment share như dưới đây:
Out-Of-Box Folders
Operating System
Make
Model
Model…
Make…
Operating System…
Cho ví dụ, cho cả một số phần sau của loạt bài này, chúng tôi giả định rằng một công ty cần triển khai các phiên bản Windows khác nhau vào các hệ thống máy trạm sau:
- Các hệ thống Dell Optiplex 580 cần cài đặt Windows 7 x64 hoặc Windows 7 x86
- Các hệ thống Dell Precision T3500 cần cài đặt Windows 7 x64
- Các hệ thống Hewlett-Packard Pro 3015 Microtower cần cài đặt Windows 7 x64, Windows 7 x86 hoặc Windows XP SP3.
Hình 1 thể hiện cho các bạn thấy cấu trúc thư mục cho triển khai Windows 7 x64 vào các hệ thống khác nhau này như thế nào:
Hình 1: Cấu trúc thư mục cho triển khai Windows 7 x64 theo model và nhà sản xuất
Bạn sẽ cần tạo các cấu trúc thư mục tương tự như vậy bên dưới các thư mục Windows 7 x86 và Windows XP Professional. Sau đó import các driver cần thiết cho mỗi hệ thống vào một thư mục thích hợp khi đã thu được các driver này từ website của mỗi nhà sản xuất. Kết quả thu được sẽ tương tự như những gì bạn thấy dưới đây (hình 2):
Hình 2: Driver out-of-box đã được import cho các hệ thống Dell Optiplex 580
Lúc này mở thuộc tính của chuỗi nhiệm vụ được sử dụng để triển khai Windows 7 x64 vào máy tính mục tiêu. Bên dưới nhóm nhiệm vụ Preinstall, chọn nhiệm vụ đã có tên Configure trước nhiệm vụ chèn driver (Inject Drivers). Sau đó kích Add, chọn General, và chọn Set Task Sequence Variable như thể hiện trong hình 3 bên dưới:
Hình 3: Tạo một nhiệm vụ để thiết lập chuỗi nhiệm vụ mới có thể thay đổi trước nhiệm vụ chèn driver
Khi nhiệm vụ mới Set Task Sequence Variable được tạo, hãy chỉ định DriverGroup001 là tên của biến và gán cho biến này giá trị Windows 7 x64\%make%\%model% như thể hiện trong hình 4 bên dưới:
Hình 4: Chuỗi nhiệm vụ mới DriverGroup001 có giá trị Windows 7 x64\%make%\%model%
Những gì xảy ra khi nhiệm vụ này chạy là các máy tính mục tiêu của Dell Inc và model Optiplex 580 sẽ được chèn các driver trong thư mục Windows 7 x64\Dell Inc.\Optiplex 580, các máy tính của Dell Inc và model Precision T3500 sẽ được chèn driver trong thư mục Windows 7 x64\Dell Inc.\Precision T3500, còn các máy tính của Hewlett-Packard và model HP Pro 3015 Microtower được chèn driver trong thư mục Windows 7 x64\Hewlett-Packard\HP Pro 3015 Microtower khi triển khai. Chính xác hơn, chỉ có các driver trong các thư mục này mà PnP xác định cần chèn sẽ được chèn. Tuy nhiên khi sử dụng phương pháp này, các hệ thống Dell Optiplex 580 không thể chèn vào driver Dell Precision T3500 hoặc Hewlett-Packard Pro 3015 Microtower. Mỗi nhà sản xuất và mỗi model sẽ chỉ nhận các driver được thiết kế cho nó.
Mặc dù vậy chúng ta vẫn chưa xong ở đây vì nhiệm vụ Inject Drivers kế tiếp đã chọn All Drivers mặc định, và MDT sẽ chèn vào các driver dựa trên sự bổ sung của nhóm driver có thể áp dụng và profile chọn lọc. Vì vậy nếu nhóm driver nói chỉ có các driver Dell Optiplex 580 được cài đặt nhưng profile chọn lọc nói tất cả driver sẽ được cài đặt thì kết quả sẽ tất cả driver được cài đặt. Cụ thể hơn, PnP sẽ cài đặt các driver từ kho chứa driver có sẵn, không chỉ các driver được gán cho các hệ thống Dell Optiplex 580, có nghĩa chúng nên quay về phương pháp “để Windows quyết định” trừ khi có thể tránh sử dụng profile All Drivers. Mặc dù vậy đây là phương pháp đơn giản, bạn chỉ cần chọn nhiệm vụ Inject Drivers trong nhóm nhiệm vụ Preinstall và thay đổi profile từ All Drivers thành Nothing như thể hiện trong hình 5 bên dưới:
Hình 5: Chọn profile Nothing
Lúc này nếu nhóm driver nói chỉ có driver Dell Optiplex mới được cài đặt và profile nói không có driver nào được cài đặt thì kết quả sẽ chỉ có driver Dell Optiplex được cài đặt, đó là những gì chúng ta muốn.
Chìa khóa làm cho phương pháp làm việc là các thư mục tùy chỉnh mà bạn tạo cho nhà sản xuất và model phải tương ứng với nhà sản xuất và model có trong thuộc tính lớp Win32_ComputerSystem WMI cho mỗi hệ thống. Trong ví dụ ở trên, thư mục có tên Dell Inc. tương ứng với thuộc tính nhà sản xuất cho hai hệ thống, tuy nhiên các máy tính Dell cũ có thể với tên Dell Computer Corporation hoặc Dell Computer Corp. hoặc một giá trị khác khi thuộc tính nhà sản xuất được truy vấn bằng WM,I và nếu đang triển khai vào các hệ thống đó, bạn chắc chắn sẽ phải tạo các thư mục bổ sung có các tên đó.
Cuối cùng, lý do phương pháp trở đơn giản cho việc duy trì trong thời gian dài là vì, cho ví dụ, khi một driver mới được phát hành cho các hệ thống Dell Optiplex 580, bạn import driver vào thư mục Optiplex 580, sau đó chỉ cần thực hiện một triển khai test (cho một máy tính Dell Optiplex 580) trong lab của mình để bảo đảm driver mới sẽ không gây ra vấn đề gì với kiểu hệ thống này. Ngược lại, trong phương pháp “để Windows quyết định”, mỗi lần nâng cấp một driver, bạn cần thực hiện các triển khai test cho tất cả các kiểu hệ thống khác nhau của mình.
Văn Linh (Theo Windowsnetworking)