Andy Melnikov (nponeccop) wrote,
Andy Melnikov
nponeccop

Categories:

Лечение BCD

Есть у меня говножелезяка - EEE 1005HA. На ней есть винда с линуксом в дуалбуте через старую еботню с загрузочным сектором. Т.е. стандартный загрузчик семёрки грузит файл на ntfs, в котором лежит бутсектор линукса, который загружает уже с ext3 загрузчик, который читает menu.lst и грузит ядро и initrd.

Как-то давно, более полугода назад, не помню уже что я хотел делать, но удалил по ошибке партицию, на которой стоял BCD. Удалил, но ничего поверх не писал - следовательно, можно восстановить. Как-то восстановил сразу же (деталей уже не вспомню) но поменялся похоже какой-то гуид, по которому BCD находил сам себя, и он перестал работать. Я ничтоже сумняшеся, более полугода грузился с флешки. Флешка подхватывала конфиг с линуксовой партиции, так что всё пучком. Ну и у ноута появился элемент двухфакторной авторизации - флешку я ношу с собой, хрен кто его включит.

Наконец около недели назад я захотел таки это дело починить. Узнал, что вся инфа лежит в маленькой Registry Hive под названием \boot\BCD. Ну я нашёл штуку hivex - линуксовая утилита, умеет читать и писать хайвы. Открыл BCD - там сплошные magic numbers, не человекочитаемо.

Плюнул, начал искать в чём суть проблемы. Говорят да, известная проблема и таки гуиды, надо загрузиться с WinRE, там есть утилита bootrec которая сама всё поправит. WinRE штатно собирать мне не захотелось, там мерзостная процедура по его сначала сборке, а потом запёхивания на флешку. Готовые имиджи из инета оказывались какой-то хуйнёй с установленной оперой - нахуй-нахуй оттуда что-то ещё запускать.

Плюнул, неделю взял передыху. А сегодня вот по несвязанному поводу (надо было поудалять лишние записи из BCD на другой машине, где я как раз миграцию на новый Grub4dos сделал) нашел утилиту Visual BCD

Она умеет открывать просто файлик BCD из любого места (как впрочем и штатный bcdedit). Но с гуем и дропдаунами для волшебных чисел.

Я загрузился с флешки в линукс, смонтировал ntfs-раздел, скопировал BCD на флешку, на рабочей машине запустил Visual BCD, увидел что таки вместо дисков какая-то хрень, методом тыка заменил все такие хрени в OsDevice и BootDevice на [boot], скопировал через линукс BCD обратно, и поровнялось! Теперь снова грузится, а не выдает в загрузчике, что не может найти устройство.
Subscribe

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 4 comments