Como eu posso inicializar um Windows 7 e Ubuntu 11.10 criptografados com TrueCrypt quando ambos são instalados separadamente em diferentes unidades físicas?

6

Como eu posso inicializar um Windows 7 e Ubuntu 11.10 criptografados com TrueCrypt quando ambos são instalados separadamente em diferentes unidades físicas?

Eu tenho dois discos rígidos. O hd0 tem uma instalação do Windows 7 criptografada pelo TrueCrypt com o carregador de inicialização TrueCrypt. O hd1 tem uma instalação do Ubuntu 11.10 com o bootloader grub2.

A saída de fdisk -l é a seguinte:

  Device Boot      Start         End      Blocks   Id  System   
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848   976771071   488282112    7  HPFS/NTFS/exFAT

  Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048   968517631   484257792   83  Linux
/dev/sdb2       968519678   976771071     4125697    5  Extended
/dev/sdb5       968519680   976771071     4125696   82  Linux swap / Solaris

Eu posso inicializar com sucesso em qualquer sistema operacional, alterando a ordem de inicialização no BIOS, mas não quero ter que fazer isso repetidamente. Minhas opções são:

  • Adicione o gerenciador de inicialização TrueCrypt à configuração do grub2 e carregue-o com o grub2.
  • Inicialize no gerenciador de inicialização TrueCrypt e, ao acessar o escape para sair da entrada de senha, inicialize no grub2.

Eu tive dificuldades com a opção 1, pois ao acessar o TrueCrypt, o escape não encontra outra partição inicializável. Pelo que entendi, ele deve procurar por outros discos inicializáveis.

Eu também tive dificuldades com a opção 2 e com o seguinte em /etc/grub.d/40_custom (e depois executando update-grub2 ) ...

menuentry "Windows 7" {
set root=(hd0,1)
chainloader +1
}

(eu também tentei root=(hd0,0) e root=(hd0,2) )

... recebo erros sem essa partição. Eu também li várias fontes que sugerem que não é possível fazer isso com o grub2 sem montar e inicializar no ISO do disco de recuperação TrueCrypt antes de inicializar o Windows. Isso é necessário?

O que estou fazendo de errado?

    
por Martin Foot 07.03.2012 / 12:04

3 respostas

3

Parece que a solução mais simples para isso é usar o bootloader do Windows para inicializar no Grub, e não o contrário. O Grub parece incapaz de inicializar em uma partição do windows criptografada mesmo com --force .

Existe uma ferramenta chamada EasyBCD (livre para uso não comercial) que irá configurar corretamente o gerenciador de inicialização do Windows para inicializar no Grub assim que você inserir sua senha do TrueCrypt. Agora tenho minha unidade do Windows como o primeiro dispositivo de inicialização no BIOS e Grub como o item de inicialização padrão no bootloader do Windows. Você pode facilmente tornar o Windows o padrão.

    
por Martin Foot 26.05.2012 / 09:37
3

Eu posso ajudá-lo em um trabalho, é bastante complicado, então não deixe de entendê-lo.

Primeiro: backup de tudo Segundo: Requer dois discos físicos, com apenas um eu não consegui chegar a ele

Vá para parte complicada, o processo de ordem de segurança de inicialização:

  • O BIOS inicializará a partir de um disco rígido (normalmente o primeiro)
  • Então coloque lá o bootloader do GRUB2
  • Esse GRUB permite inicializar as partições de formulário no primeiro disco ou inicializar a partir do segundo disco (essa é a parte complicada)
  • Se você deseja inicializar o Linux, basta inicializar a partir de outra partição no mesmo disco
  • Se você deseja inicializar o TrueCrypt Bootloader, basta avisá-lo para inicializar a partir do segundo disco, não de uma partição

Tendo isso em mente, como arquivar isso? Fácil, siga estes passos:

  • Coloque apenas um disco rígido em branco no PC
  • Configure o BIOS para inicializar a partir dele (apenas para este momento)
  • Instale as janelas e o TrueCrypt nele
  • Diga ao TrueCrypt para criptografar tudo (apenas um HDD está presente)
  • Reinicialize, teste as inicializações do Windows
  • Desligue corretamente
  • Adicione um segundo disco
  • Crie no segundo HDD algumas partições
  • Um para / boot (onde irá o GRUB2)
  • O resto como você deseja para o Ubuntu /, SWAP, etc ...
  • Configure o GRUB2 para permitir inicializar o Ubuntu e encadear o segundo HDD completo (cuidado para não informar nenhuma partição, apenas o HDD completo)
  • Reinicializar
  • Tricky: Diga ao BIOS para inicializar a partir do segundo disco rígido (como você diz que permite) desde sempre agora
  • Teste que a inicialização é executada no GRUB2
  • Teste que a cadeia do GRUB2 carrega corretamente o primeiro bootloader de HDD (carregador TrueCrypt), mas não coloque a frase de senha nem deixe o Windows Boot, apenas reinicialize quando a senha for solicitada.
  • Reinicialize se não terminar ... e teste a opção GRUB2 Linux ... não inicializará, pois o Ubuntu ainda não está instalado, mas não carregará o TrueCrypt, então você vê que funciona
  • Instale o Linux com cuidado muito especial ... não deixe que ele mude qualquer tabela de partição ... apenas instale-o no segundo disco usando partições existentes ... e quando for solicitado o bootloader diga para instalar o Grub ou o Lilo, etc. ... na partição Linux, não no HDD MBR.

Com isso, você receberá este esquema:

  • HDD0 - MBR com TrueCrypt, o restante para Windows
  • HDD1 - Partição MBR e / boot com GRUB2, mais uma partição para / (seu Ubuntu) dentro do mesmo, haverá outro carregador Grub, Lilo ou Grub2 em / boot, partições extras como você deseja

O truque é:

  • Diga ao TrueTrypt para criptografar, pois ele conhece um HDD completo com seu próprio gerenciador de inicialização.
  • Inicialize o GRUB2 a partir de outro HDD diferente (o BIOS precisa ser capaz de inicializar a partir do segundo HDD)

Então, ao inicializar isso é o que acontece:

  • BIOS lê sua configuração no CMOS
  • BIOS para inicializar o segundo HDD
  • BIOS lê o segundo disco rígido do MBD
  • O GRUB2 é carregado
  • O GRUB2 mostra o menu: Boot Windows / Boot Ubuntu
  • Se você selecionar o Ubuntu, o GRUB2 carregará outro Grub, lilo, etc dentro da partição raiz do Ubuntu, esse outro gerenciador de inicialização carregará seu Linux Ubuntu
  • Se você seleciona o Windows, o GRUB2 carrega o primeiro HDD, agindo como se o BIOS fosse inicializado a partir do primeiro HDD

Desta forma:

  • TrueCrypt não sabe nada sobre o segundo disco para inicializar, não depende dele
  • GRUB2 e Linux não substituirão / não tocarão nada no primeiro disco
  • O BIOS inicializará a partir do segundo disco rígido

Espero que esteja claro.

Lembre-se de arquivar isso:

  • Primeiro, faça alguns testes com um VirtualBOX antes de fazê-lo em uma máquina física real, para se familiarizar com o processo
  • Em segundo lugar, anote em um papel de passos que você está seguindo como você faz, apenas para poder não esquecer de nada

Agora, devo dizer que isso pode ser feito sem abrir o PC ... com os dois discos conectados.

Imagine isso:

  • HDD0 sem partição
  • HDD1 sem partição
  • Instalando o Windows somente no HDD0 de maneira normal, mas não particione o HDD1
  • Instale o TrueCrypt e informe para criptografar o HDD0 completo, ele não fará nada com o HDD1
  • Testar tudo corretamente
  • Inicialize a partir de um LiveCD, como um SystemRescueCD, crie partições no HDD1
  • Certifique-se de criar uma partição dedicada para / boot apenas para o GRUB2, não relacionado ao seu Linux, com 512MB você também poderá colocar SystemRescueCD.iso nele e configurar o GRUB2 para executar o bootload a partir do arquivo iso (consulte SystemRescueCD web para isso)
  • Instale o GRUB2 no HDD1 MBR e no HDD1 / partição de inicialização
  • Configure o grub.cfg de tal GRUB2 para inicializar sua raiz do Linux no HDD1 e uma cadeia de carga para o HDD0 (não para qualquer partição no HDD0)
  • Testar o GRUB2 inicializa todas as opções corretamente, basta testar a carga da corrente ...ao inicializar o Windows e o TrueCrypt irá pedir passphrase apenas reboot, não perca tempo para inicializar o próprio Windows
  • Instale o Ubuntu na partição raiz do HDD1 e diga para instalar o próprio grub na partição raiz do HDD1, onde os arquivos principais do Ubuntu no Linux vão para que ele não toque na partição HDD1 / boot em todos os

Esse é o problema!

A ideia: use outra mídia para fazer o menu de inicialização atual, onde você pode selecionar o que fazer para inicializar.

Pessoalmente, no meu netbook eu tenho essa cadeia:

  • / boot com o menu GRUB2 com opções para inicializar: WindowsVista, Windows7, Ubuntu Linux 32bits, Linux Ubuntu 64Bits, SystemRescueCD.iso, memtext86 +, disquete, etc ...
  • Se eu selecionar Linux Ubuntu 32Bits ... ele carregará outro GRUB2 diferente com opções: Voltar (inicializar a partir do HDD MBR), Kernel X, Depurar Kernel X, Y do Kernel, Depurar Kernel Y, etc ...
  • Se eu selecionar Linux Ubuntu 64Bits ... ele carregará outro GRUB2 diferente com opções: Voltar (inicializar a partir do MBR do HDD), Kernel X, Depurar Kernel X, Y do Kernel, Depurar Kernel Y, etc ...

Esta é a idéia ... ter no processo de inicialização mais de um GRUB !!

Por que mais de um? Fácil ... caso o sistema atualize o Grub ele não toca no que eu uso como menu de boot, simples e efetivo.

Agora, o problema TrueCrypt ... se ele encypts a partição do sistema que precisa estar no MBR, não deixe de outra maneira (exceto RecoveryCD).

Então, se TrueTrypt criptografa uma partição do sistema Windows, é melhor deixar o disco inteiro

Ei! O Linux também pode ser instalado no mesmo disco que o Windows para desempenho ... e dados no outro ...

Primeiro disco rígido com:

  • / dev / sda - & gt; Carregador TrueCrypt (O MBR)
  • / dev / sda0 - & gt; Windows criptografado por TrueCrypt (alguns GBs)
  • / dev / sda1 - & gt; Linux Ubuntu / (alguns GBs) ele armazenará outro Grub, uma subpasta chamada boot e todos os arquivos do sistema, etc ...

Segundo HDD com:

  • / dev / sdb - & gt; Carregador GRUB2 (O MBR) eu vou referenciá-lo como "BootMenu"
  • / dev / sdb1 - & gt; / boot para o GRUB2 "BootMenu" (512 MB, se desejar, no arquivo SystemRescueCD.iso)
  • / dev / sdb2 - & gt; Partição NTFS para DATA vista no Windows e Linux (se não criptografada) como

Espero que você chegue a isso.

Eu tinha explicado como isso apenas pensando que você sabe como inicializar a partir de um CD, configurar o BIOS, criar partições, instalar o GRUB2, etc ...

Isto não é para noobs. Tem muito avanços nas etapas técnicas e não é um HowTo ...

É apenas a idéia de inicializar a partir de outra mídia, como outra mídia (um CD, disquete, etc) irá conter um menu de inicialização que permite selecionar para inicializar a partir do primeiro disco rígido ou de uma partição, etc ... GRUB2.

Espero que você ache útil.

    
por z666zz666z 26.04.2012 / 16:52
0

Você pode simplesmente entrar no menu de inicialização e escolher o disco rígido que deseja inicializar.

No meu caso eu faço isso pressionando F11 quando as mensagens do POST são mostradas. Pode ser uma chave F diferente no seu caso.

    
por Constantine Loukas 26.05.2012 / 09:51