[решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Ответить
 • Просмотры: 2
Аватара пользователя
firedevil

[решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение firedevil »

Возник вот такой вопрос. Есть несколько команд для восстановления загрузщика, а именно fixmbr, fixboot и bootsect.exe /NT60 (NT52). Так вот, чем они отличаются друг от друга, точнее чем отличается последняя команда от двух первых? И еще вопрос, команда fixboot восстанавливает только загрузочный код загрузочного сектора или весь загрузщик полностью (ntldr, boot.ini, ntdetekt.com)?

И еще, в командной строке Vista не распознаются многие команды из командной строки XP. Где найти мануал для командной строки Vista. Поиск не дал результатов.
Аватара пользователя
firedevil

Re: [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение firedevil »

firedevil, долго бороздил просторы Google, чтобы дать более-менее вразумительный ответ. Сложность заключается в "недоговоренности" о терминологии, особенно при локализации справочной информации.

Для понимания нужно различить понятия
Загрузочный сектор — Википедия
и
Главная загрузочная запись — Википедия
. Кстати, почитайте статьи по ссылкам.

Очень хорошая статья
"Главная Загрузочная Запись - Master Boot Record (MBR)"


Пересказывать не буду, почитаете. Справочная информация от MS опять же запутывает в терминологии, но, основываясь на полученных ранее знаниях, границу провести все-таки можно:
http://support.microsoft.com/kb/314058/ru




И, наконец, прояснение достигается в описании ключей команд bootrec
http://support.microsoft.com/kb/927392
. Эта ссылка дана исключительно для ознакомления, так как в XP использована быть не может. Но в ней конкретизирована терминология.



Отличие fixboot и fixmbr от bootsect хотя бы в том, что последняя утилита появилась гораздо позднее первых двух. Судя по названию, она ближе по функционалу к fixboot.



Эти команды ни в коем случае не восстанавливают загрузочные файлы XP (или любой другой системы) ntldr, ntdetect.com...



Какие именно команды для Vista вас интересуют? Думаю, нужно конкретизировать вопрос, но не в этом форуме.
Аватара пользователя
firedevil

Re: [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение firedevil »

okshef, я знаю отличие MBR от загрузочного сектора. Но вот не понятно что конкретно восстанавливает bootsect.exe, MBR, загрузочный сектор или и то и другое.

Но если fixmbr, fixboot, bootsect не восстанавливают загрузочные файлы (ntldr, boot.ini, ntdetect.com) то что они восстанавливают, ведь в описании например fixboota написано что оно восстанавливает загрузочный сектор, а в него включаются загрузочный код и загрузочные файлы системы?
Аватара пользователя
firedevil

Re: [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение firedevil »

firedevil, я знаю, что иногда (чисто практический опыт) применение одной bootsect недостаточно. Срабатывают fixboot + fixmbr. Хотя в справке по bootsect есть описание ключа /mbr, в котором говорится, что при его использовании вся MBR не переписывается, а, следовательно, переписывается только boot-сектор.


Цитата firedevil:



fixboota написано что оно восстанавливает загрузочный сектор, а в него включаются загрузочный код и загрузочные файлы системы?
[решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?




загрузочный сектор, это и есть загрузочный сектор - это последовательность кода, возможно, assembler-a. Нужен он для того, чтобы указать, какие файлы, находящиеся на жестком диске, нужны для загрузки ОС, причем неважно какой. Например, для XP это файл ntldr, для Win 7/Vista - bootmgr, для других систем - свои, и т.д.

Поэтому выполнение команды не может восстановить загрузочные файлы, на то они и файлы.
Аватара пользователя
firedevil

Re: [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение firedevil »

Но ведь файл bootmgr находиться в корне раздела и в случае его повреждения копирование должно производиться в корень раздела, или в Windows 7 все не так как в Vista?
Аватара пользователя
okshef

Re: [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение okshef »

firedevil, долго бороздил просторы Google, чтобы дать более-менее вразумительный ответ. Сложность заключается в "недоговоренности" о терминологии, особенно при локализации справочной информации.

Для понимания нужно различить понятия
Загрузочный сектор — Википедия
и
Главная загрузочная запись — Википедия
. Кстати, почитайте статьи по ссылкам.

Очень хорошая статья
"Главная Загрузочная Запись - Master Boot Record (MBR)"


Пересказывать не буду, почитаете. Справочная информация от MS опять же запутывает в терминологии, но, основываясь на полученных ранее знаниях, границу провести все-таки можно:
http://support.microsoft.com/kb/314058/ru




И, наконец, прояснение достигается в описании ключей команд bootrec
http://support.microsoft.com/kb/927392
. Эта ссылка дана исключительно для ознакомления, так как в XP использована быть не может. Но в ней конкретизирована терминология.



Отличие fixboot и fixmbr от bootsect хотя бы в том, что последняя утилита появилась гораздо позднее первых двух. Судя по названию, она ближе по функционалу к fixboot.



Эти команды ни в коем случае не восстанавливают загрузочные файлы XP (или любой другой системы) ntldr, ntdetect.com...



Какие именно команды для Vista вас интересуют? Думаю, нужно конкретизировать вопрос, но не в этом форуме.
Аватара пользователя
firedevil

Re: [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение firedevil »

sfc /scannow "штудирует" папку Windows и не более того. В XP реализован один механизм, в 7/Vista - другой.

И работа утилиты ни коим образом не касается файлов загрузки (как бы это странно не звучало).

На следующий вопрос отвечу чуть позже.



Продолжаем разговор. (Карлсон)®

firedevil, прошу прощения за первую редакцию моего сообщения. Да, именно так все и происходит.


Цитата firedevil:



Если раздел только один, то загрузочный код MBR как и в случае со множеством разделов передает управление сначала загрузочному сектору, а уже потом загрузочный сектор передает управление ntldr, или загрузочный код MBR передает управление непосредственно ntldr, по причине отсутствия других разделов?
[решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?




Вы упустили один момент, что загрузчик сначала определяет активный раздел, а затем ищет на нем загрузочный сектор.



Цитата из Википедии:

Код загрузчика
(rem - загрузчик, который мы обозвали BR)

После завершения процедуры POST в ОЗУ по адресу 0x0000:0x7c00 записывается код загрузчика (rem - Вот его-то и правит Fixmbr), после чего ему передается управление. Задача загрузчика: проанализировать таблицу разделов жёсткого диска, а затем либо передать управление загрузочному коду активного раздела (rem - Вот его-то и правит bootsect или fixboot), либо загрузить в память ядро операционной системы и передать ему управление.



Отличие fixboot от bootsect в том, что первая команда безусловно перезаписывает загрузочный код на активный раздел, а вторая обладает более расширенными функциями (см. справку по bootsect /?)

По всей видимости, bootsect еще и способна вносить изменения в код загрузчика, хотя....



За умными словами и множеством ссылок прошу не считать сказанное ранее истиной в последней инстанции, ибо "много в этой истории непонятного"... А также прошу более компетентных людей откликнутся и высказать свое мнение.



Обратился за помощью к Гуру. Вот что еще выяснил.

bootsect /nt....... с ключом /mbr перезаписывает код загрузчика в MBR без затрагивания таблицы разделов, что можно считать более деликатной версией команды fixmbr (bootrec /fixmbr)
Аватара пользователя
okshef

Re: [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение okshef »

Цитата okshef:



Вы упустили один момент, что загрузчик сначала определяет активный раздел, а затем ищет на нем загрузочный сектор.
[решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?




okshef, ну на самом деле про это я знал просто не стал уточнять, т.к. на суть вопроса это не влияло Изображение

Вот насчет bootsect есть вопрос. У bootsecta одними из параметров является SYS, All, Or. Насколько я понял первая команда перезаписывает загрузочный сектор на системном разделе, вторая команда для всех разделов, и третья команда позволяет выбирать конкретно на какие разделы записать загрузочный сектор. В связи с этим вопрос, если активный раздел может быть только один, то следовательно и загрузочный сектор создается только для активного раздела, тогда зачем нужен параметр SYS если по умолчанию загрузочный сектор и так утанавливается на системный, он же активный раздел, далее, зачем нужен атрибут All если не имеет смысла записывать загрузочный сектор на все разделы, а только на активный раздел?
Аватара пользователя
firedevil

Re: [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются?

Сообщение firedevil »

okshef, Тогда как восстановить загрузочные файлы операционной системы, в случае их повреждения, неужели придется копировать их из установочного диска
Ответить

Вернуться в «Хочу все знать»