Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Пользователь


Сообщения: 125
Благодарности: 9

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: jpg NewDisk.jpg
(15.3 Kb, 63 просмотров)
Тип файла: jpg Unattend.jpg
(18.9 Kb, 44 просмотров)
Тип файла: jpg OEMDrivers.jpg
(9.4 Kb, 37 просмотров)

Автоматизация подготовки диска к установке системы.
Два скрипта NewDisk.au3 и Unattend.au3:
http://forum.oszone.net/attachment.p...ntid=997&stc=1
http://forum.oszone.net/attachment.p...ntid=998&stc=1
http://forum.oszone.net/attachment.p...ntid=999&stc=1
Блин, как сделать, чтобы были рисунки?
С их помощью процесс развертывания системы на новом компьютере (друзья, дети, дети друзей и друзья детей) сводится к загрузке с CD Windows PE и исполнению этих самых скриптов.

Первым скриптом готовится диск: разбиение диска, его форматирование, развертывание WinPE, создание типовых папок, сбрасывание дистрибутива WinXP.
Привязка дистрибутива к машине и пользователю осуществляется вторым скриптом. Им правится unattend.txt: пользователь, настройки экрана, oem-драйвера и т.п. Самое муторное в этой процедуре - правка OemPnPDriversPath. Чтобы максимально облегчить редактирование этого параметра, включил в скрипт дополнительные средства обработки папки $oem$\$1\drivers.
Единственное, что приходится делать ручками (вернее, головой), отбирать для дистрибутива заготовки драйверов (включающие при необходимости скрипты автоустановки и подстройки последних). Как уже писал, для этого имею базу таких заготовок, которую по мере обновления драйверов и знакомства с новым железом периодически пополняю.
После такой подготовки, занимающей в несложном случае полчаса, остается запустить автоустановку WinXP. Проследив результат и подкорректировав исходники, вручаю "клиенту" работающую машину с "ноутбучным" комплектом ПО для автопереустановки системы, о котором рассказывал раньше.

Конечно, установка типовой системы с CD проще и быстрее. Для подобных целей имею собственный "супер-диск" с набором основных драйверов и типовых программ. Но чтобы донастроить установленную таким образом систему требуется квалификация. Вариант с дистрибутивом, полностью привязанным к машине, позволяет самому неподготовленному пользователю самостоятельно поддерживать работоспособность системы самым эффективным способом - периодически вчистую ее переустанавливая.

В продолжение разговора об интересных функциях.
При отладке работы NewDisk.au3 столкнулся с необходимостью считывать результаты командной строки непосредственно в память: WinPE работает с CD, жесткий диск еще не размечен, создавать виртуальный диск, чтобы выполнить DiskPart.exe /S list.txt > 1.txt, не хотелось. Нашел красивую замену в лице CLIPCOPY.EXE (21Kb), считывающей выходные данные командной строки в clipboard. С помощью этой программульки считываю информацию о присутствующих в системе дисках следующим образом:
Код: Выделить весь код
RunWait('%Comspec% /C DiskPart.exe /S $iDir$\dpartLIST$i$.txt | CLIPCOPY','',0)
$dsk=StringSplit(ClipGet(),@CRLF)
Еще одна находка.
Раньше для развертывания WinPE на жестком диске (использую WinPE, в том числе, и при переустановке системы для автоудаления "замусоренных" системных папок) запускал установку Консоли восстановления, которая нужна была только для получения файловой копии загрузочного сектора BOOTSECT.DAT. Добрые люди подсказали, что в BartPE есть плагин, делающий это проще, быстрее и гибче. Позаимствовал оттуда MKBT.EXE (26Kb) и NT2PELDR.EXE (16Kb). Теперь создание загрузчика WinPE выглядит так:
Код: Выделить весь код
RunWait('@ScriptDir@\mkbt.exe -x -c $ds$ $ds$\Peldr.dat')
RunWait('@ScriptDir@\nt2peldr.exe $ds$\Peldr.dat')
IniWrite('$ds$\Boot.ini','operating systems','C:\Peldr.dat','"Microsoft Windows PE" /MiniNT')
Последние находки позволили оптимизировать NewDisk.au3 так, что теперь можно подготовить чужой диск, просто подключив его к своей машине.

Отправлено: 23:20, 20-09-2005 | #150