Як працюють завантажувальні сектори та декілька дисків?


17

Я не повністю розумію концепцію завантажувального сектору, я сподівався, що хтось може це зрозуміти для мене.

Якщо у вас є два жорстких диска, на яких встановлено ОС, чи має кожен привід власний завантажувальний сектор? Чи потрібно кожному диску розділ MBR?

У мене є Linux і Windows на двох окремих дисках. У мене були проблеми при установці Linux і grub, і тепер я, нарешті, вирішив використовувати завантажувач Windows для запуску. Були б Windows позбулися GRUB, коли я використовував / fixmbr або залишається там на завантажувальному секторі іншого диска?

Відповіді:


17

Відповідь Віль нечітко правильна, але технічно не точна. Так, привід не потребує MBR. Без цього ви не зможете завантажитися з цього диска, і ви не зможете його створити розділів на цьому диску. АЛЕ ...

Термін Головний завантажувальний запис часто використовується для позначення двох речей - це правильно лише перше, і зазвичай неправильно застосовується до другого:

  1. Місцезнаходження, зокрема, перший 512-байтовий сектор пристрою зберігання розділених даних ("LBA Sector 0"). Це місце зберігає перші 440 байт коду завантажувача (перший етап завантажувача) і первинну таблицю розділів. Див Стаття MBR докладніше про структуру типового MBR.

  2. Код завантажувача зберігається в цьому місці. У системі BIOS це перший код, який виконується при завантаженні BIOS з диска. Подивитися MBR і завантаження системи і завантажувач на першій стадії : на системах i386 цей код ланцюговий завантажувач другого ступеня , що зберігаються на обсяг завантажувального запису активного розділу, який виконує фактичне завантаження операційної системи.

The Об'єм завантажувального запису або розділ завантажувального сектора є першим сектором розділу, де операційна система, встановлена ​​на цьому розділі, зберігатиме свій основний код завантаження. VBR також використовується на нерозділених пристроях зберігання даних (дискети, флеш-накопичувачі USB або навіть жорсткі диски, що використовуються в нерозділених ролях).

Системи з декількома завантаженнями використовують a менеджер завантаження (наприклад, Grub). Менеджер завантаження розміщує свій код завантажувача в MBR і надає меню, з якого користувач може вибрати ОС для завантаження. (У технічному плані користувач вибирає, який другий етап завантажувача використовувати.)


Отже, щоб відповісти на запитання безпосередньо:

  • Два жорстких диска з ОС, встановленими на кожному кожен з них матиме свій MBR .

    • Обидва MBR будуть містити принаймні один розділ.
    • Кожен розділ на цих жорстких дисках буде мати свій власний VBR. Розділи, що містять установки операційної системи, зберігатимуть завантажувачі другої стадії в цих VBR; будь-які розділи, які є лише даними, (ймовірно) не мають дійсного завантажувального коду у VBR.
    • Якщо ця система завантажується, то принаймні один цих MBR буде містити дійсний завантажувач на першій стадії, але це необхідно тільки для диска, з якого BIOS намагається завантажитися.

  • Коли ви встановили Linux на ваш другий диск, він ймовірно написав завантажувач першого етапу Груба до MBR диска Windows. Це може є також написав перший етап завантажувача на MBR власного диска, але якщо BIOS ніколи не намагається завантажитися з диска Linux, ви ніколи не помітите. Аналогічно, коли ви використовуєте / fixmbr, Windows переписує завантажувач першого етапу на MBR свого системного диска.

    • Я чесно не знаю, якщо утиліта Bootrec.exe у Win-7 також запише на MBR інших дисків. Це, ймовірно, має можливість зробити це, але, ймовірно, не є дією за умовчанням.
    • Я також не знаю, чи інсталятор Ubuntu 9.04 встановить Grub на MBR обох дисків за замовчуванням. При бажанні це можна зробити вручну. У деяких ситуаціях було б добре - якщо ви відключите диск Windows і спробуйте завантажитися з диска Linux, ви не завантажилися, якщо завантажувальний код першого етапу Grub не був присутній.

Дякуємо за дуже детальну відповідь: -) ... Мені завжди було цікаво, чому MBR використовується для двох різних значень, і тепер я знаю haha
GiH

1
@GiH Вас вітають. Дякуємо за запитання; він може слугувати базовим вступом до MBRs & amp; завантажувачі для майбутніх читачів.
quack quixote

у вас є джерело для "Термін Master Boot Record часто використовується для позначення двох речей - це правильно тільки перший, і зазвичай неправильно застосовується до другого:" Я впевнений, що це правильно, і я прочитав його десь .. але цікаво, якщо у вас є джерело для цього. Крім того, оскільки тут є термін для завантажувача, чи є термін для не-завантажувальної частини MBR? А коли йдеться про GPT, чи містить GPT таблицю завантажувача і розділів, і яка термінологія відрізняє GPT і таблицю розділів?
barlop

3

Привід не потребує MBR, однак, без нього, ви не зможете завантажитися з цього диска.

По-перше, машина буде завантажуватися на будь-який диск, про який повідомляється BIOS. Це - єдиний диск, який потреб MBR (Це на машинах на основі BIOS, наприклад, більшість на ринку, а не EFI).

Наявність MBR в основному скаже машині, що диск є завантажувальним (і не повертає страшне "No disk or error error" або подібне повідомлення), завантажувач завантажиться.

Коли завантажувач завантажується, він в основному буде робити те, що йому доручено, це може бути завантаження інших завантажувачів (наприклад, завантаження завантажувача Windows) або операційних систем - наприклад, ви можете вибрати диск / розділ.

Таким чином, вам потрібно тільки мати MBR (і завантажувач) на фактичному завантажувальному диску.


Добре, але чи можливо, що обидва мої диски мають MBR, оскільки я мав працювати раніше? В основному, я намагаюся зрозуміти, якщо диск Linux витрачає місце на MBR, тому що я не використовую grub, або коли я встановив завантажувач Windows, чи позбавився він від grub і MBR? Вибачте, якщо моє запитання заплутано ...
GiH

1
Ви можете мати тільки один MBR, тому що це не стільки файл, скільки розташування. Я б не хвилювався (мова йде про кілька сотень байт (я думаю, що це максимум ~ 500), якщо це, на диску з багатьма мільярдами байт! Однак, можливо, у вас ще є файли grub - але, знову ж таки, це дуже мало.
William Hilsum

3
@GiH, повторно: витрачаючи простір - ні, MBR також надає таблиці розділів для диска, так що простір зарезервовано (не використовується ОС), чи містить він дійсний завантажувальний запис чи ні. ви можете думати про це як про невелику кількість накладних витрат для ваших файлових систем; у порівнянні з сучасними можливостями жорсткого диска, кількість "витраченого" простору занадто мала, щоб хвилюватися.
quack quixote

1

MBR (Master Boot Record) є першим сектором, на якому можна написати. Він має фіксоване розташування та розмір (дуже малий), тому ви можете мати тільки один MBR на диску.

MBR - це перший сектор, який читається в послідовності завантаження після завантаження bios. Він може використовуватися для завантаження однієї операційної системи або для завантаження завантажувача, як grub або lilo, для вибору системи для завантаження.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.