Как я могу получить Grub2 для загрузки MBR с шифрованием Truecrypt?

Учитывая следующую систему:

/dev/sda1 Windows, encrypted using TrueCrypt
/dev/sda2 /boot
/dev/sda3 /, encrypted (LUKS or how it is called)

Теперь мне нужен GRUB2 для загрузки моего truecrypt mbr): Есть ли намеки на это? Я нашел несколько руководств для GRUB2 и TrueCrypt, но все они предполагают, что корневой раздел linux не зашифрован, что имеет место в моей ситуации):

4
задан 10 July 2012 в 03:13

3 ответа

Ответ Флимзи не сработал для меня, и мне не хотелось тратить часы на расшифровку и повторное шифрование Windows, чтобы попробовать предложение stefan.at.wpf. В отчаянии я попытался покопаться в командной строке Grub, сдался и набрал exit, чтобы пойти заняться чем-то другим, и мне представили загрузчик TrueCrypt.

Я был ошеломлен.

Я отредактировал свой файл /etc/grub.d/40_custom для чтения

menuentry "Windows 7" { exit }

И он полностью работает.

Очевидно, что YMMV, но вот мои настройки: TrueCrypt-encrypted-Windows владеет всем одним диском, а Linux и Grub 2.02 ~ beta2-29ubuntu0.1 владеют всем другим диском. Мой Dell BIOS настроен на загрузку с USB, затем с CD, затем с диска Linux, и, наконец, с диска Windows. Я не уверен, как или почему это работает, но я счастлив, что это работает.

0
ответ дан 10 July 2012 в 03:13

Решение @ stefan.at.wpf рекомендуется во всем Интернете. Это не будет работать для меня. Совсем. Но я нашел другое решение, которое сработало для меня.

По сути, вы загружаете GRUB2 по цепочке, чтобы загрузить SYSLINUX, который, в свою очередь, загружает образ TrueCrypt Rescue ISO, который позволяет вам загружаться в Windows.

Я задокументировал полную информацию здесь . Сводная версия, однако, будет выглядеть следующим образом:

  1. Установить syslinux:

    sudo aptitude install syslinux
    
  2. Скопировать файлы на место:

    sudo cp /usr/lib/syslinux/memdisk /boot/
    sudo cp TrueCrypt\ Rescue\ Disk.iso /boot/truecrypt-rescue-disk.iso
    
  3. Определите UUID вашего загрузочного раздела:

    sudo blkid /dev/sda2
    

    Вывод должен выглядеть примерно так:

    / dev / sda3: UUID = " 12345678-1234-1234-1234567890 "

  4. Настройте GRUB2:

    Добавьте следующее в /etc/grub.d/40_custom:

    menuentry "TrueCrypt ISO boot" {
        insmod part_msdos
        insmod fat
        insmod ext2
        insmod search_fs_uuid
        search --fs-uuid --no-floppy --set=boot [UUID without quotes]
        linux16 ($boot)/memdisk iso raw
        initrd16 ($boot)/truecrypt-rescue-disk.iso
    }
    
  5. Повторно загрузить конфигурацию GRUB2

    sudo update-grub
    

Обратите внимание, что здесь будут отображаться опции восстановления [F8] каждый раз, когда вы загружаетесь в Windows, поскольку мы обманываем система загружает образ компакт-диска TrueCrypt Rescue с жесткого диска, а не «обычный» метод загрузки TrueCrypt. Но это кажется мне небольшим недостатком (и может даже рассматриваться как дополнительная функция!)

0
ответ дан 10 July 2012 в 03:13

Решение: Перед шифрованием Windows установите GRUB2 в / boot, используя

grub-install /dev/sda2 --force

. Игнорируйте предупреждение. Затем установите Truecrypt, сделайте раздел Windows активным (например, используя diskpart на установочном компакт-диске Windows 7). ESC в загрузчике TC теперь приводит к grub - все хорошо :-) Монтирование зашифрованного корня с помощью luks с live cd и установка grub2 с использованием chroot также должны быть возможны, я забыл это простое решение.

0
ответ дан 10 July 2012 в 03:13

Другие вопросы по тегам:

Похожие вопросы: