Triển khai Windows 7 – Phần 22: Populate cơ sở dữ liệu MDT bằng PowerShell

Chia sẻ: Thanh Cong | Ngày: | Loại File: PDF | Số trang:30

0
41
lượt xem
6
download

Triển khai Windows 7 – Phần 22: Populate cơ sở dữ liệu MDT bằng PowerShell

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Triển khai Windows 7 – Phần 22: Populate cơ sở dữ liệu MDT bằng PowerShell Trong phần tiếp theo của loạt bài này, chúng tôi sẽ giới thiệu cho các bạn cách sử dụng Windows PowerShell để populate cơ sở dữ liệu MDT Triển khai Windows 7 – Phần 1: Những cải tiến của Windows AIK 2.0 Triển khai Windows 7 – Phần 2: Sử dụng DISM Triển khai Windows 7 – Phần 3: Tìm hiểu về MAP 4.0 Triển khai Windows 7 – Phần 4: Sử dụng MAP 4.0 Triển khai Windows 7 – Phần 5: Những nâng cao của MDT...

Chủ đề:
Lưu

Nội dung Text: Triển khai Windows 7 – Phần 22: Populate cơ sở dữ liệu MDT bằng PowerShell

  1. Triển khai Windows 7 – Phần 22: Populate cơ sở dữ liệu MDT bằng PowerShell Trong phần tiếp theo của loạt bài này, chúng tôi sẽ giới thiệu cho các bạn cách sử dụng Windows PowerShell để populate cơ sở dữ liệu MDT
  2. Triển khai Windows 7 – Phần 1: Những cải tiến của Windows AIK 2.0 Triển khai Windows 7 – Phần 2: Sử dụng DISM Triển khai Windows 7 – Phần 3: Tìm hiểu về MAP 4.0 Triển khai Windows 7 – Phần 4: Sử dụng MAP 4.0 Triển khai Windows 7 – Phần 5: Những nâng cao của MDT 2010 Triển khai Windows 7 – Phần 6: Lite Touch bằng MDT 2010 Triển khai Windows 7 – Phần 7: Triển khai LTI tự động Triển khai Windows 7 – Phần 8: Tìm hiểu về các file cấu hình LTI Triển khai Windows 7 – Phần 9: Triển khai Windows 32-bit và 64-bit Triển khai Windows 7 – Phần 10: Capture và triển khai image của máy tính tham chiếu Triển khai Windows 7 – Phần 11: Capture một cài đặt hiện có Triển khai Windows 7 – Phần 12: Lên kế hoạch cho vấn đề tương thích ứng dụng Triển khai Windows 7 – Phần 13: Chuyển thủ công từ Windows XP sang Windows 7 Triển khai Windows 7 - Phần 14: Chuyển tự động từ Windows XP sang Windows 7 Triển khai Windows 7 – Phần 15: Cấu hình cơ sở dữ liệu MDT Triển khai Windows 7 – Phần 16: Sử dụng cơ sở dữ liệu MDT Triển khai Windows 7 – Phần 17: Triển khai dựa trên model và kiểu chế tạo Triển khai Windows 7 – Phần 18: Xác định UUID của máy tính Triển khai Windows 7 – Phần 19: Tạo một WinPE Tools CD tùy chỉnh Triển khai Windows 7 – Phần 20: Bảo mật MDT (1) Triển khai Windows 7 – Phần 20: Bảo mật MDT (2)
  3. Mẹo: Các bạn có thể tìm kiếm thêm thông tin về việc tự động hóa triển khai LTI trong Windows 7 Resource Kit của Microsoft. Trong phần trước của loạt bài này, chúng tôi đã giới thiệu cho các bạn cách cấu hình và sử dụng cơ sở dữ liệu MDT cho các triển khai Lite Touch. Cho ví dụ, trong phần 16 chúng tôi đã giới thiệu cách sử dụng Deployment Workbench để bổ sung thêm các máy tính mục tiêu mới vào cơ sở dữ liệu để có thể tùy chỉnh triển khai Windows 7 dựa trên địa chỉ MAC hoặc UUID của mỗi máy tính mục tiêu. Tuy nhiên việc thực hiện thủ công bằng cách sử dụng Deployment Workbench quá nhàm chán – chắc chắn các bạn sẽ tự hỏi điều gì sẽ xảy ra nếu mình có đến hàng trăm máy tính muốn bổ sung vào cơ sở dữ liệu. Đó chính là mảnh đất để Windows PowerShell dụng võ, công cụ hữu dụng này cho phép bạn có thể viết kịch bản để tự động hóa các nhiệm vụ quản trị nhàm chán. Tuy MDT 2010 không có sự hỗ trợ PowerShell đi kèm, nó cũng không có các lệnh cmdlet cho việc thao tác xử lý cơ sở dữ liệu MDT. Nhưng Michael Niehaus, một chuyên gia phát triển của MDT đã tạo một modul PowerShell riêng để người dùng có thể sử dụng nó cho việc bổ sung sự hỗ trợ PowerShell, từ đó có thể thao tác xử lý cơ sở dữ liệu MDT của mình. Trong bài này chúng tôi sẽ giới thiệu cách import modul này và sử dụng PowerShell để lấy spreadsheet chứa thông tin của máy tính mục tiêu và import các thông tin này vào cơ sở dữ liệu MDT như các mục máy tính mới. Lưu ý: Bài viết này dựa trên giả thuyết rằng bạn chỉ là người mới biết PowerShell và mới có ít kinh nghiệm trong việc viết kịch bản PowerShell, tuy nhiên vẫn có một chút kiến thức về lập trình. Cài đặt modul PowerShell cho MDT
  4. Chúng ta hãy bắt đầu bằng cách download file nén chứa modul PowerShell có tên MDTDB.zip tại đây. Sau đó kích phải vào file đã download được và chọn Properties, tiếp đó kích Unblock. Giải nén file kịch bản MDTDB.psm1 và copy nó vào một thư mục (ở đây giả định là C:\Scripts) trên máy chủ MDT thử nghiệm của chúng tôi. Lúc này mởi cửa sổ PowerShell và đánh vào đó lệnh Get-ExecutionPolicy để xem chính xác thực thi hiện hành trên máy chủ của bạn (xem tại đây để có thêm thông tin chi tiết): Hình 1: Xem chính sách thực thi hiện hành Nếu chính sách thực thi hiện hành có trạng thái hạn chế (Restricted), khi đó kịch bản MDTDB.psm1 sẽ không chạy, chính vì vậy hãy sử dụng lệnh Set- ExecutionPolicy Unrestricted để thay đổi chính sách thực thi thành Unrestricted:
  5. Hình 2: Thay đổi chính sách thực thi thành Unrestricted Lúc này đánh lệnh Import-Module –name C:\Scripts\MDTDB.psm1 để bổ sung thêm modul PowerShell cho MDT vào phiên PowerShell hiện hành như thể hiện ở đây:
  6. Hình 3: Import modul PowerShell cho MDT Lưu ý rằng đầu ra từ quá trình chạy lệnh Import-Module này sẽ liệt kê tất cả các lệnh PowerShell mới hiện có cho việc thao tác xử lý cơ sở dữ liệu MDT. Cho ví dụ, trong hình ở trên, bạn có thể thấy lệnh New-MDTComputer, đây là lệnh mà chúng ta sẽ sử dụng ở phần dưới bài này để bổ sung thêm các máy tính vào cơ sở dữ liệu. Để thẩm định rằng modul đã được import, hãy đánh lệnh Get-Module như thể hiện dưới đây:
  7. Hình 4: Thẩm định rằng modul đã được import Kết nối đến cơ sở dữ liệu MDT Lúc này chúng ta cần kết nối phiên PowerShell của mình đến cơ sở dữ liệu MDT. Để thực hiện điều đó, hãy sử dụng lệnh Connect-MDTDatabase. Để xem cú pháp cho lệnh này, bạn có thể đánh Get-Help Connect- MDTDatabase như thể hiện bên dưới:
  8. Hình 5: Xem cú pháp lệnh Connect-MDTDatabase Mẹo: Bạn cũng có thể tìm thêm các thông tin khác về lệnh này tại blog của Michael. Để kết nối đến một cơ sở dữ liệu MDT có tên MDT trên một SQL Server instance có tên SQLEXPRESS trên máy chủ MDT có tên SEA-MDT-01, hãy đánh vào lệnh sau: Connect-MDTDatabase –sqlServer SEA-MDT-01 –instance SQLEXPRESS –database MDT
  9. Hình 6: Kết nối đến cơ sở dữ liệu MDT Làm việc với các mục máy tính Sau đây chúng ta hãy bắt đầu bằng cách xem liệu đã có mục máy tính nào trong cơ sở dữ liệu MDT chưa. Để thực hiện điều đó, chúng ta cần sử dụng lệnh Get-MDTComputer, vì vậy hãy sử dụng Get-Help để xem cú pháp của lệnh này:
  10. Hình 7: Xem cú pháp của lệnh Get-MDTComputer Để liệt kê tất cả các mục máy tính trong cơ sở dữ liệu, chúng ta chỉ cần đánh vào lệnh Get-MDTComputer: Hình 8: Liệt kê tất cả các máy tính trong cơ sở dữ liệu MDT
  11. Lệnh Get-MDTComputer sẽ hiển thị có một máy tính trong cơ sở dữ liệu và máy tính đó có địa chỉ MAC là EE:EE:EE:FF:FF:Firefox, ID là 2. Số ID là trường chính cho các mục máy tính. Nói cách khác, mỗi máy tính trong cơ sở dữ liệu sẽ có một số ID duy nhất. Nếu mở Deployment Workbench, chúng ta sẽ thấy mục máy tính này: Hình 9: Xem một máy tính nào đó bằng Workbench Chúng ta cũng có thể xóa một máy tính nào đó bằng cách sử dụng Workbench, tuy nhiên hãy thưc hiện điều này bằng PowerShell thay vì. Nếu cần thiết, hãy đánh Get-Help Remove-MDTComputer để hiển thị cú pháp cho việc xóa máy tính. Sau đó đánh lệnh Remove-MDTComputer –id 2 – verbose để xóa máy tính và hiển thị các thông tin chi tiết có liên quan đến hoạt động:
  12. Hình 10: Xóa một máy tính ra khỏi cơ sở dữ liệu Import máy tính vào cơ sở dữ liệu Chúng ta hãy đi import một số máy tính vào cơ sở dữ liệu. Bắt đầu bằng cách tạo một Excel spreadsheet với một vài cột tên, UUID, địa chỉ MAC và thuộc tính khác của các máy tính này. Mỗi hàng trong spreadsheet tương ứng với mỗi một máy tính. Để giới thiệu, chúng tôi sẽ tạo một spreadsheet cho một vài máy tính trong lab của mình: Hình 11: Tạo một spreadsheet cho các máy tính mục tiêu
  13. Export spreadsheet nào như một file văn bản CSV (có tên C:\Data\machines.txt ), bạn có thể mở bằng Notepad để xem nó như dưới đây: Hình 12: File CSV cho các máy tính mục tiêu Lúc này sử dụng lệnh Import-Csv cmdlet để import file CSV và gán nó cho biến $machines như dưới đây: $machines = Import-Csv C:\Data\machines.txt
  14. Hình 13: Import file CSV vào một biến Đánh lệnh $machines sẽ hiển thị các thông tin đã được import, được lưu thành mảng: Hình 14: Các thông tin máy tính được lưu dưới một mảng
  15. Bạn có thể đánh lệnh $machines.count để hiển thị số thành phần trong mảng này: Hình 15: Mảng có ba thành phần, mỗi một thành phần là một máy tính Để hiển thị thành phần đầu tiên của mảng, bạn có thể đánh lệnh $machines[0]:
  16. Hình 16: Hiển thị thành phần đầu tiên của mảng Như những gì bạn thấy từ hình trên, thành phần đầu tiên của mảng gồm có thông tin về máy tính thứ nhất. Để chỉ hiển thị tên máy tính này, đánh $machines[0].name:
  17. Hình 17: Hiển thị tên của máy tính đầu tiên Bổ sung các máy tính đã được import vào cơ sở dữ liệu Lúc này chúng ta đã biết chút ít về việc việc xử lý với mảng và sẵn sàng cho việc import các thông tin được lưu trong mảng dưới tên biến $machines vào cơ sở dữ liệu MDT. Để thực hiện điều đó, chúng ta hãy sử dụng lệnh New- MDTComputer, do đó hãy xem cú pháp của lệnh này:
  18. Hình 18: Xem cú pháp lệnh New-MDTComputer Cần nhớ những gì chúng tôi đã giới thiệu trong phần 16, máy tính phải mang tính duy nhất trong cơ sở dữ liệu bằng cách sử dụng một hoặc một vài trường dưới đây:  Universally Unique Identifier (UUID)  Asset tag  Serial number  MAC address Chúng ta hãy đi bổ sung máy tính đầu tiên trong spreadsheet của mình bằng cách sử dụng địa chỉ MAC của nó để phân biệt. Để thực hiện, hãy đánh vòa lệnh dưới đây: New-MDTComputer –macAddress $machines[0].mac –settings @{OSInstall='YES'}
  19. Hình 19: Add máy tính đầu tiên vào cơ sở dữ liệu bằng cách sử dụng địa chỉ MAC Đóng và mở lại Workbench để refresh nó, khi đó bạn sẽ thấy máy tính mới này: Hình 20: Máy tính mới đã được thêm vào cơ sở dữ liệu Nếu kích đúp lên máy tính này, bạn sẽ thấy các thuộc tính của nó:
  20. Hình 21: Thuộc tính của máy tính mới Chọn tab Details, bạn sẽ thấy thuộc tính Osinstall đã được thiết lập là YES như mong đợi:
Đồng bộ tài khoản