Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1358

.pdf
Скачиваний:
2
Добавлен:
15.11.2022
Размер:
678.11 Кб
Скачать

онной системы Windows Vista. В процессе начальной загрузки, программный код загрузочного сектора раздела (PBR Partition Boot Record) обеспечивал поиск, считывание в память

ипередачу управления файлу ntldr, который размещался в корневом разделе загрузочного диска. Конфигурирование загрузчика ntldr выполнялось с помощью простого текстового файла boot.ini, содержимое которого задавало список загружаемых операционных систем, их параметры загрузки, размещение системных файлов и т.п.

Воперационных системах Windows Vista /Server 2008

иболее поздних, загрузчик ntldr не используется, и заменен диспетчером загрузки bootmgr. Соответственно, изменился и программный код загрузочного сектора раздела, обеспечивающий передачу управления файлу bootmgr. Новый диспетчер загрузки использует собственные данные конфигурации

загрузки (Boot Configuration Data BCD) и может выполнять, при определенных настройках, загрузку любых операционных систем семейства Windows. Загрузчик ntldr не поддерживает возможность загрузки Windows Vista и старше. Для его конфигурирования используется команда BCDEDIT.

Команда BOOTSECT позволяет записывать заданный программный код загрузочных секторов, обеспечивающих загрузку либо ntldr, либо bootmgr.

Формат командной строки:

bootsect {/help|/nt60|/nt52} {SYS|ALL|:} [/force] [/mbr]

Параметры командной строки Bootsect:

/help отображение справочной информации;

/nt52 запись программного кода загрузочного сектора, обеспечивающего использование загрузчика ntldr для операционных систем, предшествующих Windows Vista.

/nt60 запись программного кода в загрузочные секторы для обеспечения загрузки файла bootmgr диспетчера загрузки Windows Vista/Server 2008 и более поздних ОС семей-

ства Windows.

11

SYS запись будет выполнена в секторы системного раздела, который использовался для загрузки Windows, в среде которой выполняется данная команда.

ALL запись программного кода будет выполнена для всех существующих разделов, которые могут быть использованы для загрузки Windows.

DriveLetter буква диска, для которого будет выполнена перезапись программного кода загрузочных секторов.

/force принудительное отключение используемых другими программами томов дисков для обеспечения монопольного доступа утилиты bootsect.exe

/mbr изменение программного кода главной загрузочной записи (MBR - Master Boot Record) без изменения таблицы разделов диска. При использовании с параметром /nt52, MBR будет совместима с предшествующими Windows Vista версиями. При использовании с параметром /nt60 - MBR будет совместима с операционными системами Windows Vista и более поздними.

Примеры:

bootsect /nt52 E: создать для диска E: загрузочные записи для операционных систем Windows XP/2000/NT, т.е для загрузки на базе ntldr.

bootsect /nt60 /mbr C: изменить загрузочные сектора диска C: для обеспечения загрузки диспетчера bootmgr.

bootsect /nt60 SYS изменение загрузочных секторов для раздела, с которого выполнена загрузка текущей ОС

Windows.

2.3. Конфигурирование загрузчика операционной системы

Команда BCDEDIT применяется в операционных системах Windows Vista и старше для редактирования данных конфигурации загрузки операционной системы (BCD Boot Configuration Data).

12

При загрузке операционной системы, сначала считывается первый сектор с устройства загрузки, представляющий собой главную загрузочную запись (Master Boot Record MBR). Стандартно, в качестве MBR выступает первый сектор загрузочного диска. MBR содержит список разделов, признак активного раздела (раздела, с которого будет выполняться загрузка ОС), некоторые служебные данные, а также программный код для считывания в память загрузочного сектора активного раздела (Partition Boot Record PBR) и передачи ему управления. Программный код PBR, в случае загрузки операционных систем Windows Vista и старше, должен обеспечить поиск, считывание и передачу управления диспетчеру загрузки bootmgr, который и будет продолжать процесс загрузки системы. В соответствии с конфигурацией загрузки, диспетчер BOOTMGR может выполнить загрузку ядра Windows или, например, Linux, загрузить диагностические программы, выполнить загрузку ядра с измененными параметрами.

Обычно файл bootmgr имеет атрибуты "скрытый" и "системный". Код диспетчера загрузки, получив управление, выполняет поиск и обработку данных конфигурации загрузки (файл BCD в папке \BOOT\ активного раздела), в соответствии с которыми выполняется дальнейшие этапы загрузки (отображение меню, выбор загружаемой ОС или средств диагностики, загрузка ядра и т. п.). По типу структуры, файл \\boot\BCD является кустом реестра и отображается в редакто-

ре реестра Windows как раздел HKEY_LOCAL_MACHINE\BC D00000000.

Данный раздел реестра обрабатывается диспетчером загрузки bootmgr и в редакторе реестра имеет разрешение только на чтение. Разрешение на запись можно установить через контекстное меню редактора.

Средство командной строки bcdedit.exe позволяет редактировать данные конфигурации загрузки и входит в состав стандартных программ, а также может использоваться при загрузке с установочного диска системы или диска аварийного

13

восстановления. Естественно, для изменения конфигурации загрузки Windows, программа должны быть запущена с правами администратора.

Данные конфигурации загрузки можно условно разделить на 3 основных элемента:

хранилище BCD (Store);

записи в хранилище (Entries); параметры записей (Entry Options).

Иерархически, хранилище можно представить в виде совокупности объектов (Objects), состоящих из элементов (Elements). Например, объектом конфигурации является группа элементов, обеспечивающих загрузку отдельной ОС. BCDEDIT позволяет удалять, создавать, копировать и изменять объекты и элементы конфигурации загрузки BCD. Если в командной строке bcdedit не задан ключ /store то ее действие выполняется по отношению к системному хранилищу (активной конфигурации, используемой для данной загрузки).

Хранилище данных конфигурации загрузки (BCD) заменяет собой простой текстовый файл Boot.ini, использовавшийся в операционных системах Windows NT/2000/XP для загрузчика ntldr. Данные конфигурации в более поздних версиях Windows хранятся в виде специальных программных объектов, не являющихся текстовыми элементами. Каждый объект данных конфигурации BCD имеет глобальный уникальный идентификатор. Обозначается GUID в виде наборов шестнадцатеричных цифр, разделяемых дефисами для удобства записи, и заключенными в фигурные скобки:

{166769E1-88E8-11CF-A6BB-0080C7B2D6A2}

Некоторые из объектов хранилища кроме идентификаторов GUID, могут также иметь псевдонимы для удобства использования, например, {bootmgr} (соответствует диспетчеру загрузки) и {default} (соответствует используемому по умолчанию загрузчику Windows). Для отключения использования псевдонимов в командной строке bcdedit предусмотрен ключ /v:

14

bcdedit /v позволяет отобразить данные текущей системной конфигурации загрузки без использования псевдонимов (только с идентификаторами GUID).

Для определения конфигурации приложения загрузки системы (OSLOADER) используется несколько десятков типов данных, которые можно разделить на группы Загрузка, Отображение, Память и т.д. В стандартной конфигурации, большинство из дополнительных параметров приложения OSLOADER не нужны, и принимают значения, необходимые для обычной загрузки Windows. В некоторых случаях, может потребоваться изменение параметров распределения памяти, адресного пространства, уровня детализации журнала и т.п. Так, например, для 32-битных операционных систем семейства Windows, по умолчанию каждому пользовательскому процессу отводится виртуальное адресное пространство размером 2Гб, независимо от объема реальной памяти. В большинстве случаев, этого вполне достаточно для работы приложений, но при необходимости, его можно увеличить, указав пара-

метр INCREASEUSERVA (целое число):

bcdedit /set increaseuserva 3072 установить размер виртуального адресного пространства для приложений равным 3 Гб.

bcdedit /set increaseuserva 2048 установить размер виртуального адресного пространства для приложений равным 2 Гб.

bcdedit /deletevalue increaseuserva удалить параметр

INCREASEUSERVA из конфигурации загрузки.

Действие данной команды, аналогично предыдущей, поскольку отсутствие элемента INCREASEUSERVA предполагает, что будет задано адресное пространство размером 2Гб. Естественно, это верно только для 32-разрядных ОС, поскольку для 64-разрядных, размер адресного пространства 4Гб.

15

 

Просмотреть текущие параметры для приложения за-

грузки

Windows

можно

с

помощью

команды:

bcdedit /enum osloader.

Примеры использования bcdedit для сохранения и восстановления конфигурации:

bcdedit /export C:\Backup\BCD2012 сохранение теку-

щей системной конфигурации в файл bcd2012 каталога C:\Backup\. Каталог, куда выполняется сохранение, должен существовать. При наличии пробелов в пути, используются двойные кавычки:

bcdedit /export "C:\My Backup\BCD2012"

Для восстановления конфигурации из ранее сохраненной копии используется команда: bcdedit /import C:\backup\bdc2012.

Команда BCDEDIT без параметров выводит текущую конфигурацию загрузки на экран. Для использования команды в командных файлах или применения последующих команд, полезно иметь текстовый файл с результатами выполнения команды, для чего можно воспользоваться стандартным приемом – перенаправлением вывода в текстовый файл:

BCDEDIT > C:\bcdconf.txt сохранить результаты ото-

бражения текущей конфигурации загрузки в текстовом фай-

ле C:\bcdconf.txt

BCDEDIT /v > C:\bcdconf.txt сохранить результаты отображения текущей конфигурации загрузки в текстовом файле C:\bcdconf.txt с выводом полных GUID вместо псевдонимов. bcdedit /timeout 40 - установить время ожидания выбора системы для загрузки равным 40 секунд.

bcdedit /displayorder {ntldr} {current} установить по-

рядок отображения загружаемых ОС сначала Windows XP (идентификатор – {ntldr} ), затем Windows 7 ( идентифика-

тор {current} )

bcdedit /default {ntldr} установить в качестве загружаемой по умолчанию системы Windows XP.

16

bcdedit /default {current} установить в качестве загру-

жаемой по умолчанию системы текущую ОС, в среде которой выполняется команда bcdedit, т. е. в данном примере конфигурации BCD Windows 7. При необходимости выбора другой ОС, не являющейся текущей, нужно указывать ее GUID

bcdedit /default {d1f837a3-7e0f-11df-bc8b-f6edb78d41b5}

Для просмотра отдельных категорий или полного перечня параметров конфигурации загрузки используется команда BCDEDIT /enum . Эта команда перечисляет все записи в хранилище. Команда /enum используется по умолчанию, поэтому использование "bcdedit" без параметров эквивалентно

"bcdedit /enum ACTIVE".

 

Примеры:

 

bcdedit /enum OSLOADER

отобразить все записи для

загрузчика операционной системы:

 

bcdedit /enum BOOTMGR

отобразить все записи дис-

петчера загрузки.

 

Для добавления новых записей в хранилище BCD используется команда bcdedit /create. Эта команда создает новую запись в хранилище данных конфигурации загрузки. Если указан известный идентификатор, то указание параметров

/application, /inherit и /device не требуется.

Самый простой способ добавления новых записей - для стандартных загрузчиков и с использованием псевдонимов.

bcdedit /create {ntldr} /d "Загрузчик ОС прежних вер-

сий" для создания новой записи в текущей конфигурации загрузки для операционных систем Windows NT/2000/XP

bcdedit /create /d "Windows Vista" /application osloader

для создания новой записи конфигурации загрузки для

Windows Vista и старше.

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

17

соответствующей данному GUID. Значения параметров определяются в зависимости от типа загружаемой системы, особенностей ее загрузчика места нахождения файлов и каталогов.

Создать необходимые параметры данной записи для передачи управления загрузчику Windows XP:

bcdedit /set device=partition=z:, где Z: буква диска, где находится диспетчер загрузки.

Пример создания конфигурации загрузки Windows XP с помощью команды bcdedit:

bcdedit /create {ntldr} /d "Microsoft Windows XP" - соз-

дать объект для загрузки Windows XP

bcdedit /set {ntldr} device partition=C: указать устрой-

ство загрузки (активный раздел)

bcdedit /set {ntldr} path \ntldr указать путь к загрузчику ntldr

bcdedit /displayorder {ntldr} /addlast добавить в конец меню выбора вариантов загрузки новый пункт.

При создании новой записи можно сохранить создан-

ный GUID:

bcdedit /create /device > ramdevice.txt GUID нового устройства будет записан в текстовый файл ramdevice.txt для удобства использования его в последующих командах.

Диспетчер загрузки bootmgr позволяет выполнить загрузку операционных систем с использованием приложения загрузочного сектора (/application BOOTSECTOR). Обычно такой метод загрузки используется для операционных систем Linux/Unix. Конфигурация загрузки BCD создается таким образом, чтобы диспетчер bootmgr мог выполнить загрузку и передачу управления программе загрузочного сектора раздела PBR загружаемой ОС. Таким образом, кроме записи конфигурации BCD, для успешного выполнения загрузки, требуется специальный файл с копией загрузочной записи PBR. Утилита bcdedit.exe не предназначена для создания приложений загрузки (как bootsector, так и прочих) и используется только

18

для конфигурирования данных хранилища загрузки. Для создания копии загрузочной записи раздела PBR потребуются другие программные средства, набор которых довольно обширен и определяется типом операционной системы (DD в Linux, Grub4DOS в Windows, дисковые утилиты с функцией посекторного копирования загрузочных записей в файл и т. п.). Пример создания конфигурации загрузки для операционной системы Linux:

bcdedit /create /d "Linux OS" /application BOOTSECTOR создать запись в системном хранилище конфигурации для объекта приложения загрузочного сектора. Полученный при выполнении данной команды идентификатор {GUID} используется в последующих командах, определяющих значение элементов объекта.

bcdedit /set {GUID} device partition=C: - буква или диск для активного раздела.

bcdedit /set {GUID} path \grub.pbr путь к файлу, содер-

жащему загрузочную запись PBR.

bcdedit /displayorder {GUID} /addlast - добавит новый пункт в конец меню выбора операционных систем.

2.4. Работа с сетевыми ресурсами

Утилита NET.EXE существует во всех версиях Windows и является одной из самых используемых в практической работе с сетевыми ресурсами. Позволяет подключать и отключать сетевые диски, запускать и останавливать системные службы, добавлять и удалять пользователей, управлять совместно используемыми ресурсами, отображать статистические данные об использовании ресурсов и многое другое.

Выполнение команды net без параметров вызывает краткую справку со списком возможных уровней использования, запуск с параметром help позволяет получить более подробную информацию об использовании net.exe.

Net.exe может использоваться для работы с системными службами. Данный режим использования NET.EXE, в не-

19

которой степени, является не характерным для основного предназначения утилиты, и начиная с Windows XP, для управления системными службами используется специальная утилита командной строки SC.EXE. Тем не менее, NET.EXE в среде любой версии операционных систем Windows может быть использована для запуска и остановки системных служб (сервисов). Согласно справочной информации, список служб, которыми можно управлять с помощью net.exe можно получить используя следующую команду:

net help services

Но это не совсем верно, и на самом деле, с помощью net.exe можно запустить или остановить практически любую системную службу, и в том числе, не представленную в списке, отображаемом при выполнении данной команды. Для остановки используется параметр stop, а для запуска - параметр start:

net stop dnscache остановить службу dnscache net start dnscache запустить службу dnscache

Возможно использование как короткого, так и полного имени ("Dnscache" короткое, "DNS-клиент" - полное имя службы). Имя службы, содержащее символы русского алфавита и пробелы заключается в двойные кавычки.

net stop "DNS-клиент" остановить службу DNSклиент.

Полное имя службы можно скопировать из "Панель управления" "Администрирование" "Службы" Имя службы "Свойства" "Выводимое имя".

Для приостановки некоторых системных служб или продолжения работы ранее приостановленной службы ис-

пользуются команды NET PAUSE и NET CONTINUE:

net pause "Планировщик заданий" приостановить службу "Планировщик заданий"

net continue schedule продолжить работу службы "Планировщик заданий". Имя службы задано в коротком формате.

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]