Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Хочу все знать (http://forum.oszone.net/forumdisplay.php?f=23)
-   -   [решено] fixmbr, fixboot и bootsect.exe /NT60 (NT52) - чем они отличаются? (http://forum.oszone.net/showthread.php?t=190041)

firedevil 01-11-2010 19:15 1532489

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

okshef 01-11-2010 21:21 1532578

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 02-11-2010 08:20 1532805

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

okshef 02-11-2010 09:40 1532851

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

Цитата firedevil
fixboota написано что оно восстанавливает загрузочный сектор, а в него включаются загрузочный код и загрузочные файлы системы? »

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

firedevil 02-11-2010 11:16 1532923

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

okshef 02-11-2010 11:23 1532933

Да, именно так.

firedevil 02-11-2010 14:27 1533102

А вот фукции Восстановления системы, sfc/scannow, восстанавливают поврежденные загрузочные файлы? Ведь последняя функция например, выявляет изменения системных файлов и заменяет их в случае наличия повреждении.
И еще вопрос. Если раздел только один, то загрузочный код MBR как и в случае со множеством разделов передает управление сначала загрузоному сектору, а уже потом загрузочный сектор передает управление ntldr, или загрузочный код MBR передает управление непосредственно ntldr, по причине отсутсвия других разделов?

okshef 02-11-2010 21:14 1533379

sfc /scannow "штудирует" папку Windows и не более того. В XP реализован один механизм, в 7/Vista - другой.
И работа утилиты ни коим образом не касается файлов загрузки (как бы это странно не звучало).
На следующий вопрос отвечу чуть позже.

Продолжаем разговор. :) (Карлсон)®
firedevil, прошу прощения за первую редакцию моего сообщения. Да, именно так все и происходит.
Цитата:

Цитата firedevil
Если раздел только один, то загрузочный код MBR как и в случае со множеством разделов передает управление сначала загрузочному сектору, а уже потом загрузочный сектор передает управление ntldr, или загрузочный код MBR передает управление непосредственно ntldr, по причине отсутствия других разделов? »

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

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

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

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

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

firedevil 03-11-2010 09:10 1533645

Цитата:

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

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

okshef 03-11-2010 09:36 1533667

Обратимся к "Марксу":
Цитата:

SYS Updates the master boot code on the system partition used to boot Windows.

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

ALL Updates the master boot code on all partitions. ALL does not necessarily update the boot code for each volume. Instead, this option updates the boot code on volumes that could be used as Windows boot volumes, which excludes any dynamic volumes that are not connected with an underlying disk partition. This restriction is present because boot code must be located at the beginning of a disk partition.

REM Задел на будущее - запись загрузочного сектора на тома, которые могут быть использованы как загрузочные.

<DriveLetter> Updates the master boot code on the volume associated with this drive letter. Boot code will not be updated if either
1) <DriveLetter> is not associated with a volume or
2) <DriveLetter> is associated with a volume not connected to an underlying disk partition.

REM Без комментариев. Из разряда инструкций "В микроволновой печи нельзя сушить домашних животных.
firedevil, наверное, по результатам нашего исследования можно статью написать. Этакая загадка для теоретиков. А судя по отсутствию возражающих, может быть, я прав в своих догадках.

firedevil 03-11-2010 10:08 1533687

Цитата:

Цитата okshef
SYS Updates the master boot code on the system partition used to boot Windows.
REM Следовательно, утилита автоматически определяет раздел, помеченный флагом активности, возможно, использует дополнительные признаки. Какие - не знаю. »

Но ведь даже если не указать параметр SYS утилита по любому автоматически определит активный раздел

Цитата:

Цитата okshef
ALL Updates the master boot code on all partitions. ALL does not necessarily update the boot code for each volume. Instead, this option updates the boot code on volumes that could be used as Windows boot volumes, which excludes any dynamic volumes that are not connected with an underlying disk partition. This restriction is present because boot code must be located at the beginning of a disk partition.
REM Задел на будущее - запись загрузочного сектора на тома, которые могут быть использованы как загрузочные. »

В этом опять нет смысла. Насколько я понял загрузочный сектор из не активного раздела не может запустить загрущик операционной системы который находиться на активном разделе. Тем более на активном разделе есть свой загрузочный сектор который запускает систему.

Насчет командной строки Vista. Где можно найти описание параметров команд move и xcopy?

okshef 03-11-2010 10:22 1533698

Давайте посмотрим на синтаксис
Код:

bootsect {/help|/nt60|/nt52} {SYS|ALL|<DriveLetter>:} [/force] [/mbr]
параметр в {фигурных скобках} - обязателен, то есть, если не указать параметр SYS, утилита вернет ошибку.
Цитата:

Цитата firedevil
В этом опять нет смысла. »

Возрожу: Как перенести файлы загрузки Windows 7 на другой жесткий диск
firedevil, +1 за то, что статью нужно дополнить.
А нет, не забыл: Перенесение файлов загрузки с помощью утилиты bcdboot.exe - пункт 2. Эх, терминология...
Цитата:

Цитата firedevil
Насчет командной строки Vista »

Давайте не будем мешать все в одну кучу, тем более прикрепленная тема этого раздела На заметку. Перечень системных команд.

firedevil 03-11-2010 14:28 1533886

okshef, что означает параметр forсe в команде bootsect?
Отличие между bootsect от fixmbr, fixboot насколько я понял выражается в том что bootsect создавался как способ решения проблем возникающие в системах с двумя OS. То есть, bootsect отличается от fixmbr, fixboot тем что может восстанавливать загрузочные сектора как Vista, так и XP.

okshef 03-11-2010 18:41 1534051

firedevil, насчет /force, это вы бы и сами могли...
Код:

/force  Forcibly dismounts the volume(s) during the boot code update.  You should use this option with caution.
Иными словами, тома отмонтируются во время выполнения команды (механизм отмонтирования точно мне неизвестен, но, как один из способов: сначала удалить букву тома, а затем заново присвоить)
Цитата:

Цитата firedevil
То есть, bootsect отличается от fixmbr, fixboot тем что может восстанавливать загрузочные сектора как Vista, так и XP. »

Скорее всего, так оно и есть. Для XP свои fixboot и fixmbr, для Vista - свои. А тут - все "в одном флаконе".

firedevil 03-11-2010 21:25 1534176

okshef, в статье про перенос загрузочных файлов Windows 7 в другой раздел, в качестве способа переноса используется командная строка. Так вот, не проще ли использовать для этих целей Live CD Ubuntu например, т.е. просто перетащить загрузочные файлы из одного раздела в другой?

okshef 03-11-2010 21:34 1534180

Нет. Даже если само по себе перемещение состоится удачно, параметры будут неверны. Задача статьи - все сделать средствами Windows без дополнительных средств.

firedevil 05-11-2010 12:13 1535250

Какие именно параметры будут неверны, речь идет о BCD?

okshef 05-11-2010 12:56 1535278

Да, параметры BCD.

firedevil 08-11-2010 10:54 1537466

okshef, в некотрых статьях пишут что команда fixmbr, восстанавливает главную загрузочную запись на системном разделе, и тут возник вопрос, а разве MBR находиться на разделе, ведь он должен находиться в начале диска, вне разделов?
Второй вопрос, в мануалах также указывается о том что MBR должен быть совместим с операционной системой на активном разделе. Может здесь какая то ошибка, может имелось ввиду совместимость загрузочного сектора с устанавливаемой системой? Насколько я понял MBR универсален, и не имеет значения какая операционая система установлена, или я ошибаюсь?

okshef 08-11-2010 18:47 1537869

firedevil, это то, о чем я говорил в самом начале - недоговоренность в понятиях и особенности локализации.
Цитата:

Цитата firedevil
а разве MBR находиться на разделе, ведь он должен находиться в начале диска, вне разделов? »

так и есть: http://www.microsoft.com/resources/d....mspx?mfr=true
Цитата:

Repairs the master boot record of the boot disk.
ни о каких разделах и речь не идет, в отличие от
Цитата:

Fixboot
Writes a new partition boot sector to the system partition.
boot disk - имеется в виду физическое устройство, HDD, который является загрузочным.
Проверяется элементарно: в ком строке
Код:

diskpart
sel disk X
detail disk

system partition - активный раздел диска, на котором находятся файлы загрузки всех установленных систем.

Цитата:

Цитата firedevil
MBR универсален »

почему? Разве загрузочный код не имеет права на совершенствование? У меня нет достаточной компетенции, да и желания, честно говоря, самому разбираться в хитростях ассемблера.

Можете сами поискать информацию о разнице загрузочного кода XP, 7 и Ubuntu, например. Но, думаю, вы ближе к истине, чем кажется - загрузка системы, в большинстве своем, BIOS-зависимая, а значит, и код должен быть понятен BIOS, в первую очередь.

firedevil 09-11-2010 19:08 1538688

Цитата:

Цитата okshef
Можете сами поискать информацию о разнице загрузочного кода XP, 7 и Ubuntu, например. »

То есть, получается при установке новой ОС, MBR предыдущей ОС затирается MBR следующей ОС, как и загрузочный сектор и без разницы устанавливается новая ОС за место старой (Vista за место XP), или следующая ОС аналогичен предыдущему (Windows 7 за место Windows 7)?

В статье Восстановление совместной загрузки Windows 7 и Windows XP при переустановке одной из них предлагается перезаписать MBR с помощью команды bootsect /NT 60 All, но ведь данная команда перезапишет MBR только при наличии атрибута /mbr?

okshef 09-11-2010 20:19 1538743

Цитата:

Цитата firedevil
То есть, получается при установке новой ОС ... »

Да, так и получается.
Очень заметно при установке Win 2000 или Win 98.
Цитата:

Цитата firedevil
В статье Восстановление совместной загрузки »

После наших с вами изысканий можно сказать, что перезаписывается Boot - сектор. Но, поскольку обычно в статьях о загрузке, используется понятие MBR (см. выше о локализации), поэтому и в статье так. Уж не обессудьте.

firedevil 10-11-2010 12:57 1539225

okshef, а вот при установке новой ОС за место старой, переписывается только главная загрузочная запись, или еще таблица разделов. Например, если повредиться таблица разделов, восстановиться ли таблица разделов при установке, например XP за место XP, или перепишется только главная загруочная запись?

Второй вопрос, в случае удаления таблицы разделов с помощью MHDD, Victoria удалятся ли сами разделы и все находящиеся на них информация?

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

okshef 10-11-2010 18:00 1539429

Цитата:

Цитата firedevil
или еще таблица разделов »

firedevil, если было так, как вы предполагаете, то никто и никогда не смог бы поставить вторую систему или переустановить операционную систему. Естественно, таблица разделов остается без изменений. При установке затрагивается 2 элемента: загрузочный код (загрузчик сам по себе, находящийся в первых секторах диска) и BOOT-сектор на активном разделе.
Цитата:

Цитата firedevil
если повредиться таблица разделов »

восстановить ее можно только специальными программами, например TestDisk. А программа установки операционной системы таким функционалом не обладает. Это ответ на вторую и третью часть вашего вопроса.

Не забывайте, что помимо таблицы разделов есть еще файловая таблица (немного непонятно, но хоть что-то: Master File Table — Википедия, или Файловая система NTFS, или Файловая таблица, или Файловая система

firedevil, скоро наша тема будет похожа на весь форум ХВЗ :)

firedevil 11-11-2010 13:11 1540022

okshef, можно конечно создать множество тем, но зачем, ведь все вопросы можно раскрыть в рамках данной темы :)

Цитата:

Цитата okshef
Не забывайте, что помимо таблицы разделов есть еще файловая таблица (немного непонятно, но хоть что-то: Master File Table — Википедия, или Файловая система NTFS, или Файловая таблица, или Файловая система »

А какое это имеет отношение к восстановлению OS?

В данном сайте есть одна статья про возвращение старой OS путем копирования или перемещения файлов из папки Windows.old в корень диска, с помощью командной строки, в среде восстановления. Статья называется Как восстановить предыдущую версию Windows после установки Windows Vista. В статье, в одном из этапов предусматривается удаление ссылки к каталогу Documents and Settings. Непонятно о какой ссылке идет речь и зачем его удалять?

okshef 11-11-2010 19:55 1540336

Цитата:

Цитата firedevil
зачем, ведь все вопросы можно раскрыть в рамках данной темы »

Вот вам и первое непонимание:
Цитата:

Цитата firedevil
какое это имеет отношение к восстановлению OS? »

Никакого, но вы же спрашиваете сами:
Цитата:

Цитата firedevil
Второй вопрос, в случае удаления таблицы разделов с помощью MHDD, Victoria удалятся ли сами разделы и все находящиеся на них информация? »

Поясняю еще раз: после удаления таблицы разделов информация с них не удаляется по причине наличия файловой таблицы.
Перейдем к новой серии вопросов. По-видимому, речь идет об этой статье: Как удалить Windows Vista
Цитата:

Цитата firedevil
Непонятно о какой ссылке идет речь и зачем его удалять? »

и я не нашел ничего подобного.

firedevil 12-11-2010 16:51 1541037

Цитата:

Цитата okshef
Перейдем к новой серии вопросов. По-видимому, речь идет об этой статье: Как удалить Windows Vista »

Нет речь идет о статье Как восстановить предыдущую версию Windows после установки Windows Vista.

Вопрос относительно установки Windows 7. В руководствах пишут что самый приемлемый вариант установки двух ОС на однин компьютер это установка сначала старой версии, а затем последующей. Предположим наступила следующая ситуация, есть активный раздел С: на котором установлен XP, перед этим разделом неразмеченное пространство, При установке Windows 7 в неразмеченном пространстве создается раздел для загрузочных файлов Windows 7, соответственно данный раздел становиться активным, на остальное пространство устанавливается Windows 7. Тогда получается что запускается раздел для загрузочных файлов, который сразу же запускает Windows 7 без предложения выбора ОС, т.к. загрузочные файлы XP находяться на другом разделе. Получается правило о том что для без проблемной установки двух систем необходима поочередная установка сначала старой системы, затем новой, не совсем правильной?

Второй вопрос. Раз при установке новой системы таблица разделов не перезаписывается, то как тогда информация о новых разделах появиться в таблице разделов. Например при установке Windows 7 появляется новый раздел, скрытый. Как информация о данном разделе поступит в таблицу разделов если при установке таблица не изменяется?

Ну и еще вопросик. В Windows 7 появилась новая утилита для восстановления загрузочных файлов bootmgr, BCD, называется bcdboot. Как работает данная утилита, то есть как именно происходит восстановление вышеназванных файлов, данная утилита просто копирует загрузочные файлы из установочного диска?

okshef 12-11-2010 22:06 1541305

Цитата:

Цитата firedevil
речь идет о статье Как восстановить »

Ясно. Дело в том, что в Vista папки "Doc&Set" как таковой не существует, но существует ссылка, которая указывает на c:\Users\. Если ее не удалить, то после восстановления XP будут очень большие проблемы. Ведь в ней это не ссылка, а полноценная папка с очень важным содержимым.
Цитата:

Цитата firedevil
Вопрос относительно установки Windows 7 »

Знаете, для меня сейчас не существует понятий "правильной" и "неправильной" установки. Главное - понимание принципов загрузки. Так же не существует проблемы нахождения скрытого раздела. Пусть он будет хоть в середине. Главное - знать как в этом случае организовать загрузку. Правильность - для тех, кто любит, чтобы было "красиво" в проводнике, диспетчере дисков...
Цитата:

Цитата firedevil
Второй вопрос. »

никак. Создание разделов - само по себе, установка - сама по себе. Просто в Win 7 - это выглядит как часть установки.
Естественно, с таблицей разделов работают "уполномоченные" на то программы.
Цитата:

Цитата firedevil
Ну и еще вопросик. »

firedevil, ну воспользуйтесь же поиском: мне приходится переписывать справку... Параметры командной строки BCDboot
Читать цитату
Цитата:

Средство BCDboot копирует набор файлов среды загрузки из образа Windows, который расположен на компьютере. BCDboot может копировать файлы среды загрузки из образов Windows Vista®, Windows Server® 2008, Windows 7 или Windows Server 2008 R2. Дополнительные сведения о применении образа Windows к системе см. в разделе Создание и применение образов Windows.

Средство BCDboot использует файл «%WINDIR%\System32\Config\BCD-Template» для создания нового хранилища данных конфигурации загрузки (BCD) и инициализации файлов среды загрузки в системном разделе. Параметры данных конфигурации загрузки можно задать в файле шаблона данных конфигурации загрузки. Это средство копирует последние версии файлов среды загрузки из папки «%WINDIR%\boot» образа операционной системы и папки «%WINDIR%\System32» в системный раздел.

firedevil 14-11-2010 19:03 1542587

okshef, Спасибо за ответы :) Ну и остался еще один вопросик. Загрузочные файлы(bootmgr, BCD, ntldr, boot.ini, ntdetect) находяться на одном, активном разделе. Возможна ли ситуация при которой загрузочные файлы одной ОС находяться на другом, неактивном разделе, а другие при этом остаются в активном. Например, на активном разделе находяться файлы bootmgr, BCD, а на другом, неактивном, загрузочные файлы XP?

okshef 14-11-2010 19:29 1542611

Цитата:

Цитата firedevil
остался еще один вопросик »

Ой ли?

Возможна. В этом случае можно, "играя активностью" разделов загружать две системы без меню. Только практического смысла я в этом не вижу.
А вот в ситуации с двумя физическими дискам файлы загрузки XP должны быть на обоих дисках(!!!) И не спрашивайте "почему?", все равно не знаю.
В конфигурации с двумя дисками большую роль играет BIOS и порядок выбора устройств для загрузки.

Спасибо Вам за вопросы. Мне самому было интересно упорядочить знания по этому вопросу. :)

P.S. Не забудьте поставить "Решено".

firedevil 15-11-2010 09:51 1542950

Цитата:

Цитата okshef
Ой ли? »

Ну возможно еще возникнут вопросы :)

Цитата:

Цитата okshef
Возможна. В этом случае можно, "играя активностью" разделов загружать две системы без меню. Только практического смысла я в этом не вижу. »

Ну я не совсем о том, я имел ввиду что система загружается через активный раздел где установлена Windows 7, затем загрузщик Windows 7 передает управление загрузщику XP, который находиться на неактивном разделе, то есть загрузщик Windows 7 передает управление не загрузочному сектору раздела где установлена XP, а непосредственно загрузщику XP. Ведь если активный раздел загружен, то теоритически можно запустить ОС который находиться на неактивном разделе?

Для итога можно привести в пример следующую статью Параметры командной строки Bootsect .
В данной статье фактически указывается что основной функцией данной утилиты является создание конфигурации с двойной загрузкой, в этом основное отличие bootsect от fixboot, fixmbr. В итоге между данными утилитами отличие выражается в целях применения, а функционал один и тот же

okshef 15-11-2010 17:48 1543283

firedevil, вот опять вольное обращение с терминами приводит к неразберихе. Замечу, что мои пояснения ниже относятся к операционным системам от XP:
  • загрузчик - код, находящийся в первых секторах диска (в MBR). К нему обращается BIOS, он ищет активный раздел и загрузочный сектор на нем.
  • загрузочный сектор - записан в начале раздела (он может быть на любом и на всех) и служит для совместимости загрузочного файла операционной системы (да, то что обычно для удобства неправильно называют "загрузчиком")
  • загрузочный файл ОС - тут все ясно. Файл, содержащий код, непосредственно ответственный за последующую загрузку операционной системы. Но! Его тоже почти всегда называют "горшком" "загрузчиком". Для XP - ntldr, для Vista - bootmgr
Цитата:

Цитата firedevil
можно привести в пример »

Я вам постоянно приводил из нее цитаты.
Цитата:

Цитата firedevil
передает управление загрузщику XP, который находиться на неактивном разделе »

Позвольте цитату из себя, любимого :) : Немного теории
Попрошу заметить, после нашей беседы и в этой статье открылась бо-ольшая терминологическая неразбериха. Поэтому прошу не судить - исправлю.
Цитата:

в случае, когда на компьютере установлены две операционные системы (Windows XP и Windows 7), на активном разделе должны находиться файлы загрузки их обеих.
Пример: при выполнении всех условий двойной загрузки, правильного расположения файлов и т.д., если удалить файл bootmgr, загрузится XP.
Случаи загрузки с неактивного раздела мне неизвестны.

firedevil 15-11-2010 21:56 1543469

Цитата:

Цитата okshef
# загрузчик - код, находящийся в первых секторах диска (в MBR). К нему обращается BIOS, он ищет активный раздел и загрузочный сектор на нем.
# загрузочный сектор - записан в начале раздела (он может быть на любом и на всех) и служит для совместимости загрузочного файла операционной системы (да, то что обычно для удобства неправильно называют "загрузчиком")
# загрузочный файл ОС - тут все ясно. Файл, содержащий код, непосредственно ответственный за последующую загрузку операционной системы. Но! Его тоже почти всегда называют "горшком" "загрузчиком". Для XP - ntldr, для Vista - bootmgr »

okshef, ну все верно, просто я по своему описал значение терминов. Например под загрузщиком предполагал загрузочные файлы ОС :)

Цитата:

Цитата okshef
Пример: при выполнении всех условий двойной загрузки, правильного расположения файлов и т.д., если удалить файл bootmgr, загрузится XP.
Случаи загрузки с неактивного раздела мне неизвестны. »

А вот здесь не совсем все понятно, ведь если удалить файл bootmgr, то какой файл передаст управление загрузщику XP, то есть NTLDR. И тем более загрузочный сектор совместимый с загрузщиком Vista (bootmgr), наверняка не захочет запускать файл ntldr?

okshef 15-11-2010 22:26 1543498

Читайте под спойлером Ответы с объяснениями в этом сообщении Вопрос 20
Под "загрузчик" нужно понимать "загрузчик ОС" (bootmgr и ntldr)

Кстати, загрузочный сектор Vista / 7 спокойно запускает ntldr.

firedevil 16-11-2010 15:41 1544011

Цитата:

Цитата okshef
Кстати, загрузочный сектор Vista / 7 спокойно запускает ntldr. »

Не знал. Тогда зачем в утилите bootsect отдельные команды для восстановления загрузочного сектора XP и Vista, W7, если можно обойтись командой bootsect /NT60?

okshef 16-11-2010 22:02 1544304

При выполнении
Код:

bootsect /nt52 All
Windows 7 / Vista не загрузится. Например, после установки XP, выполненной при установленной Win 7, boot-сектор переписывается на XP-шный и без
Код:

bootsect /nt60 ...
не обойтись.

firedevil 17-11-2010 10:51 1544608

Ну это все понятно, я имел ввиду что раз загрузочный сектор Vista, W7 может запустить как bootmgr, так и ntldr, то есть фактически команда bootsect /NT 60 создает загрузочный сектор который может запускать как bootmgr так и ntldr, тогда зачем нужна команда bootsect /NT 52?

okshef 17-11-2010 19:57 1545138

Чтобы исключить из загрузочного сектора возможность загрузки с помощью bootmgr... :dont-know

firedevil 22-11-2010 17:28 1548754

okshef, возник вопрос по поводу утилиты bcdboot. Источником в который копируются файлы загрузки указывается расположение каталога Windows, то есть например так bcdboot c:\windows. Не понятно почему источником в который копируются загрузочные файлы указывается папка windows, а не корень системного раздела, ведь по логике команда должна выглядеть так bcdboot c:?

okshef 22-11-2010 18:05 1548786

Потому, что резервная копия файлов загрузки и всего BCD находятся в каталоге Windows, а не в корне раздела с Windows. Особенно это заметно, когда на диске несколько систем типа Windows 7/Vista. Для пересоздания BCD нужно использовать bcdboot несколько раз, тогда получится загрузочное меню.
Пример: на С: - Windows 7-32, на D: - Windows Vista, BCD - на С:
Порядок действий такой: скопировать bcdboot из Windows/System32 Windows 7 (потому, что в Vista нет), например, в корень С: и выполнить в такой последовательности:
Код:

c:\bcdboot d:\Windows /s c:    восстанавливает запись о Vista в BCD
c:\bcdboot c:\Windows /s c: /m    восстанавливает запись о Windows 7 в BCD и соединяет ее с существующей записью


firedevil 22-11-2010 19:41 1548865

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

okshef 22-11-2010 19:53 1548879

Утилита все делает сама, в том числе помещает bootmgr в указанное место.

Цитата:

Цитата firedevil
файл bootmgr находиться в корне раздела »

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

firedevil 22-11-2010 22:35 1549002

Цитата:

Цитата okshef
при наличии скрытого раздела System Reserved файл нужно поместить в этот раздел, а не в корень раздела с системой. »

В случае повреждения файла bootmgr находящийся на скрытом разделе как указать путь для копирования файлов с помощью утилиты bcdboot, ведь у скрытого раздела нет буквы?

okshef 22-11-2010 23:28 1549031

firedevil, читаем справку:
Цитата:

/s
Необязательный. Указывает букву диска системного раздела. По умолчанию используется системный раздел, заданный микропрограммой.
То есть, в программе заложен алгоритм распознавания раздела, с которого выполняется загрузка, и его "скрытость" - не помеха.

firedevil 23-11-2010 14:17 1549468

Насколько я понял, есть файлы загрузки bootmgr, BCD в корне диска (BCD в папке boot) и есть их архивные копии в папке windows. В случае повреждения файла bootmgr установочный диск копирует резервную копию bootmgr из папки windows в корень активного раздела и заменяет резервные копии в папке windows на новые командой bcdboot c:\windows. Не совсем понятно, если команда bcdboot копирует загрузочные файлы из их резервных копии в папке windows зачем нужно перезаписывать резервные копии командой bcdboot c:\windows?

okshef 23-11-2010 21:47 1549921

firedevil, какая-то каша у вас получается... Да, в папке Windows находятся резервные копии файлов загрузки, а в корне активного раздела - "рабочие" файлы. Никакого двустороннего обмена нет. Можете проверить: создайте "двойное" меню, выполните bcdboot - меню не будет - произойдет полное пересоздание меню в соответствии с "резервом".

firedevil 23-11-2010 23:30 1549999

okshef, наверное я не совсем правильно представляю процесс работы утилиты bcdboot. Вначале я думал что утилита bcdboot копирует загрузочные файлы из установочного диска и заменяет ими поврежденные загрузочне файлы. Потом оказывается что утилита bcdboot использует резервные копии загрузочных файлов которые находяться в папке windows, чтобы заменить ими поврежденные загрузочные файлы в корне активного раздела. Но тогда не понятна логика команды bcdboot c:\windows. Если я правильно понимаю, то команда bcdboot c:\windows копирует в папку windows загрузочные файлы и создает новую резервную копию загрузочных файлов заместо старой. Зачем это нужно? Ведь утилита должна просто взять нужные загрузочные файлы из резервной копии в папке widows и скопировать их в корень активного раздела, за место поврежденных загрузочных файлов?

okshef 24-11-2010 01:01 1550039

firedevil, ваша ошибка здесь:
Цитата:

Цитата firedevil
команда bcdboot c:\windows копирует в папку windows загрузочные файлы и создает новую резервную копию загрузочных файлов заместо старой. »

ничего это не происходит, а по-простому так и выходит
Цитата:

Цитата firedevil
утилита должна просто взять нужные загрузочные файлы из резервной копии в папке widows и скопировать их в корень активного раздела, за место поврежденных загрузочных файлов? »


firedevil 24-11-2010 11:06 1550239

okshef, то есть под командой bcdboot c:\windows подразумевается не копирование загрузочных файлов из установочного диска в папку windows, данная команда просто указывает утилите bcdboot путь к резервным копиям загрузочных файлов в папке windows, для их копирования в корень активного раздела?
Тогда если повредяться загрузочные файлы, то необходимо просто запустить команду bcdboot c:\windows? А чтобы перенести файлы загрузки на другой раздел диска нужно запустить команду bcdboot c:\windows d:\ ? Верны ли мои предположения?

okshef 24-11-2010 20:11 1550768

firedevil, все верно, за исключением отсутствия ключа /s в последней команде и неверного синтаксиса. Правильно будет так:
Код:

bcdboot c:\windows /s d:\

firedevil 24-11-2010 21:15 1550828

Цитата:

Цитата okshef
все верно, за исключением отсутствия ключа /s в последней команде »

Но ведь параметр /s является необязательным. Да и зачем указывать букву диска системного раздела если в команде уже указана буква системного диска с папкой windows, и буква диска в которую переносяться загрузочные файлы?
И еще непонятно зачем не нужно после диска d: ставить слэш?

okshef 24-11-2010 23:49 1550945

firedevil, но ведь вы-то спрашиваете о переносе:
Цитата:

Цитата firedevil
А чтобы перенести файлы загрузки на другой раздел диска нужно запустить команду bcdboot c:\windows d:\ ? »

Тогда и нужен ключ /s, и в этом случае он обязателен.
Цитата:

Цитата firedevil
И еще непонятно зачем не нужно после диска d: ставить слэш? »

Это не ко мне, а к разработчикам...

firedevil, у меня к вам просьба - не нужно больше "полезняшек"...

firedevil 25-11-2010 11:17 1551169

Цитата:

Цитата okshef
у меня к вам просьба - не нужно больше "полезняшек"... »

Хорошо, просто ставил потому что в каждом сообщении есть что то полезное и новое :)

Цитата:

Цитата okshef
Тогда и нужен ключ /s, и в этом случае он обязателен. »

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

Еще не совсем понятно почему разработчики решили резервные копии поставить в папке windows, ведь в случае его повреждения, восстановить область загрузки не получиться. Проще было бы создать утилиту которая бы копировала загрузочные файлы из установочного диска.

okshef 25-11-2010 13:29 1551276

Цитата:

Цитата firedevil
если не известно буква системного раздела »

это - для вас, ведь вы то знаете, на каком разделе у вас будут файлы загрузки. Иными словами, ключ нужен для перенаправления работы микропрограммы.
Цитата:

Цитата firedevil
разработчики решили резервные копии поставить в папке windows »

А зачем вам загрузчик для неработающей Windows? По-моему, предельно логично.

firedevil 25-11-2010 19:03 1551522

Цитата:

Цитата okshef
А зачем вам загрузчик для неработающей Windows? По-моему, предельно логично. »

Если на винте много bad блоков, то невозможно заранее предугадать что повредиться. Возможно что будут повреждены загрузочные файлы и его резервные копии в папке windows. То есть сама система может быть в порядке. Просто повреждены резервные копии загрузочных файлов и сами загрузочные файлы.

Непонятен атрибут /m. В базе знании Microsoft написано что то про объединение глобальных объектов. Что это и зачем это нужно?

Есть еще один вопрос, немножко не по теме. Почему команда xcopy копирует только содержимое папки, но не саму папку?

okshef 25-11-2010 20:03 1551570

Цитата:

Цитата firedevil
Если на винте много bad блоков »

его нужно просто выбросить.
Цитата:

Цитата firedevil
Непонятен атрибут /m »

Посмотрите еще раз внимательнее: в этом сообщении.
Цитата:

Цитата firedevil
Есть еще один вопрос »

Увольте... Есть же специализированные темы.

firedevil 26-11-2010 10:30 1551916

Цитата:

Цитата okshef
его нужно просто выбросить. »

Не согласен, обычно большинство bad секторов группированы в определенных участках диска. Можно просто вычислить места скопления bad секторов и разделить диск на разделы с учетом того чтобы раздел с системой попал на участок диска где нет bad секторов, а для файлов можно использовать и остальные разделы где есть bad сектора. Естественно это не относиться к важным файлам. Ну или можно создать несколько разделов с учетом того чтобы и системный раздел и данные попали в разделы где нет bad секторов. Перед разделением на разделы нужно несколько раз отремапить диск. При использовании ОС нужно отключить автоматическую дефрагментацию.

okshef, что такое GUID?

okshef 26-11-2010 10:53 1551928

firedevil, в России вроде как доступ к некоторым поисковым сервисам не закрыт... GUID


Время: 05:06.

Время: 05:06.
© OSzone.net 2001-