Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.09.17;
Скачать: [xml.tar.bz2];

Вниз

NTLDR is missing   Найти похожие ветки 

 
vajo   (2006-08-16 14:31) [0]

WinXP не грузится. Можно ее запустить без переустановки?


 
Беспечный_Ангел ©   (2006-08-16 14:43) [1]

http://support.microsoft.com/kb/318728/ru


 
Иксик ©   (2006-08-16 14:45) [2]

Запросто - просто копируешь в корень ntldr с любого другого компьютера.
Разумеется версии ОС должны совпадать.


 
Чапаев ©   (2006-08-16 14:49) [3]

> Разумеется версии ОС должны совпадать.

Или -- версия_нового >= версии_старого.


 
Slider007 ©   (2006-08-16 14:51) [4]

Восстановление системы с загрузочного диска тоже может помочь


 
Иксик ©   (2006-08-16 14:52) [5]


> Чапаев ©   (16.08.06 14:49) [3]

Не пробовал :)


 
Tirael ©   (2006-08-16 14:57) [6]

просто скопировать? на 98 io.sys с пом. команды sys копировался в первый сектор диска, а терь copy умная чтоли стала, сама видит если ntldr то в первый сектор?


 
Vaitek__   (2006-08-16 14:59) [7]

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


 
Чапаев ©   (2006-08-16 15:52) [8]

> Восстановление системы с загрузочного диска тоже может помочь

Как конвретно?


> Не пробовал :)

А у меня раз ХР затёрла своим ntldr"ом ntldr от 2003. 2003 грузиться отказалась, конечно. Записал ntldr от 2003 -- обе системы грузились нормально. Ещё ходят байки, что 2000 и ХР и загрузчиком от 2003 быстрей грузятся... На глаз не заметно, точно скажу. :-)


> на 98 io.sys с пом. команды sys копировался в первый сектор
> диска

Давайте ещё ДОС вспомним...


> если ntldr то в первый сектор?

А что, кроме как из первого сектора и загрузиться нельзя?


 
Tirael ©   (2006-08-16 16:06) [9]

2Чапаев и да и нет, MBR то стандартная, и она передает управление по одному и тому же адресу, ничего не ищет, и если по этому адресу не будет загрузчика, то...


 
Чапаев ©   (2006-08-16 16:14) [10]

> MBR то стандартная

Да нету в природе стандарта на MBR... Это во-первых. Во-вторых, MBR не загружает систему, он читает в память загрузочный сектор и передаёт ему управление. А уж загрузочный сектор знает, как систему загружать. Откуда, кстати, ты взял эту глупость, что io.sys в первый сектор записывается?


 
Чапаев ©   (2006-08-16 16:14) [11]

> он читает в память загрузочный сектор

Активного раздела


 
Tirael ©   (2006-08-16 16:16) [12]


>  загрузочный сектор знает, как систему загружать


я чуть со смеху не помер!

сектор тот потому загрузочным и называется что в нем загрузчик записан - io.sys или ntldr...


 
Tirael ©   (2006-08-16 16:20) [13]

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


 
Чапаев ©   (2006-08-16 16:24) [14]

> я чуть со смеху не помер!

На здоровье.


> сектор тот потому загрузочным и называется что в нем загрузчик
> записан - io.sys или ntldr...

Проследуйте в сад.


> вот поэтому и важно чтоб этот ntldr был записан именно в
> первый сектор, или, если хочешь, загрузочный сектор, что
> одно и тоже

Эксперимента ради запиши ntldr в первый сектор (dskprobe из support tools хорош для этого). Только потом не жалуйся, что Чапаев тебе комп угробил.


 
Tirael ©   (2006-08-16 16:37) [15]

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

но суть дела это не меняет, ntldr должен быть записан в этих 512 байтах, точнее начало ntldr"а


 
Чапаев ©   (2006-08-16 16:41) [16]

> но суть дела это не меняет, ntldr должен быть записан в
> этих 512 байтах, точнее начало ntldr"а

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

(Хинт: вот в таком случае как раз recovery console незаменима)


 
Tirael ©   (2006-08-16 16:44) [17]

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


 
Tirael ©   (2006-08-16 16:46) [18]

ЗЫ.  в загрузочном секторе активного раздела, то что читает и куда передает управление MBR


 
Чапаев ©   (2006-08-16 16:51) [19]

> [17] Tirael ©   (16.08.06 16:44)
> не доказывай, просто скажи для интереса, что же по твоему
> находится в загрузочном секторе?

Находится на диске файл загрузчика (io.sys или ntldr), считывается в память , ему передаётся управление.

Ладно, оставим садистские шуточки с записью в первый сектор... Прочти первый сектор. Попробуй объяснить наличие в содержимом сектора сообщения "NTLDR is missing". NTLDR сообщает, что его нету?


 
Tirael ©   (2006-08-16 16:57) [20]

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

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


> "NTLDR is missing"

эта строка зашита в мбр, мбр не сразу передает управление а сначала проверяет сигнатуру

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


 
Чапаев ©   (2006-08-16 16:58) [21]

То есть, пардон, я ответил на вопрос "что происходит", а не "что находится". Что находится -- зависит от того, под какую файловую систему отформатирован раздел. Общее для FAT и NTFS: первые три байта -- прыжок на программу загрузки загрузчика (дивная фраза...), далее -- OEM string (MSWIN4.1 или NTFS, к примеру), дальше специфичное для файловой системы описание параметров раздела, в конце маааахонький код, который ищет и загружает файл загрузчика (io.sys или ntldr) или же выводит сообщение о невозможности загрузки...

Подробности у: Нортона, Джордейна, Фроловых...


 
Чапаев ©   (2006-08-16 17:02) [22]

> пишет его вместо себя и передает ему управление

Можешь объяснить, как можно записать поверх себя, а затем передать управление (будучи уже чем-то перезаписанным)?


> эта строка зашита в мбр

О боги! А проверить??? Я вот только что проверил -- у меня записана в загрузочный сектор. Что я делаю неправильно?


> мбр не сразу передает управление а сначала проверяет сигнатуру

Чью сигнатуру, что есть сигнатура?


 
Tirael ©   (2006-08-16 17:13) [23]

вобщем ктото из нас тупит.

ИМХО программа загрузки загрузчика есть часть самого io.sys, для этого он и копировался командой sys чтоб его начало разместилось в этих 512 байтах

про ntldr честно не знаю, но ИМХО откуда то должна взяться эта "программа загрузки загрузчика", так что логично было сделать по аналогии с io.sys, т.е. встроить ее в ntldr.

а вот терь самое главное, из за чего я это все начал - возможно ты прав, и в случае NT "программа загрузки загрузчика" и ntldr это разные вещи, но я о том что если поверх NT поставить скажем 98 (знакомый умудрился так сделать и я даже не знал что ему посоветовать) то эта "программа загрузки загрузчика" затрется куском io.sys, как быть в таком случае?


 
Tirael ©   (2006-08-16 17:22) [24]


> в конце маааахонький код, который ищет и загружает файл
> загрузчика

на твоем месте я бы чуть задумался об этом поиске - прошелестеть винт байт за байтом эт долго, комп грузится быстрее :-) да и адресация у той "программы загрузки загрузчика" 16 разрядная, так что может не найти, обыскать то может только 65535 кластеров, а если файл лежит дальше?


 
Tirael ©   (2006-08-16 17:24) [25]

ИМХО то что в книге написано "ищет" (если ты верно цитировал) нужно читать как "знает где" ))


 
Чапаев ©   (2006-08-16 17:25) [26]

> вобщем ктото из нас тупит.

Факт.


> для этого он и копировался командой sys чтоб его начало
> разместилось в этих 512 байтах

Он туда не копировался. Просто программа в загрузочном секторе ДОС умеет только проверить: есть ли в первой записи корневого каталога раздела файл io.sys, если есть, то загрузить. Бут (назову так программку из загрузочного сектора, дабы не путать с загрузчиком) NTFS умнее -- может искать по всему корневому каталогу.

Задача sys.com не в том, чтоб загрузчик записать в бут, а в том, чтобы после записи загрузчика вписать io.sys и msdos.sys соответственно первым и вторым в корневой каталог.


> эта "программа загрузки загрузчика" затрется куском io.sys

Глупость. 98 (по умолчанию) переписывает MBR. MBR от 98, естественно, умеет загружать только 98 да ДОС.


> я даже не знал что ему посоветовать

Читать www.sovety.net.

Вот цитата оттуда об описанном тобой случае:
Перед
установкой Windows 9x нужно в файле MSBATCH.INF из дистрибутива (если такого
файла в вашем дистрибутиве нет, создайте его) прописать следующие строки:
[Setup]
CleanBoot=0
Если дистрибутив Windows 9x находится на CD (как это обычно и бывает), то
скопируйте (или создайте) MSBATCH.INF на винчестер и отредактируйте там, а
затем запустите программу установки Windows 9x, указав в качестве параметра
полный путь к данному файлу, например:
setup.exe C:\MSBATCH.INF
В данном случае файл можно назвать как угодно, а не только MSBATCH.INF.
После установки может понадобиться прописать Windows 9x в стартовом меню
Windows 2000, добавив следующую строку в раздел [operating systems] файла
boot.ini:
C:\="Microsoft Windows 98"
где текст в кавычках - это то, что будет выводиться в загрузочном меню выбора
ОС.
В корне системного диска необходим файлик bootsect.dos, который содержит
загрузочный сектор Windows 9x


 
Tirael ©   (2006-08-16 17:30) [27]

цитатка хорошая, но это нужно делать до установки, а он уже поставил и затер


> Глупость. 98 (по умолчанию) переписывает MBR


вот это точно глупость - все мбр работают одинакого:

BIOS по умолчанию грузит MBR по адресу 0000h:7C00h.
MBR делает с себя копию в адрес 0000h:0600h и переходит к дальнейшему выполнению программы в этой зоне адресов.
При этом адрес первичной загрузки 0000h:7C00h становится вершиной стека.
Ищется запись об активном разделе.
Запоминаются его данные.
Затем продолжается просмотр информации о разделах до конца (т.е. до 4-го раздела включительно).
Если встречается еще один активный раздел, то выдается сообщение об ошибке и программа зависает.
Или, если встречается раздел с кодом в поле "загрузочный" не равным 0h или 80h, то тоже выдаётся сообщение об ошибке с последующим зависанием.
Если всё в порядке, то программа грузит сектор, на который указывает активный раздел, по адресу 0000h:7C00h и передаёт ему управление


 
Tirael ©   (2006-08-16 17:34) [28]

скорее переписывает не мбр а загрузочный сектор, и сектор становится в противоположность Nt  шному тупее и не ищет ничего кроме io.sys в первой записи

ну с загрузкой разобрались...

> Бут (назову так программку из загрузочного сектора, дабы
> не путать с загрузчиком) NTFS умнее

осталось только понять откуда этот бут берется и как его восстановить


 
Чапаев ©   (2006-08-16 17:45) [29]

> а он уже поставил и затер

Есть прекрасная штука -- recovery console, я её уже не раз упоминал в этой ветке. Правда, перед её применение неплохо бы позаботиться, чтоб потом можно было 98 грузить... Бут-сектор с раздела 98 сохранить в файл надо.


> все мбр работают одинакого:

Скажи это парнишке, которому 98 MBR затёрла...


> скорее переписывает не мбр а загрузочный сектор, и сектор
> становится в противоположность Nt  шному тупее и не ищет
> ничего кроме io.sys в первой записи

98 лезет на раздел незнакомого ей формата NTFS и что-то туда пишет? Прикольно придумал...


> как его восстановить

recovery console, команда fixboot... Только в данном случае она не поможет, в данном случае fixmbr использовать придётся.


 
Tirael ©   (2006-08-16 17:51) [30]


> 98 лезет на раздел незнакомого ей формата NTFS и что-то
> туда пишет? Прикольно придумал...


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

ЗЫ. а мбр -ы все все равно одинакого работают ))


 
Tirael ©   (2006-08-16 17:53) [31]

ЗЫЫ. а если раздел был один, ессно фат32, то потер, собака, загрузчик... (
пусть тогда консоль юзает


 
Tirael ©   (2006-08-16 17:55) [32]

ЗЫЫЫ. xp то восстановит, а как потом 98 прикрутить, ежели на 1 разделе?


 
Чапаев ©   (2006-08-16 18:16) [33]

> надо просто вручную активный поменять

Так и будешь вручную менять, в зависимости от того, в какой системе работать надо?


> xp то восстановит, а как потом 98 прикрутить, ежели на 1
> разделе?

Тут> [29] Чапаев ©   (16.08.06 17:45) всё написано...


 
VirEx ©   (2006-08-16 20:01) [34]

короче.
грузишся с загрузочного сии диии
выбираешь в меню R
консоль:
выбираешь "вход в систему"
проверяешь жесткий - chkdsk
пишешь fixboot
затем fixmbr
и exit


 
Anatoly Podgoretsky ©   (2006-08-16 21:27) [35]

Кто то читает старинные анекдоты.


 
Ketmar ©   (2006-08-16 21:46) [36]

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


 
Tirael ©   (2006-08-21 22:21) [37]

2Anatoly Podgoretsky  так ведь прикольно же )


 
Чапаев ©   (2006-08-21 22:39) [38]

Раз тема поднялась... Всё-таки про МБР наврал я малость. NT никаких своих суперзагрузчиков туда не пишет. Это Фря загрузчик прям в МБР суёт.


 
Tirael ©   (2006-08-21 22:42) [39]

ну раз ты ответил, то чем поможет твое [29]? "Бут-сектор с раздела 98 сохранить в файл надо" сохранишь, потом восстановишь NTшный, а потом что опять на место NTшного от 98 лить?


 
Ketmar ©   (2006-08-21 22:44) [40]

> [38] Чапаев ©   (21.08.06 22:39)
а разве не рядом?



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2006.09.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.048 c
15-1155462028
tButton
2006-08-13 13:40
2006.09.17
две проблемы


2-1156520417
NAS
2006-08-25 19:40
2006.09.17
Даты


6-1146214954
Tsmar
2006-04-28 13:02
2006.09.17
TClientSocket и Proxy, как?


2-1156998367
swan
2006-08-31 08:26
2006.09.17
Экспорт данных в Excel


1-1155039927
alexvan
2006-08-08 16:25
2006.09.17
Вопрос по TEdit





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский