-
Notifications
You must be signed in to change notification settings - Fork 0
E.Customize the system
Khi đã hiểu qua về cấu trúc module cũng như cách thức vận hành của các hệ thống OSDeploy/OSDCloud, chúng ta tiến hành tùy biến theo yêu cầu cao hơn là một hệ thống thân thiện hơn, tích hợp các tinh chỉnh sâu đáp ứng được nhu cầu máy tính của doanh nghiệp hoặc cá nhân chuyên nghiệp
A. SetupFiles (linh hồn của việc tùy biến hệ điều hành)
Thư mục SetupFiles là tập hợp gồm 2 file được lưu trong thư mục gốc của USB boot
-
unattend.xml (được tạo ra từ hệ thống generate xml tùy biến của Schneegans). File này sẽ được script next-step.ps1 (trong thư mục System32 của đĩa PE) tự động chèn vào hệ thống Windows mới vừa bung trong giai đoạn cuối của quá trình thực thi của Deploy-OSDCloud
[thư mục đích C:\Windows\Panther\] -
Post-setup.ps1 ở giai đoạn cuối thiết lập hệ thống tự động unattend trên, File powershell Post-setup.ps1 sẽ được gọi thực thi ở lần đăng nhập đầu tiên. File này có nhiệm vụ cài đặt bổ sung ứng dụng hệ thống thông qua nền tảng winget, tùy chỉnh các tham số tối ưu cho hệ điều hành, đổi hình nền màn hình, tải file ghi chú cài đặt và bước cuối cùng là dọn dẹp hệ thống và khởi động lại máy hoàn tất quá trình
[C:\CoreSystem\Post-setup.ps1\]
Cấu trúc:
[USB Drive] => [SetupFiles] =>
- unattend.xml
- Post-setup.ps1
B. MainSystem.ps1 (biến đổi cách hoạt động của đĩa boot PE)
OSDeploy như đã nói ở phần 4. Understand the system, tạo ra đĩa boot khởi động trực tiếp module Invoke-WinPEStartup từ đó gọi sub-module Deploy-OSDCloud. đây không phải là hướng mong muốn của CoreSystem. Vì vậy build ra một màn hình chức năng thay thế hợp lý hơn cho nhu cầu là điều hợp lý. Từ đó MainSystem.ps1 xuất hiện
startnet.cmd thay vì quy định khởi chạy lệnh Invoke-WinPEStartup thì sẽ được điều chỉnh sang khởi động MainSystem.ps1
@echo off
wpeinit
title Main System (do not close this window)
Powershell MainSystem.ps1
C. Ứng dụng hỗ trợ khác
Không chỉ là cài hệ điều hành, dự án hướng đến bổ sung một số tiện ích phù hợp để người dùng có thể có nhu cầu phát sinh gồm xem thông tin hệ thống, phân chia lại partition, backup dữ liệu...
Các ứng dụng portable sẽ được cân nhắc phù hợp sao cho có thể chạy tốt ở môi trường PE, đáp ứng đủ nhu cầu nhưng vẫn đạt tiêu chí hợp pháp, tránh vi phạm bản quyền
Các file thực thi sẽ được lưu ở X:\Softwares và được gọi trực tiếp từ MainSystem.ps1 nói trên
Danh mục software gồm HWInfo32 (Thông tin phần cứng) và Multidrive (Dùng backup ổ đĩa), Explorer++ (dùng để duyệt file) cũng như tiện ích sẵn có của Windows là DISKPART
D. Branding
Ngoài can thiệp luồng chạy của OSDCloud, việc tùy chỉnh branding cũng là bước cần thiết để tạo dấu ấn riêng cho CoreSystem. Vậy chúng mình sẽ can thiệp branding chỗ nào?
- Wallpaper: đặc thù hệ thống UEFI-Secureboot sẽ bỏ qua toàn bộ thiết lập màn hình (nếu có) và trong môi trường PE vốn không có driver đồ họa phù hợp nên hệ thống chỉ nhận các độ phân giải rất thấp (800x600 hoặc 1024x768). Do vậy hình nền được thiết lập theo độ phân giải max 1024x768, đặt logo ở vị trí phù hợp sao cho dễ nhận diện, không bị che bởi màn hình chức năng MainSystem.ps1
Wallpaper được chèn vào C:\ProgramData\OSDeployCore\OSDRepo\winpe-wallpaper trước khi quá trình build diễn ra
- Logo: Không như wallpaper, logo chỉ xuất hiện duy nhất một lần tại cửa sổ chọn hệ điều hành trước khi cài đặt trong quy trình Deploy-OSDCloud. logo này được quy định tại đường dẫn chứa module powershell OSDCloud\26.5.24.1\workflow\default\ux. Logo thay thế cần đúng kích thước 1010x200 cũng như thiết kế sao cho đủ nhận diện khi màn hình boot bị bóp độ phân giải xuống còn 1024x768 hoặc thậm chí nhỏ hơn là 800x600
E. Clean up
Mặc định module OSDCloud chứa nhiều thư mục không dùng đến trong phần workflow, có thể xóa bớt đi nếu việc duy trì các thư mục này khiến cho việc theo dõi codebase khó thực hiện
Thư mục \%ProgramData%\OSDeployCore trong máy build sẽ phình to ra nếu nhu cầu tăng lên, nếu khi đã hài lòng với bản build và file .iso phù hợp thì thư mục boot có thể dọn dẹp để trống ổ cứng