Author Topic: Мультизагрузочная конфигурация  (Read 3214 times)

Milo

  • Newbie
  • *
  • Posts: 15
Мультизагрузочная конфигурация
« on: January 29, 2015, 10:34:46 pm »
Установил две ОС, обе windows 8.1, на разных разделах одного диска. Первая ос зашифрована. Как настроить загрузчик, что бы при вводе правильного пароля грузилась СРАЗУ зашифрованная ос, а при вводе неправильного/пустого - незашифрованая? На текущий момент, грузиться всегда та ос, которая определена в bcdedit как "загрузка по умолчанию".

То есть, поподробнее, вводишь пустой/неверный пароль, загружается меню выбора ос, и через N секунд грузиться ос по умолчанию, но с неподмонтированным зашифрованным разделом. Если с корректным паролем, то всё то же самое, но раздел монтируется. В меню естественно можно вручную выбрать зашифрованную ос, тогда ребут - и она грузиться нормально. Но это уже не сразу. Ну это так я описал, к сведению.

Я, честно говоря, уже затр@хался libastral подключать... Все опции на вкладках настройки бутлоадера пробовал, давал команду bcdedit /set {default} bootmenupolicy legacy и с ней пробовал, пробовал на разные диски ставить ос...  Задача явно нетривиальная... Может у кого был опыт и кто подскажет?
« Last Edit: January 29, 2015, 11:06:51 pm by Milo »

alkoro

  • Sr. Member
  • ****
  • Posts: 418
Re: Мультизагрузочная конфигурация
« Reply #1 on: January 30, 2015, 09:24:39 am »
Оговорюсь сразу, на win8 такое не делалось,  но на win7 это возможно в том объёме, что вы описали.
То есть, если выключить UEFI, то это же самое пройдет и на win8.
Описанное ниже применимо к Win7, в том порядке, который проделывался мной.
Этот способ проделывался на всевозможных вариантах включая одно- и много-дисковые, полно- и частичношифрованные, разносистемные(xp+win7) конфигурации.

Очень большим подспорьем будет иметь любой liveCD c предустановленным DC на случай сбоев загрузчика, либо иметь другую заведомо исправную систему с уже установленным DC чтобы получить доступ к шифрованному диску.

Итак, есть один неразмеченный жесткий диск.
1) устанавливаем первый экземпляр win7 на первую половину диска. Установщик перераспределит выбранную половину на два раздела - 100мб boot, и остальную часть.
2) После установки нужно перенести все файлы и папки со 100 мб раздела на основной раздел с Win7.
Особенность в том, что последующая установка второй (третьей) windows будет использовать этот же раздел
для своей загрузки, для нашего случая это неприемлемо, поэтому будем приводить
загрузчик windows к каноническому виду, когда он находися на одном разделе с системой.
Это папка boot и файл bootmgr. Сделать это из под самой системы невозможно - некоторые файлы там будут заблокированы, поэтому нужно загружать livecd, я делал это через дистрибутивный диск самой win7 в режиме восстановления (командной строки).
3) после переноса файлов и папок win7 не сможет загрузиться, исправляем и это. Через утилиту diskpart (опять livecd, установщик-режим восстановления), можно использовать любые сторонние средства, делаем активной основную партицию (вторую) с win7. Потом загружаемся с дистрибутива Win7 в режим восстановления. При старте мастера он сам обнаружит неполадки в загрузке и предложит их исправить. После исправления первый экземпляр win7 будет загружаться. Раздел 100 мб не удаляем - он ещё пригодится.
4) Выключаем win7, делаем приготовления для установки второй системы. Чтобы второй экземпляр не увидел предыдущую установку - нужно скрыть второй раздел от любых вмешательств, для этого я использовал diskedit (осторожно - dos, norton utitlities), заменив тип файловой системы с NTFS на любой, недоступный windows (т.е. не FAT, FAT32, exFAT, NTFS). Там же снимал флаг активной второй партиции, но по-моему это уже не важно.
5) Устанавливаем второй экземпляр. Указываем вторую, неразмеченную половину для него. Установщик снова разместит загрузчик win7 на уже существующий 100 мб раздел, а win7 будет размещена в третьем по счету разделе.
6) После установки второй win7 повторяем пункты 2) 3) применительно к третьему разделу.
7) После того, когда завершится установка второй win7 и её загрузка не будет связана с первым разделом, у нас на диске есть три раздела - первый пустой NTFS неактивный 100 мб,  второй неактивный не NTFS (искусственно скрытый) с первой Win7, третий активный со второй win7. Тут нужно решить, какой экземпляр оставляем нешифрованным, а какой будет зашифрован DC.
Пусть шифрованным будет второй раздел (первый экземпляр). Опять загружаем diskedit, "восстанавливаем" второй раздел, делаем его снова типом NTFS, активным. Убеждаемся, что теперь загружается 1-й экземпляр win7. Устанавливаем в нём DC, устанавливаем загрузчик DC.
8 ) Конфигурация DC загрузчика для осуществления идеи fix.
---
Main:
Booting Method - First partition with appropriate password
---
Authentication - здесь любые нужные опции, но я бы установил:
Authenticaton type - Password request/Password and bootauth keyfile
 в зависимости от желания использования ключевых файлов.
Password Message - стереть весь текст
Password prompt message - NO
Show entered password - Hide entered password
Authentication timeout - 30 sec
Cancel timeout if any key pressed - YES
Config embedded keyfile - в зависимости от Authentication type
---
Invalid password:
Use incrorrect password action if no password entered - YES
Invalid message - стереть весь текст
Invalid password message - NO
- Если загрузчик будет на внешнем носителе, не на том же HDD:
Invalid password action - Exit to BIOS
- Если загрузчик будет на том же HDD:
Invalid password action - boot from active partition
---
Далее save changes.
9) Убеждаемся в том, что конфигурация загрузчика сохранена - вынимаем, вставляем внешний носитель, если использовался, выходим-заходим в конфигурацию загрузчика - смотрим опции, если всё ОК, то шифруем второй раздел с ключом или без него в зависимости от желания.
после шифрации 2-3% можно поставить на паузу, чтобы не ждать. Позже можно будет продолжить процесс.
Если используем внешний загрузчик DiskCryptor, то в BIOS setup нужно обеспечить первичную загрузку сначала с него, и после с жесткого диска.
10) Запускаем diskpart, делаем активным третий раздел.
Теперь после старта DC-загрузчика при неправильном пароле/не вставленном внешнем носителе с загрузчиком/при не вводе пароля в теч. 30 сек./ будет загружаться второй windows c третьего раздела. В случае с правильным паролем будет загружаться первый windows c зашифрованного второго раздела.
11) Делаем пробные перезагрузки в обе системы, тестируем.
12) Завершаем процесс шифрования на втором разделе. 100 мб раздел не следует
удалять, потому что windows-загрузчики bootmgr сконфигурированы по порядковому номеру раздела, при удалении он будет нарушен. Достаточно вытереть все данные с него, зашифровать любым не равным системному паролем, "скрыть" тип файловой системы с NTFS на любой неподдерживаемый. Можно использовать все способы подряд.

зы. Я не стал описывать работу с diskpart, diskedit - только их назначение, возможно, есть и другие средства для достижения тех же результатов.
« Last Edit: January 30, 2015, 09:27:59 am by alkoro »

Milo

  • Newbie
  • *
  • Posts: 15
Re: Мультизагрузочная конфигурация
« Reply #2 on: February 18, 2015, 09:26:47 pm »
Спасибо!

eggg

  • Newbie
  • *
  • Posts: 14
Re: Мультизагрузочная конфигурация
« Reply #3 on: August 08, 2015, 11:36:32 pm »
Изначально от 100мб разъема при установке вроде можно отказываться в Вин7?
Если я правильно помню...

Вопрос в другом:
Можно сделать так, чтобы второй ос был линукс, а первой винда шифрованная?
Ведь у линукса свой загрузчик!
Интересует в частности загрузка линя при неправильном пароле/не вставленном внешнем носителе с загрузчиком/при не вводе пароля в теч. 30 сек.
Кто-то делал так с линуксом и обязательно с дк-загрузчиком на флешке?
Как стыкуется это все с грабом?
« Last Edit: August 08, 2015, 11:41:13 pm by eggg »