Сценарий 1: новая («чистая») установка ОС на существующие или новые компьютеры
Производители комплектного оборудования (OEM) или независимые поставщики оборудования (IHV) поставляют организациям компьютеры с уже установленной операционной системой. Во многих случаях настройки ОС не соответствуют стандарту для рабочих станций, принятому в организации. В результате многие компании удаляют существующую ОС и устанавливают новую с необходимыми настройками. Кроме того, организация может владеть компьютерами, на которые можно установить новую ОС, не обновляя аппаратную часть.
Компьютеры, соответствующие спецификациям Net PC и PC98, поддерживают технологию удаленной загрузки PXE по протоколу DHCP. Следовательно, технологию PXE можно задействовать для установки ОС на такие машины. Для компьютеров, не соответствующих указанным стандартам, в состав Windows 2000 Server включена служебная программа для создания загрузочного диска RIS, имитирующего ПЗУ PXE через флоппи-дисковод.
Службы удаленной установки конфигурируются для перераспределения разделов и форматирования жесткого диска перед началом инсталляции Windows 2000 Professional, которая производится автоматически после завершения подготовительного этапа. Администратор может создать файлы ответов (.sif) для конфигурации разнообразных параметров устанавливаемой ОС в зависимости от требований и стандартов организации. Например, для отдела продаж может понадобиться установка только протокола TCP/IP, в то время как бухгалтерии требуется еще и протокол IPX/SPX для работы бухгалтерского ПО. Используя два различных файла ответов, можно подготовить несколько вариантов установки на основе единственного плоского образа операционной системы.
При помощи RIS можно также осуществить установку образа RIPrep, содержащего локально установленные приложения и конфигурационные настройки, подготовленные администратором в соответствии с требованиями организации. Сначала при помощи RIS производится базовая установка Windows 2000 Professional на клиентский компьютер.
Затем устанавливается необходимое программное обеспечение, включая приложения, используемые в работе всей организации или ее подразделений. Администратор может произвести настройку различных элементов ОС: например, разместить на рабочем столе обои с логотипом компании и ярлыки, ведущие к часто используемым в организации ресурсам. Тщательно протестировав работу исходного компьютера и убедившись, что все функционирует, как запланировано, администратор реплицирует образ данной системы на доступные серверы RIS (поддерживается только образ одного диска с единственным разделом). Пользователи, которым администратор предоставил доступ к образу, смогут производить установку сразу по окончании репликации.
Сценарий 2: восстановление ОС после отказа оборудования
Иногда происходит полный отказ аппаратных компонентов компьютера. В таких ситуациях RIS позволяет быстро и легко произвести установку базовой операционной системы или развертывание образа RIPrep, чтобы вернуть компьютер в строй после замены отказавшего компонента. Сочетая RIS с технологиями IntelliMirror (средствами управления и изменения конфигурацией ОС Windows 2000 Server), организация может быстро восстановить большую часть данных и настроек компьютера, включая персональные документы и конфигурационные параметры пользователя. Заменив в компьютере жесткий диск, администратор или пользователь могут запустить удаленную установку базовой ОС или образа RIPrep, содержащего приложения. По завершении установки пользователь входит в систему, и в дело вступают технологии IntelliMirror. Как и до отказа оборудования, становятся доступны приложения, назначенные пользователю при помощи функции установки и обслуживания ПО. Применяются прочие параметры групповых политик, перемещаемый профиль пользователя копируется из сетевого местоположения, а папка «Мои документы», перенаправленная в каталог на сервере, предоставляется в распоряжение пользователя. Благодаря разделению пользовательских и компьютерных настроек, конечный пользователь в считанные минуты снова приступает к работе в привычной для него среде.
При этом сотруднику ИТ- отдела не требуется производить установку ОС и пользовательских приложений, а также восстанавливать данные из резервной копии.
Сценарий 3: сравнение предварительной установки ОС с предварительной регистрацией в Active Directory
Многие организации практикуют предварительную установку операционной системы на компьютеры перед их отправкой конечному пользователю. Предварительно может устанавливаться не только ОС, но и программное обеспечение. Кроме того, систему могут настроить в соответствии с корпоративными требованиями и стандартами. Такой способ отнимает немало времени у сотрудников ИТ-отдела и является дорогостоящим процессом, повышающим совокупную стоимость владения компьютерами. Используя RIPrep, администраторы могли бы устанавливать ОС и приложения из образа RIPrep до отправки компьютера конечному пользователю.
Предварительная регистрация компьютера – это процесс создания объекта учетной записи в службе каталогов Active Directory. Выполнение предварительной регистрации для RIS позволяет администратору не тратить время на установку ОС перед отправкой компьютера конечному пользователю. Серверы RIS можно сконфигурировать для ответов на запросы только тех клиентских компьютеров, которые были предварительно внесены в Active Directory, что делает невозможной удаленную установку ОС на неавторизованные компьютеры. Предварительная регистрация клиентов в Active Directory экономит время и деньги, снижая (а в некоторых случаях полностью устраняя) необходимость в предварительной установке ОС на компьютеры предприятия.
Во время предварительной регистрации администратор может указать определенное имя компьютера, а также серверы RIS для обслуживания данного клиента. Ниже описаны действия, которые необходимо выполнить для предварительной регистрации компьютера в службе каталогов Active Directory.
Для предварительной регистрации компьютера в Active Directory:
1. | Выберите в Active Directory контейнер, где Вы хотите создать учетную запись компьютера. |
2. |
Правым щелчком мыши на контейнере вызовите контекстное меню и выберите из пункта Создать (New) команду Компьютер (Computer). Откроется диалоговое окно Новый объект – компьютер (New Object-Computer), как показано на Рисунке 10. Рисунок 10 - Предварительная регистрация компьютера в Active Directory |
3. | Введите имя компьютера и назначьте разрешение на присоединение к домену для пользователя (или его группы безопасности), которому предназначается данный компьютер. |
4. | В следующем диалоговом окне, изображенном на Рисунке 11, Вам нужно предоставить идентификатор GUID/UUID компьютера, а также указать, будет ли этот клиент управляемым (готовым к удаленной установке ОС). Введите идентификатор GUID/UUID и поставьте флажок рядом с параметром Это управляемый компьютер (This is a managed computer). |
Если Вы предпочитаете работать с командными файлами, то останетесь довольны и технологией сервера сценариев Windows (WSH). WSH – это обработчик сценариев (интерпретатор), являющийся составной частью операционных систем Windows 2000 и Windows 98. При необходимости, можно установить его на ОС Windows NT 4.0 и Windows 95. Интерпретатор WSH поддерживает команды WSH, а также языки сценариев VBScript и JScript (версию языка JavaScript компании Майкрософт).
Сценарии WSH используются для работы с файловой системой, автоматизации настольных приложений, управления системой Microsoft SQL Server и для многих других целей. Изучение этой технологии не составит большого труда, ведь всё, что Вам потребуется, это текстовый редактор и установленный интерпретатор WSH. Кроме этого, посетите веб-узел компании Майкрософт, посвященный технологиям сценариев в среде Windows http://msdn.microsoft.com/scripting (EN), где Вы найдете массу полезной информации, доступной для загрузки. Также ознакомьтесь со статьями, предложенными в разделе «Связанные ресурсы» этой статьи.
Листинг 1 демонстрирует сценарий FinalSetup.vbs, для написания которого я использовал технологии WSH и VBScript. Вы наверняка заметите, что мне нравится «украшать» код многочисленными пробелами и добавлять достаточно комментариев. К слову сказать, комментарии упрощают чтение сценария и помогут вспомнить назначение той или иной строки, если открыть сценарий спустя месяцы после его написания. Во многих случаях я оставляю закомментированным даже отладочный код, который добавляю в процессе написания и проверки сценария.
Листинг 1 – Сценарий FinalSetup.vbs
'**********************************************************************
' НАЗВАНИЕ: FinalSetup.VBS Ver 2.0
' НАЗНАЧЕНИЕ: для добавления глобальных групп домена к локальным группам
' после подключения компьютера к домену (образ WIN 2000).
'**********************************************************************
OPTION EXPLICIT 'Убедимся, что все переменные объявлены.
ON ERROR RESUME NEXT 'Сценарий продолжит работу в случае внутренней ошибки.
'***************************************************
'Объявляем переменные.
'***************************************************
Dim oGroup 'Объект ADSI созданный с помощью функции GetObject()
Dim oWshShell ' Объект Shell для запуска исполняемого файла (smsman.exe)
Dim sInDomain 'Используется для проверки членства в домене
Dim sCompName 'Имя локального компьютера
Dim oWshNet 'Объект WshNetwork
Dim sUser 'Имя пользователя для проверки на ошибки
Dim sMember 'Для проверки членства в группе (0 или 1)
'********************************************************
'Объявляем константы.
'********************************************************
Const GLOBAL_GROUP = "WEBDEV" 'Глобальная группа, добавляемая к локальной группе
Const LOCAL_GROUP = "Administrators" 'Имя локальной группы
Const DOMAIN = "GONDOR" 'Имя домена
'********************************************************
'Создаем объекты.
'********************************************************
'Создаем объект network.
Set oWshNet = Wscript.CreateObject("Wscript.Network")
'Создаем объект shell.
Set oWshShell = Wscript.CreateObject("Wscript.Shell")
'***************************************************
'Получаем локальную информацию.
'***************************************************
sUser = oWshNet.Username 'Получаем имя входа текущего пользователя.
SCompName = oWshNet.Computername 'Получаем имя компьютера.
'***************************************************
'Убедимся, что вошедший пользователь является Администратором, если это не так, завершаем работу сценария.
'***************************************************
IF UCASE(sUser) <> "ADMINISTRATOR" THEN
Wscript.Echo "You must be logged in as ""ADMINISTRATOR"" to run this " & _
"script! " & vbCRLF & vbCRLF & "Log off and login as " & _
"""ADMINISTRATOR"" to the local machine " & "(" & sCompName & ")." & _
vbCRLF & vbCRLF & " After logging in as ADMINISTRATOR, run the " & _
"C:\WINNT\SYSTEM32\FinalSetup.vbs script again" & _
" to finish the installation."
Wscript.Quit
END IF
'***************************************************
'Убедимся, что машина была добавлена к домену;
'в противном случае завершаем работу и выводим сообщение.
'***************************************************
'Получаем значение ключа из реестра.
sInDomain = oWshShell.RegRead("HKLM\SOFTWARE\" & _
"Microsoft\Windows NT\CurrentVersion\Winlogon\DomainCache\GONDOR")
IF sInDomain = "" THEN
Wscript.Echo "The Computer does not belong to " & DOMAIN & " domain!"
Wscript.quit
END IF
IF ERR.NUMBER = -2147024894 THEN
Wscript.Echo "The Computer does not belong to " & DOMAIN & " domain!"
Wscript.quit
END IF
'********************************************************
'Обновляем членство в группе.
'********************************************************
Set oGroup = GetObject("WinNT://" & sCompName & "/" & LOCAL_GROUP & ",group")
sMember = oGroup.IsMember("WinNT://" & DOMAIN & "/" & GLOBAL_GROUP)
'если является членом, то sMember будет -1, иначе 0.
IF sMember = 0 THEN
oGroup.add("WinNT://" & DOMAIN & "/" & GLOBAL_GROUP)
sMember = oGroup.IsMember("WinNT://" & DOMAIN & "/" & GLOBAL_GROUP)
'Если является членом, то sMember будет -1, иначе 0.
IF sMember = -1 THEN
oWshShell.Popup "The " & GLOBAL_GROUP & " global group has been " & _
"successfully added to the " & LOCAL_GROUP & " local group.", _
5, "Local Group Modified", 064
End IF
ELSE
oWshShell.Popup "The " & GLOBAL_GROUP & " global group is already" & _
" a member of the " & LOCAL_GROUP & " local group.", 5, _
"Global Group Exists" ,064
End IF
'********************************************************
'Запускаем smsman.exe для установки SMS 2.0.
'********************************************************
oWshShell.Popup "SMS 2. 0 will now be installed. Please wait while" & _
" program is loading..." & vbCRLF & vbCRLF & "The SMS Client" & _
" Installation will take approximately 5 minutes to complete" _
, 10, "SMS 2.0 Installation", 064
oWshNet.MapNetworkDrive "N:", "\\SMSCPS1\SMSLOGON", , "guest", ""
oWshShell.Run "N:\x86.bin\00000409\SMSMAN.EXE", ,TRUE
oWshNet.RemoveNetworkDrive "N:"
'********************************************************
'Выводим сообщение об окончании сценария и завершаем работу.
'********************************************************
MsgBox "This portion of the setup has been completed. " & _
"Logoff and login as the user and setup the printers."
Сценарий FinalSetup.vbs выполняет заключительные шаги процесса установки до того, как системный администратор позволит конечному пользователю работать с компьютером. Код сценария проверяет, что его запустил пользователь с правами администратора (Administrator), и что компьютер подключен к домену. Затем сценарий добавляет глобальную группу WEBDEV в локальную группу Администраторы (Administrators) компьютера, чтобы позволить веб-разработчикам устанавливать программное обеспечение и конфигурировать свои компьютеры.
Первые два оператора сценария крайне важны и должны содержаться в каждом Вашем сценарии. Оператор OPTION EXPLICIT проверяет, все ли переменные объявлены, прежде чем позволить их использование, предупреждая этим возможные ошибки в коде. Хотя VBScript позволяет не объявлять переменные, но если не использовать OPTION EXPLICIT, то любая опечатка в написании переменной создаст новую переменную.
Такую ошибку можно легко найти в простом сценарии, но проблематично, если код состоит из сотен строк. Оператор ON ERROR RESUME NEXT запрещает остановку выполнения сценария в случае обнаружения ошибки. Цель данного оператора не в игнорировании ошибки, а в том, чтобы ошибка не стала фатальной для сценария и позволила ему доработать до конца.
Следующий раздел сценария FinalSetup.vbs включает объявление переменных. Вы можете перечислить все переменные через запятую в одной строке, или поместить каждую переменную на отдельной строке, как сделано мной. Имя переменной должно начинаться с буквы латинского алфавита и его длина не может быть больше 255 символов, среди которых допустимы латинские буквы, цифры и символ подчеркивания (_). Использование однобуквенного префикса в нижнем регистре необязательно, но поможет при чтении определить тип данных (например, объект (object), строка (string), целое число (integer)), содержащихся в переменной.
Следующий раздел – это объявление констант. Константы похожи на переменные, за исключением того, что Вы не сможете изменить значение констант после их объявления. В сценарии используются три константы: GLOBAL_GROUP, LOCAL_GROUP, и DOMAIN.
Чтобы осуществить решение задачи, в сценарии необходимо использовать объекты. Объекты содержат в себе методы (функции, выполняемые объектом) и свойства (характеристики). Вы должны создать объект перед его использованием в сценарии. Создание объекта подразумевает его размещение в памяти и регистрацию. В сценариях WSH для создания объекта используется функция Wscript.CreateObject(). В сценарии FinalSetup.vbs задействованы несколько объектов, встроенных в интерпретатор WSH.
В следующем разделе FinalSetup.vbs создается два объекта: объект Network (Wscript.Network) и объект Shell (Wscript.Shell). Объект Network позволяет подключаться к сетевым ресурсам. Объект Shell служит для запуска исполняемых файлов, работы с реестром, чтения переменных среды, создания ярлыков, а также выполнения некоторых других функций.
В каждом случае сценарий сохраняет созданные объекты в переменных (соответственно в oWshNet и oWshShell) и использует эти переменные для доступа к методам и свойствам объекта.
Чтобы сценарий успешно завершил свою работу, он должен выполняться под учетной записью локального администратора (Administrator). Для проверки этого факта, сценарий получает значение свойства Username объекта Network, созданного ранее, и сохраняет это значение в переменной sUser. В переменной sCompName сохраняется имя компьютера, полученное из свойства Computername. Функция UCASE() задействована для преобразования значения переменной sUser к верхнему регистру для последующего сравнения со строкой «ADMINISTRATOR». Если результат этого сравнения будет отрицательным, сценарий выведет сообщение об ошибке и завершит работу.
В противном случае, сценарий продолжит работу, и следующим шагом будет проверка факта подключения компьютера к домену. Сначала, метод oWshShell.RegRead производит чтение ключа реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\DomainCache\GONDOR и его значение сохраняет в переменной sInDomain. После этого сценарий делает две проверки. Первая: если значением переменной sInDomain является null (ключ реестра пуст), сценарий выводит сообщение об ошибке и завершает работу. Вторая: если произошла фатальная ошибка с кодом 2147024894 (ключа реестра не существует), сценарий также завершается сообщением об ошибке. Если ключа реестра не окажется, и сценарий не будет содержать оператор ON ERROR RESUME NEXT, упомянутый мной ранее, пользователь увидит сообщение об ошибке, показанное на Рисунке 1.
Обе секции относятся именно к RIS, поэтому не трогаем, и оставляем неизменными.
Для успешного копирования файла необходимо знать три вещи: куда, что и откуда. Куда - это содержимое секции [DestinationDirs] и, может быть, ещё её помощника параметра CustomDestination. Что - это содержимое дочерних секций, содержащих имена файлов. Откуда - это содержимое секций [SourceDisksFiles] и [SourceDisksNames]. Объекты "куда" и "что" связаны между собой одинаковыми именами дочерних секций. То есть, исходя из того, что вся дочерняя секция может быть скопирована только в один каталог, логично то, что у дочерней секции всего один пункт назначения и, следовательно, ей принадлежит один параметр в секции [DestinationDirs]. Далее, объекты "что" и "откуда" связаны между собой именами файлов, значит, файл, присутствующий в операции перемещения (дочерней секции), обязан быть указанным в источнике [SourceDisksFiles]. Для облегчения понимания этих связей пример:
[DefaultInstall]
CopyFiles=cpf.test
[cpf.test]
filename.ext
[DestinationDirs]
cpf.test=-1, C:\Temp
[SourceDisksFiles]
filename.ext=1
[SourceDisksNames]
1="TEST CD","",0
В этом простом примере копируется файл filename.ext в каталог C:\Temp. Если необходимо скопировать несколько файлов в директорию C:\Temp, их нужно дописать в двух секциях: дочерней секции [cpf.test] и в секции "Откуда" - [SourceDisksFiles]. Если следующий файл необходимо будет копировать в другую директорию, для него придётся создавать новую дочернюю секцию, добавлять её к первой в параметре CopyFiles и указывать для неё новый каталог назначения [DestinationDirs]. В месте "Откуда" (дистрибутив) файлы могут находиться в разных подкаталогах и\или cab-архивах. За это отвечает секция [SourceDisksNames]. Она содержит пронумерованные дистрибутивные пути, причём каждый путь может указывать одновременно и на отдельный диск, и на отдельную директорию и на отдельный cab-архив. Формат записи дистрибутивных секций:
[SourceDisksNames]
1 = "Drive_Name","data1.cab",subdir
2 = "Drive_Name 2","",0
где:
1 - переменная дистрибутивного пути,
"Drive_Name" - имя диска (label),
"data1.cab" - cabinet-архив на диске "Drive_Name", содержащий файлы, предназначенные для копирования (допускается указывать имя файла cab-архива без расширения),
subdir - Поддиректория на диске "Drive_Name",
содержащая файл "data1.cab". Во второй строке указано лишь имя диска, имя файла cab-архива оставлено пустым, а поддиректория равна нулю. Более традиционным считается ставить для текущей директории знак точки - ".", однако, скорее всего, у Microsoft проблемы с синтаксисом и, кроме того, постоянные нарушения неписанных стандартов. Далее:
[SourceDisksFiles]
filename.ext = 1
filenam1.ext = 1
filenam2.ext = 2
Если предположить, что все три указанных файла указаны в одной дочерней секции копирования, однако, как указано выше, находятся на разных сменных дисках - первые два на диске с меткой "Drive_Name", а третий - на диске "Drive_Name2", то в процессе копирования будет показан диалог с требованием сменить диск для продолжения операции копирования или указать другой путь к диску:
Параметры по умолчанию являются обязательными, поскольку они задают начальные условия установки. floppyless - поддержка загрузки с дискеты, msdosinitiated - для запуска dos-сессии установки, параметр DisableAdminAccountOnDomainJoin=1 нужен, если установка идет через RIS. Нам сюда требуется лишь добавить строку UnattendedInstall = "Yes". Желающие могут также добавить AutoPartition = 0.
Я рекомендую внимательно изучить параметры секции [RegionalSettings] файла ответов, т.к. ее мы применим другим способом.
[RegionalSettings]
LanguageGroup=1,2,3,4,5
SystemLocale=00000419
UserLocale=00000419
InputLocale=0409:00000409,0419:00000419
Секцию [ReginalSettings] удобно конфигурировать через Setup Manager. Однако, давайте рассмотрим ее детально, т.к. она содержит много параметров и традиционно вызывает вопросы. Ниже я привожу подробные описания параметров, которые взяты из KB289125
(в статье также перечислены и другие параметры).
LanguageGroup - Задает поддержку языковой группы операционной системой, установленной на компьютере. Если данная настройка указана, то она определяет также значения настроек InputLocale, SystemLocale и UserLocale. По умолчанию в любом случае устанавливаются первые пять языковых групп из этого списка, так что для поддержки кириллицы данный параметр вообще необязателен.
SystemLocale
Разрешает программам, не использующим кодировку Юникод (Unicode), выполнять работу, выводить меню и диалоговые окна с использованием локализованных языковых символов. Если в локализованной программе некорректно отображаются языковые символы, настройка языка системы по умолчанию с целью обеспечить соответствие языку локализованной программы может разрешить проблему. Однако данная настройка является сетевой, поэтому невозможно одновременно поддерживать версии локализованных программ, не использующих Юникод, на нескольких языках. Значения параметров должны соответствовать списку Locale IDs.
UserLocale
Управляет способом отображения чисел, времени, денежных сумм и дат.
InputLocale
Задает код раскладки клавиатуры и комбинации раскладок. Если указано несколько языков ввода, первой используемой раскладкой клавиатуры будет являться та, которая определена для данного компьютера по умолчанию (в том числе и при вводе пароля при входе в систему). Указанные комбинации раскладок клавиатуры должны поддерживаться для языков, либо определенных путем использования настройки LanguageGroup, либо для языка по умолчанию для устанавливаемой локализованной версии операционной системы Windows XP.
Если для доступного языка не поддерживается указанная комбинация, будет использоваться комбинация раскладки клавиатуры по умолчанию. Данная настройка игнорируется, если задана настройка Language.
Таким образом, в приведенном выше примере будут установлены:
LanguageGroup=1,2,3,4,5
Пять языковых групп: Western Europe and United States, Central Europe, Baltic, Greek и Cyrillic. Строго говоря можно не указывать данный параметр вообще, т.к. группы 1-5 устанавливаются по умолчанию.
SystemLocale=00000419
Русский язык по умолчанию для программ, не использующих Юникод.
UserLocale=00000419
Русские Стандарты и Форматы.
InputLocale=0409:00000409,0419:00000419
Две раскладки клавиатуры: русская и английская. Английская будет раскладкой по умолчанию (в том числе и при входе в систему, т.к. идет первой в списке).
Оставляем ее неприкосновенной - это способ загрузки Windows и определитель устройства загрузки. Эта секция применяется только при RIS-установке.
Практически аналогична одноименной секции в winnt.sif. Единственное, что характерно именно для RIS - это строки:
InstallFilesPath = "\\%SERVERNAME%\RemInst\%INSTALLPATH%\%MACHINETYPE%"
LegacyNIC = 1
поэтому их оставляем в неизменном виде.
Чтобы папка $OEM$ скопировалась на жесткий диск, необходимо добавить строку:
OemFilesPath = "\\%SERVERNAME%\RemInst\%INSTALLPATH%\%MACHINETYPE%\$OEM$\"
и положить папку $OEM$ параллельно i386 в \\RemoteInstall. Остальное - на ваше усмотрение.
Здесь можно поставить свои параметры в соответствующих строках, это не критично. Ну и добавить параметр ProductKey.
Для уменьшения объёма файла INF-скрипта и для облегчения языковой локализации пакетов рекомендуется употреблять переменные, определение которых находится в отдельной секции. Имя секции [strings]. Оно встречается почти в каждом INF-файле с завидным постоянством и его использование считается правилом хорошего тона в написании INF-скриптов. В теле скрипта переменные обозначаются знаками процента (%) по краям, как и переменные директорий. Пример использования секции переменных:
[section]
parameter=%message1%
[strings]
regpath="Software\Firm_name\Program_name\Options"
message1="Произвольное сообщение"
По традиции секция strings располагается ниже всех остальных секций, являясь завершающей.
Места, где запрещается употребление переменных: в именах любых функций, вместо названий параметров и вместо управляющих знаков ;=[],. Под раздел переменных, которые можно использовать в INF-скриптах не попадают никакие другие переменные, кроме тех, которые определены непосредственно в этом файле скрипта и переменных директорий, часть которых можно определить динамично. В значениях переменных нельзя использовать никакие другие переменные, включая переменные путей.
SPACKS | Сюда кладется последний Service Pack. |
Сетевые адаптеры 3 Com:
• | 3c900 (Combo и TP0) |
• | 3c900B (Combo, FL, TPC, TP0) |
• | 3c905 (T4 и TX) |
• | 3c905B (Combo, TX, FX) |
Сетевые адаптеры AMD:
• | AMD PCNet and Fast PC Net |
Сетевые адаптеры Compaq:
• | Netflex 100 (NetIntelligent II) |
• | Netflex 110 (NetIntelligent III) |
Сетевые адаптеры Digital Equipment Corp (DEC)
• | DE 450 |
• | DE 500 |
Сетевые адаптеры Hewlett Packard:
• | HP Deskdirect 10/100 TX |
Сетевые адаптеры Intel Corporation:
• | Intel Pro 10+ |
• | Intel Pro 100+ |
• | Intel Pro 100B (включая серию E100) |
Сетевые адаптеры SMC:
• | SMC 8432 |
• | SMC 9332 |
• | SMC 9432 |
Примечание. Служебная программа создания загрузочных дисков RIS поддерживает только сетевые адаптеры, подключаемые через интерфейс PCI (карты ISA, EISA и Token Ring не поддерживаются).
Наверх страницы
Несмотря на то, что большая часть материалов unattended.ozone.net предназначена домашним пользователям, немало полезной информации об автоматической установке Windows могут почерпнуть также и системные администраторы, которым приходится устанавливать операционные системы на десятки и даже сотни машин. В таких случаях установка ОС с оптического носителя на каждую машину отнимает слишком много времени. Кроме того компьютеры могут находиться в разных зданиях или даже городах. К тому же, иногда возникают ситуации, когда компьютер либо не оснащен оптическим приводом и флоппи дисководом, либо и тот и другой просто неисправны. При перечисленные выше условиях установка ОС по сети будет наиболее эффективным, а иногда и единственным способом. Учитывая появление второй статьи на тему установки по сети, было решено выделить обе статьи в отдельную секцию.
В статье Удаленная установка операционной системы подробно описывается архитектура и тонкости работы служб удаленной установки. Это наиболее полное руководство по RIS, имеющееся у Microsoft на английском языке, а теперь и у нас - на русском.
В Пошаговом руководстве по удаленной установке ОС описаны действия, необходимые для установки и настройки служб удаленной установки.
Статья Особенности автоустановки через Remote Installation Services (RIS), написанная участником конференции OSZone Akufrol, уже знакома постоянным посетителям ресурса. Она рассчитана на читателей, которым уже известно что такое RIS и с чем его едят. В статье подробно и доступно описан процесс превращения обычной RIS-установки ОС в автоматическую (unattended).
А вот в статье Загрузка компьютера по сети с практически любого образа диска, рассказывается сразу о двух различных способах загрузки. Авторы способов vserd и Power User делятся с вами собственным опытом. Статья содержит весьма подробные инструкции для каждого из способов, следуя которым даже неискушенный пользователь сможет успешно загрузиться по сети и установить систему.
С большим удовольствием мне хотелось бы подчеркнуть, что все статьи написаны или переведены участниками конференции OSZone. Если у вас возникнет желание поделиться с аудиторией сайта собственными знаниями, я с удовольствием опубликую и ваши статьи.
Дополнительную информацию вы можете найти на следующих ресурсах:
Службы удаленной установки (онлайн справка Windows 2003)
Архитектура PXE (онлайн справка Windows 2003)
DHCP (онлайн справка Windows 2003)
Протокол DCHP в Windows 2000
(OSzone.net)
Автор: Вадим Стеркин aka Vadikan
Иcточник: unattended.oszone.net
Наши форумы
Опубликована - 03.12.2005
© Все права защищены OSzone.net 2001-2008. Материалы взяты с сайта unattended.oszone.net. Дальнейшее применение материалов в других печатных изданиях, включая электронные статьи, должно сопровождаться указанием имени сайта unattended.OSzone.net и имени автора. |
Распечатано 03.12.05 |
Спроeктировала и разработала сайт Ginger |
Setup Billboards - это окна, которые пользователь видит во время установки Windows. Я затрудняюсь перевести этот термин корректно и кратко на русский язык. Если у вас есть соображения по этому поводу, то поделитесь со мной.
Windows XP и Windows 2003 демонстрируют Setup Billboards нового стиля. Мы рассмотрим различные аспекты их изменения, включая изображения, шрифты и цвета. |
|
Классические Setup Billboards доступны в Windows 2000, Windows XP и Windows 2003. Однако, только в Windows 2000 они демонстрируются по умолчанию. Для того, чтобы включить их в Windows XP или 2003 достаточно отредактировать буквально пару строк текста. |
Setup Billboards нового стиля | Классические Setup Billboards
Автор: Вадим Стеркин aka Vadikan
Иcточник: (переведено с англ.) unattended.msfn.org
Наши форумы
Опубликована- 09.04.2005
© Все права защищены OSzone.net 2001-2008. Материалы взяты с сайта unattended.oszone.net. Дальнейшее применение материалов в других печатных изданиях, включая электронные статьи, должно сопровождаться указанием имени сайта unattended.OSzone.net и имени автора. |
Распечатано 09.04.05 |
Спроeктировала и разработала сайт Ginger |
Setup Billboards нового стиля предоставляют большое поле для деятельности по изменению их внешнего вида.
В этом разделе представлены четыре статьи.
Winntbbu Editor - самoe удобнoe и простoe средство редактирования Setup Billboards. Остальные статьи содержат больше деталей, которые не столь уж и важны для конечного пользователя. Подробнее...
Изменение изображений. Из этой статьи вы узнаете как изменить фон и другие изображения, являющиеся частью Setup Billboards нового стиля. Помимо фона можно изменить логотип Windows, bullets и анимированную полоску прогресса. В принципе, вид Setup Billboards можно изменить до неузнаваемости. Подробнее...
Изменение текста. Эта статья рассказывает о том, как изменить текст, отображаемый в Setup Billboards во время установки Windows. Конкретнее, рассматривается изменение содержания текста, шрифта и размера. Подробнее...
Изменение цветов. Вы уже изменили фон ваших Setup Billboards, и возможно изменили текст. Но теперь белый текст не очень хорошо смотрится, или, возможно, полоска прогресса выбивается из общей картины? Это все можно поправить. Подробнее...
Автор: Вадим Стеркин aka Vadikan
Иcточник: unattended.oszone.net
Наши форумы
Опубликована- 09.04.2005
© Все права защищены OSzone.net 2001-2008. Материалы взяты с сайта unattended.oszone.net. Дальнейшее применение материалов в других печатных изданиях, включая электронные статьи, должно сопровождаться указанием имени сайта unattended.OSzone.net и имени автора. |
Распечатано 09.04.05 |
Спроeктировала и разработала сайт Ginger |
Основной интерпретатор. Выполняет основную массу действий:
Запись и удаление ключей, параметров и значений системного реестра
Добавление и удаление строк, замена значений INI-файлов
Распаковка файлов из CAB-архивов, копирование и удаление файлов
Переименование, смена атрибутов файлов и папок
Установка драйверов
Создание системных сервисов и устройств (Windows NT-based)
Проверка пользовательских полномочий (проверка на Администратора)
Типичный пример запуска интерпретатора SETUPAPI для выполнения скрипта:
rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 C:\Script.inf
где:
InstallHinfSection - имя вызываемой функции (точка входа);
DefaultInstall - первый параметр для вызываемой функции, означает имя выполняемой секции в INF-скрипте;
132 - второй параметр для вызываемой функции, флаг для обработки скрипта;
C:\Script.inf - третий параметр для вызываемой функции, полный путь к файлу скрипта.Обратите внимание, требуется именно полный путь, так как простое указание имени файла подразумевает расположение файла скрипта в системной директории Windows. Это же примечание в равной мере относится и к интерпретатору AdvancedINF.
В случае с MS Windows 95 строка запуска будет такой:
rundll.exe setupx.dll,InstallHinfSection DefaultInstall 132 C:\Short_~1\Script.inf
где:
rundll.exe - 16-разрядный бинарник для запуска 16-разрядной библиотеки setupx.dll
C:\Short_~1\Script.inf - короткое, DOS полное имя к файлу скрипта, где каждое имя объекта не должно превышать 8-ми символов. Точка и три символа расширения не подпадают под это правило. Если имя папки или файла длиннее 8-ми символов, берутся первые 6, а остальные заменяются двумя символами: ~1. Другой объект длиннее 8-ми символов с одинаковыми первыми 6-ю символами в DOS-интерпретации будет оканчиваться на ~2 и так далее.
Создайте директорию для размещения всех драйверов и промежуточных файлов, которые будут конфигурироваться на предварительном этапе. В данной статье будет использоваться директория C:\preload, в которой надо создать поддиректории следующим образом C:\preload\$OEM$\$1\drivers
Вам понадобятся драйверы для SATA и/или RAID контроллеров. Их можно взять с CD, поставлявшегося в комплекте с материнской платой или ноутбуком. Более новые версии драйверов могут находиться на сайте производителя.
Распакуйте драйверы в директорию, названную по имени контроллера. Например, возможна такая структура
C:\preload\$OEM$\$1\drivers\motherboard\controller
Примечание: названия поддиректорий, содержащих драйверы, должны состоять из не более чем восьми символов. Например, для материнской платы ABIT IC7-MAXIII есть два набора драйверов Silicon Images: Si3112r и Si3114r. В таком случае нужно создать следующие директории
C:\preload\$OEM$\$1\drivers\IC7_MAX3\Si3112r
C:\preload\$OEM$\$1\drivers\IC7_MAX3\Si3114r
Если ваши драйверы находятся внутри установочной программы (нередко встречается у Intel), то распакуйте их из *.ехе при помощи WinRAR, например.
На данном этапе у вас в соответствующих директориях должны быть, по крайней мере, следующие файлы
*.sys
*.cat
*.inf
Драйверы Intel представляют собой особый случай. Если у вас нет вышеуказанных файлов, то вероятнее всего у вас есть два кабинетных архива (*.cab) и setup.exe. В таком случае выполните следующую команду из командной строки:
c:\setup.exe –a –p c:\path
где path - директория, которую вы выбрали для распаковки. После распаковки ваши драйверы будут либо в поддиректори XP либо drivers. Скопируйте содержимое данной директории. Следуя нашей структуре, вы должны скопировать содержимое в
C:\preload\$OEM$\$1\drivers\motherboard\intel
Вы можете смело удалить файлы readme и любые директории, относящиеся к другим операционным системам (Windows 2000 и Windows 98). Если одни и те же драйверы предназначаются для XP и 2000, то их, понятное дело, удалять не надо. Продолжая пример с ABIT IC7-MAXIII у нас теперь такая картина:
В директории C:\preload\$OEM$\$1\drivers\IC7_MAX3\Intel находятся файлы
TXTSETUP.OEM
iaAHCI.cat
iaStor.cat
iaAHCI.inf
iaStor.inf
iaStor.sys
А в директории C:\preload\$OEM$\$1\drivers\IC7_MAX3\Si3112r находятся файлы
SilSupp.cpl
TxtSetup.oem
si3112r.cat
Si3112r.inf
Si3112r.sys
SIWinAcc.sys
SiiSupp.vxd
и так далее для каждого из контроллеров.
Если содержимое установочного диска Windows XP у вас еще не скопировано на жесткий диск, но сейчас самое время это сделать. Копируем в C:\XPCD. Затем скопируйте директорию $ОЕМ$ из C:\preload в C:\XPCD.
Теперь нужно сделать сжатые копии всех *.sys файлов и скопировать их в C:\XPCD\i386 при помощи утилиты makecab. Из командной строки запустите следующую команду:
makecab C:\XPCD\$OEM$\$1\drivers\motherboard\controller\controller.sys C:\XPCD\I386\controller.SY_
где motherboard - название директории, которое вы дали по названию материнской платы, controller - соответственно название директории контроллера, а controller.sys и controller.SY_ - названия ваших *.sys файлов. У вас может быть более одного *.sys файла в каждой директории, однако вам нужен только тот, имя которого совпадает с именем *.inf файла. Если взять за пример шаг 6, то из директории Si3112r нам нужен только Si3112r.sys. Аналогичным образом добавьте в i386 все остальные *.sys файлы.
Откройте в текстовом редакторе файл txtsetup.sif расположенный в C:\XPCD\i386. Блокнот подойдет, хотя и не слишком удобен для данной цели. Главное, чтобы редактор не создавал ненужного форматирования, такого как переносы строк, например.
Найдите первую секцию [SourceDisksFiles], которая располжена в районе 189 строки. В самом начале секции [SourceDisksFiles] добавьте следующую строку
controller.sys = 1,,,,,,3_,4,1
где controller.sys - имя файла, созданного на четвертом шаге. Аналогичным образом добавьте строки, соответствующие остальным *.sys файлам. Каждому файлу должна соответствовать одна строка. В нашем примере:
[SourceDisksFiles]
iaStor.sys = 1,,,,,,3_,4,1
Si3112r.sys = 1,,,,,,3_,4,1
Si3114r.sys = 1,,,,,,3_,4,1
viasraid.sys = 1,,,,,,3_,4,1
Рассказ о формате этих строк я решил вынести на отдельную страницу ввиду сложности материала.
Внимание! Для того, чтобы драйверы корректно устанавливались при инсталляции системы с жесткого диска или ее обновления с компакт-диска, вам нужно также внести изменения в файл dosnet.inf следующим образом:
[FloppyFiles.2]
d1,iaStor.sys
d1,Si3112r.sys
d1,Si3114r.sys
d1,viasraid.sys
[Files]
d1,iaStor.sys
d1,Si3112r.sys
d1,Si3114r.sys
d1,viasraid.sys
Не закрывайте txtsetup.sif и найдите секцию [HardwareIdsDatabase], находящуюся в районе строки 18800. Мы через минуту вернемся к этой секции, а пока рассмотрим файлы, находящиеся в директориях с драйверами. Там есть файлы, информацию из которых нужно скопировать в txtsetup.sif. Нам понадобится либо *.oem либо *.inf файл из каждой из них. Идем в первую директорию и действуем по следующему принципу: если есть одноименный *.sys файлу *.oem файл, то открываем его, а если нет, то открываем одноименный *.inf файл. Если используете *.oem файл, то найдите все строки, начинающиеся с PCI\VEN_, заключенные в кавычки. Если используете *.inf файл, то найдите секцию [Strings], где есть аналогичные строки (но без кавычек). Проигнорируйте строки, начинающиеся с %. Скопируйте каждую строку от начала до первой точки (не включая точку). Например, если строка PCI\VEN_8086&DEV_2652&CC_0104.DeviceDesc = "Intel(R) 82801FR SATA RAID Controller", то скопировать нужно только PCI\VEN_8086&DEV_2652&CC_0104 и больше ничего.
Теперь поместите скопированные строки в секцию [HardwareIdsDatabase] файла txtsetup.sif и добавьте к каждой = "sysfile", где sysfile - имя вашего *.sys файла одноименного *.oem или *inf. файлу. В нашем примере в секции [HardwareIdsDatabase] это выглядит так:
[HardwareIdsDatabase]
PCI\VEN_8086&DEV_2652&CC_0104 = "iaStor"
PCI\VEN_8086&DEV_2652&CC_0106 = "iaStor"
PCI\VEN_8086&DEV_24DF&CC_0104 = "iaStor"
PCI\VEN_8086&DEV_25B0&CC_0104 = "iaStor"
PCI\VEN_1095&DEV_3112 = "Si3112r"
PCI\VEN_1095&DEV_3512 = "Si3112r"
PCI\VEN_1002&DEV_436E = "Si3112r"
PCI\VEN_1002&DEV_4379 = "Si3112r"
PCI\VEN_1002&DEV_437A = "Si3112r"
PCI\VEN_1095&DEV_3114 = "Si3114r"
PCI\VEN_1106&DEV_3149 = "viasraid"
Теперь найдите секцию [SCSI.load] в районе строки 19266. Добавьте следующую строку для каждого *.sys файла
sysfile = sysfile.sys,4
где sysfile опять же имя вашего *.sys файла. В нашем примере в секции [SCSI.load] это выглядит так:
[SCSI.Load]
iaStor = iaStor.sys,4
Si3112r = Si3112r.sys,4
Si3114r = Si3114r.sys,4
viasraid = viasraid.sys,4
Теперь найдите секцию [SCSI] в районе строки 21613. Добавьте следующие строки для каждого *.sys файла.
sysfile = "Description"
где sysfile - имя вашего *.sys файла, a Description - любое описание, которое вы хотите дать контроллеру. Проще всего использовать описания из *.inf файла. В нашем примере это выглядит так:
[SCSI]
iaStor = "Intel(R) 82801FR/82801ER/6300ESB SATA RAID Controller"
Si3112r = "Silicon Image SiI 3x12 SATARaid Controller"
Si3114r = "Silicon Image SiI 3114 SATARaid Controller"
viasraid = "VIA Serial ATA RAID Controller"
На этом редактирование txtsetup.sif закончено. Закройте и сохраните файл.
Теперь настало время изменить winnt.sif (или создать новый, если у вас его еще нет). Подробнее о winnt.sif я рассказываю тут, поэтому остановлюсь лишь на секции [Unattended]. Для успешной установки драйверов необходимо наличие в секции следующих параметров
[Unattended]
OEMPreinstall=Yes
OemPnPDriversPath="Drivers\path"
где path - путь к директории с драйверами контроллера. В нашем примере это выглядит так:
[Unattended]
OEMPreinstall=Yes
OemPnPDriversPath="drivers\IC7_MAX3\intel;drivers\IC7_MAX3\Si3112r;drivers\IC7_MAX3\Si3114r;drivers\IC7_MAX3\via"
Поскольку у нас драйвера расположены в нескольких директориях, мы заключаем их перечисление в кавычки и разделяем "точкой с запятой". Все значения параметра OemPnPDriversPath должны быть в одну строку, переносы недопустимы.
Если вас интересует только интеграция драйверов, и файл ответов создается исключительно для этой цели, то помимо указанных выше параметров добавьте секцию [Data] с таким содержимым:
[Data]
MsDosInitiated="0"
Закройте winnt.sif и сохраните изменения (или сохраните ваш файл с именем winnt.sif в i386).
Как Вы заметили, в каждом типе заголовка неизменной строкой является параметр Signature. Его значение определяет, для какой операционной системы предназначен скрипт. Известны два значения: $CHICAGO$ и $WINDOWS NT$. Первый предназначен для всех операционных систем MS Windows; второй только для MS Windows NT 5.0 (2000), 5.1 (XP), 5.2 (2003). Исключение составляют драйверные скрипты - здесь необходимо по возможности точнее определить тип системы, иначе драйвер (в зависимости от типа) не будет опознан, как подходящий.
Windows Registry Editor Version 5.00 - заголовок файла, являющийся его неотъемлемой частью. Также в качестве заголовка вы можете встретить REGEDIT4 - это формат Windows 98 / NT 4.0, который впрочем поймут и более новые операционные системы Windows. Подробнее о различиях в форматах можно прочитать на сайте JSO FAQ (на английском языке).
;Отключить меню недавних документов - комментарий. Все строки, начинающиеся с ; (точка с запятой) представляют собой комментарии.
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer] - это раздел реестра. Графически (в редакторе реестра) он предсатавляет собой путь к параметру. В формате REG-файлов разделы всегда заключаются в квадратные скобки. В этом примере (под)раздел Explorer принадлежит разделу HKEY_CURRENT_USER.
"NoRecentDocsMenu"=hex:01,00,00,00 - параметр реестра и его значение. В зависимости от значения параметра, меняется поведение операционной системы или объекта. Многие параметры можно настроить в графическом интерфейсе операционной системы, но далеко не все. В таких случаях для изменения параметра используют редакторы реестра, твикеры или REG-файлы.
В REG-файле может содержаться несколько разделов и параметров реестра, но заголовок используется только в самом начале.
Пример:
Windows Registry Editor Version 5.00
;Отключить перезагрузку в случае BSOD
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl]
"AutoReboot"=dword:00000000
;Отключить уведомление на экране приветствия о непрочитанных сообщениях
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\UnreadMail]
"MessageExpiryDays"=dword:00000000
Данный REG-файлом был получен путем экспорта из редактора реестра regedit.exe. При помощи REG-файлов можно вносить изменения в системный реестр - эта операция называется импортом параметров реестра.
BOOT | Здесь находится файл для создания загрузочного диска. Если вы указали путь к дистрибутиву на CD, то файл сам появится в директории в процессе работы XPC. |
CDROOT | Результат работы XPCreate. Из этой директории и создается ISO образ. Фактически, эта директория содержит обновленный дистрибутив. |
NEWFILES | Файлы созданные в процессе работы программы. Перепакованные обновления и пр. Можно удалить, они больше не понадобятся. |
TEMP | Временные файлы и директории, созданные в процессе работы. Можно удалить. |
Автор: Вадим Стеркин aka Vadikan
Иcточник: unattended.oszone.net
Наши форумы
Опубликована- 20.03.2005
© Все права защищены OSzone.net 2001-2008. Материалы взяты с сайта unattended.oszone.net. Дальнейшее применение материалов в других печатных изданиях, включая электронные статьи, должно сопровождаться указанием имени сайта unattended.OSzone.net и имени автора. | Распечатано 09.04.05 |
Спроeктировала и разработала сайт Ginger |
В принципе, макросы дублируют большинство системных переменных, но не все. Добраться напрямую к их значениям можно с пом. ф-ции EnvGet, например:
EnvGet("SYSTEMDRIVE")
Дописывание пути в переменную Path:
;например, допишем путь к 7-Zip в Path $addtopath='%ProgramFiles%\7-Zip' $smcur='HKEY_LOCAL_MACHINE\SYSTEM\ControlSet' & StringFormat("%03s",RegRead("HKEY_LOCAL_MACHINE\SYSTEM\Select","Current")) & '\Control\Session Manager\Environment' $syscurpath=RegRead($smcur,"Path") ;если путь уже был внесен в Path (например, при установке поверх более старой версии), то ничего не делаем If Not StringInStr ($syscurpath,@ProgramFilesDir&'\7-Zip') and Not StringInStr ($syscurpath,$addtopath) Then RegWrite($smcur,"Path","REG_EXPAND_SZ",RegRead($smcur,"Path") & ";" & $addtopath) EndIf Если верить руководству AutoIt, то применение ф-ции EnvUpdate() после внесения изменений в переменную
Path должно сделать доступным новые пути, но, на практике этого не происходит - для вступления изменений в силу требуется перезагрузить ОС.
Создание новой системной переменной:
;имя создаваемой переменной
$newsysvarname='new'
;тип переменной
$newsysvartype='REG_SZ'
;значение переменной
$newsysvarvalue='value'
$smcur='HKEY_LOCAL_MACHINE\SYSTEM\ControlSet' & StringFormat("%03s",RegRead("HKEY_LOCAL_MACHINE\SYSTEM\Select","Current")) & '\Control\Session Manager\Environment'
RegWrite($smcur,$newsysvarname,$newsysvartype,$newsysvarvalue)
Создать сист. переменную также можно используя ф-цию EnvSet("envvariable"[,"value"]), но она будет существовать только до выхода из текущего скрипта.
nLite работает на 32- или 64-разрядных версиях Windows. Windows 9x не поддерживается. Для работы программе требуется наличие установленного .NET Framework 2.0. Вы можете загрузить инсталлятор .NET Framework 2.0 с этой страницы сайта Microsoft или воспользоваться перепакованным бесключевым инсталлятором, ссылку на который вы найдете в этой теме конференции OSZone. Для установки .NET Framework в свою очередь требуется наличие в системе Windows Installer 3.0 и выше.
>> nLite: Возможности и системные требования
nLite: Подготовка дистрибутива
nLite: Интеграция пакетов обновлений, хотфиксов и драйверов
nLite: Удаление компонентов, Автоматическая установка и Настройки
nLite: Модификация системных файлов, Твики и Создание ISO
nLite: FAQ
Автор: Вадим Стеркин aka Vadikan
Иcточник: unattended.oszone.net
Наши форумы
Опубликована - 21.03.06
© Все права защищены OSzone.net 2001-2008. Материалы взяты с сайта unattended.oszone.net. Дальнейшее применение материалов в других печатных изданиях, включая электронные статьи, должно сопровождаться указанием имени сайта unattended.OSzone.net и имени автора. |
Распечатано 21.03.06 |
Спроeктировала и разработала сайт Ginger |
Для перезагрузки компьютера можно создать скрипт AutoIt с любыми сообщениями:
ProgressOn("Пожалуйста, подождите...", "Происходит уничтожение данных :)", "Система обнаружила использование нелегальной" & CHR(10) & "копии Windows. Через " & $j & " сек. все данные" & CHR(10) & "на ваших дисках будут уничтожены.") For $i = 1 to 99 step 3.3 $j=$j-1 sleep(1000) ProgressSet( $i, "Система обнаружила использование нелегальной" & CHR(10) & "копии Windows. Через " & $j & " сек. все данные" & CHR(10) & "на ваших дисках будут уничтожены.") Next ProgressSet(-1 , "Шеф! Все пропало. Прощайте.") Shutdown(2)
sleep(5000)
На основе сообщения _MPAK_ на форуме автоустановки.
Автор: Вадим Стеркин aka Vadikan
Иcточник: unattended.oszone.net
Наши форумы
Опубликована - 23.12.2007
© Все права защищены OSzone.net 2001-2008. Материалы взяты с сайта unattended.oszone.net. Дальнейшее применение материалов в других печатных изданиях, включая электронные статьи, должно сопровождаться указанием имени сайта unattended.OSzone.net и имени автора. |
Распечатано 23.12.2007 |
Спроeктировала и разработала сайт Ginger |
Для скрытия консольных окон (bat и cmd файлов) есть несколько утилит.
Установить программу Skype без плагина для Internet Explorer и панели Google Toolbar, при этом отключив запуск Skype при старте Windows, можно следующим образом. Сначала создайте следующий REG-файл для настройки устанавливаемой программы:
Windows Registry Editor Version 5.00
; Отключение плагина IE и панели Google Toolbar
[HKEY_CURRENT_USER\Software\Skype\Phone\UI]
"InstallInfo"="google-toolbar:offered-notinstalled"
"Installed"=dword:00000001
[HKEY_CURRENT_USER\Software\Skype\Toolbars\Installer]
"GTDefault"=dword:00000000
"IEDefault"=dword:00000000
"FFDefault"=dword:00000000
; Язык программы
[HKEY_CURRENT_USER\Software\Skype\Phone\UI\General]
"Language"="en"
; Настройки для корректного удаления Skype
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Skype_is1]
"Inno Setup: Selected Tasks"="desktopicon"
"Inno Setup: Deselected Tasks"="launchSkype,startSkype,IsIEChecked,IsFFChecked"
Скопируйте код в текстовый редактор и сохраните с именем, допустим, skype_settings.reg.
Поскольку программа Skype упакована в InnoSetup, тихую установку можно осуществить при помощи ключа /VERYSILENT. Но во время установки программа автоматически прописывается в автозапуск. Этого можно избежать, удалив следующий параметр реестра после установки Skype:
Windows Registry Editor Version 5.00
; Отключение запуска программы при старте Windows
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"Skype"=-
Скопируйте код в текстовый редактор и сохраните с именем, допустим, skype_run.reg. Теперь установка Skype будет производиться так: сначала импортируется первый файл реестра, затем устанавливается программа, после чего импортируется второй файл реестра:
REGEDIT /S %systemdrive%\Install\skype_settings.reg
%systemdrive%\Install\SkypeSetup.exe /VERYSILENT
REGEDIT /S %systemdrive%\Install\skype_run.reg
Эта секция рассказывает о сложных способах установки приложений. Если вы освоили синтаксис RunOnceEx в разделе для опытных пользователей, то способ "RunOnceEx с CD" у вас никаких затруднений не вызовет. Остальная же часть секции посвящена программам, призванным заменить RunOnceEx. Статья "Выбор устанавливаемых приложений" достаточно большая (сейчас там три страницы).. Она рассказывает сразу о нескольких программах, как минимум дающих пользователю выбор что устанавливать, а что нет. Однако необходимо понимать, что выбор приложений фактически означает отказ от абсолютно автоматической установки Windows.
Данная секция довольно сильно отличается от аналогичной на MSFN. Статья о выборе приложений появилась у нас намного раньше, чем нечто аналогичное было сделано на MSFN. Более того, вдохновленные первой редакцией статьи, наши соотечественники написали как минимум три программы, которые впоследствии вошли в обзор. Поэтому я решил оставить имеющийся формат статьи, и не подстраиваться под MSFN.
Перейти к статье:
Запуск RunOnceEx с CD | Выбор устанавливаемых приложений
Автор: Вадим Стеркин aka Vadikan
Иcточник: unattended.oszone.net
Наши форумы
Опубликована- 11.03.2005
© Все права защищены OSzone.net 2001-2008. Материалы взяты с сайта unattended.oszone.net. Дальнейшее применение материалов в других печатных изданиях, включая электронные статьи, должно сопровождаться указанием имени сайта unattended.OSzone.net и имени автора. |
Распечатано 09.04.05 |
Спроeктировала и разработала сайт Ginger |
Если вы чувствуете себя продвинутым пользователем, или просто не хотите устанавливать все компоненты, то сложный метод для вас. Сложный метод позволяет интегрировать (или установить по цепочке) обновления, которые уже вышли к Office, а также полностью сконфигурировать установку (да-да, можно даже указать какие ярлыки установить или избавиться от назойливого Помощника). Если вы избрали сложный метод, то у вас есть два варианта:
Mожно создать точку административной установки и затем интегрировать обновления в дистрибутив Office.
Можно сконфигурировать файл setup.ini и осуществить установку обновлений по цепочке вслед за установкой Office.
Kакой из вариантов выбрать - решать вам. Точка административной установки, безусловно, удобна при ее размещении на сервере. В нее можно интегрировать обновления, тем самым обеспечив сразу всех пользователей организации обновленным источником установочных файлов. Домашнему же пользователю точка административной установки особых преимуществ не дает, если конечно интеграция обновлений не является самоцелью. При помощи файла setup.ini можно сконфигурировать установку клиентских обновлений (их размер меньше, чем размер административных обновлений), а манипуляции с установочными файлами Office сводятся к минимуму. В общем случае, создать точку административной установку можно только в версиях Office 2003, которые распространяются через Volume License программы (как правило, корпоративные). Цитата с сайта Office Resource Kit: Only editions of Office 2003 acquired through a Volume License agreement or other non-retail channel allow you to create an administrative installation point. You cannot run Setup.exe in administrative mode ( /a ) with an Office 2003 retail edition. Так что если у вас предназначенный для розничной продажи (Retail) дистрибутив, то вам, скорее всего, придется избрать вариант setup.ini. Этот требует меньше манипуляций с установочными файлами.
Службы каталогов – это мощные поисковые инструменты, которые помогают Вашим пользователям находить людей и партнеров по всему миру. Адресная книга Windows (Windows Address Book) поддерживает протокол доступа к службам каталогов LDAP (Lightweight Directory Access Protocol), и поставляется со встроенным доступом к нескольким популярным службам каталогов. Вы можете назначить дополнительные службы для Ваших пользователей.
Текущий список обновлений и компонентов, входящих в набор, а также историю его изменений, вы можете посмотреть здесь. Обновления, увеличивающие размер дистрибутива, вынесены в отдельные аддоны (дополнения), так что Вы легко можете их удалить, если у Вас не хватает места на CD.
Да. Атрибуты файлов и настройки безопасности исходного компьютера переносятся на целевой компьютер при развертывании ОС из образа RIPrep. Однако учтите, что RIPrep не поддерживает шифрованную файловую систему (EFS), даже если она используется на исходном компьютере.
Сортировка программ в меню Пуск по алфавиту - это весьма популярный твик, циркулирующий по сети. Как правило, предлагается удалить раздел реестра
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder
что при следующем входе в систему действительно приводит к желаемому результату. Но ровно до тех пор, пока в список не добавится какая-либо программа, после чего процедуру нужно повторять или выполнять сортировку вручную в графическом интерфейсе.
Тем не менее, существует способ, позволяющий закрепить алфавитный порядок для программ в меню Пуск. Он заключается в запрете на запись в указанный выше раздел реестра. Это можно сделать в редакторе реестра (см. KB310426), но проще всего организовать это во время установки системы, воспользовавшись командной строкой и утилитой Regperm for Win NT/2000/XP (загрузить, 24 кб). Задача решается одной командой, запускаемой на Т-12 (для всех пользователей устанавливается разрешение только на чтение из вышеупомянутого раздела реестра).
Для английской ОС:
REGPERM /K HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder /A:Everyone:R /Q
Для локализованной ОС (пакетный файл должен быть сохранен в кодировке OEM, поскольку название группы состоит из кириллических символов).
REGPERM /K HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder /A:Все:R /Q
Автор: Вадим Стеркин aka Vadikan
Иcточник: unattended.oszone.net
Наши форумы
Опубликована - 23.12.2007
© Все права защищены OSzone.net 2001-2008. Материалы взяты с сайта unattended.oszone.net. Дальнейшее применение материалов в других печатных изданиях, включая электронные статьи, должно сопровождаться указанием имени сайта unattended.OSzone.net и имени автора. |
Распечатано 23.12.2007 |
Спроeктировала и разработала сайт Ginger |
Есть много статей, описывающих работу с Bootable CD Wizard (например Совмещение нескольких вариантов установки Windows XP на одном диске или Создание мультисистемного аварийного диска), но там в основном описывается мультизагрузка для установки различных операционных систем. Mеня же более интересовал CD в виде ReAnimator, на котором мне требовались:
минимальная быстрозагружаемая сборка на основе Window 98 (или 95, а то и DOS, как менее навороченного), чтобы только загрузиться, заглянуть на жёсткие диски, восстановить подпорченную загрузочную область, сделать Format, прогнать Sсandisk, перебросить (да хоть дистрибутив ОC) с CD-Rom на жесткий диск (например, вот такая 725 кб);
расширенный вариант Загрузочной дискеты, с поддержкой длинных русских наименований, возможность залезть в разделы NTFS, в архивы, прогнать диагностику жёсткому диску, тестировать Оперативную память или другие "железные" компоненты (соль-сахар по вкусу), и так далее;
загрузчик PartitionMagic (устанавливать для этих целей на винт полный пакет не вижу никакого смысла);
загрузчик Norton Ghost, для сохранения либо обратного восстановления убитой (насмерть) Системы.
загрузчик Memtest, для жесткого и обстоятельного тестирования оперативной памяти (RAM)
Далее будем рассматривать, как я использовал Bootable CD Wizard для реализации именно и только указанных свойств. Разобравшись с общими принципами работы с BCDW, вы без труда сможете добавить варианты загрузки своих любимых утилит, расширив функциональность диска.
Ниже приводится пример файла svcpack.inf для Windows XP:
[Version]
Signature="$Windows NT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600
[SetupData]
CatalogSubDir="\i386\svcpack"
[ProductCatalogsToInstall]
[SetupHotfixesToRun]
batch.cmd
Все задачи будут выполняться из пакетного файла batch.cmd (имя может быть любым, конечно), который размещается в папке i386\svcpack установочного диска. На Т-13 команды раздела [SetupHotfixesToRun] инициализируются, и запускается файл batch.cmd.