Onde o bootloader deve ser instalado quando eu quiser rodar o Ubuntu de um disco rígido externo?

6

Eu tenho um laptop que está executando o Windows 10 e eu quero instalar o Ubuntu em um disco rígido externo e sempre que eu precisar, basta conectá-lo e inicializá-lo a partir da unidade externa.

Eu segui um tutorial, na verdade dois, e ambos disseram que o bootloader tem que ser instalado no disco rígido externo. Isto teve como resultado que eu só podia acessar o Windows quando eu tinha o disco rígido externo conectado. Sempre que eu não tinha plugado no laptop não iria arrancar e eu iria apenas obter uma tela preta com uma linha branca. Depois de consertar o meu registro mestre de inicialização, consegui acessar o Windows.

Agora quero tentar novamente, mas receio que, se eu instalar o bootloader na unidade interna, eu possa de alguma forma excluir minha partição do Windows ou terei problemas com a inicialização.

Então, o que devo fazer?

    
por captain 23.03.2016 / 15:12

4 respostas

7

Primeiro, é CRITICAL que você entende seu modo de inicialização. Computadores modernos podem inicializar de duas maneiras:

  • BIOS - Este é o jeito antigo de inicializar, que foi usado na maioria dos computadores lançados antes de 2011. Computadores modernos suportam o modo de inicialização do BIOS através de um recurso chamado Compatibility Support Module (CSM), também conhecido como " suporte de inicialização no modo legado "ou um termo semelhante. Assim, esse método pode ser referido por três nomes: BIOS, CSM ou legado. Envolve o código do carregador de inicialização de 16 bits no Splat Master Record (MBR) e em vários outros lugares. É um método deselegante mas maduro de inicialização, e a maioria dos sites que não mencionam explicitamente o modo de inicialização descrevem a inicialização no modo BIOS. Se o seu computador veio com o Windows 8 ou posterior, no entanto, é provável que não use este método de inicialização.
  • EFI / UEFI - Este é o modo de inicialização nativo para a maioria dos computadores introduzidos desde meados de 2011, e é completamente diferente da inicialização via modo BIOS, então você deve > ignorar qualquer aviso que afirme explicitamente que seja para inicialização no modo BIOS, ou qualquer coisa que não mencione o modo de inicialização (já que é provável que seja antigo ou escrito por alguém que não saiba a diferença). Uma exceção: confusamente, muitas pessoas e até fabricantes de computadores referem-se a suas EFIs como "BIOSes". Essa prática cria muita confusão.

Como você mencionou o Windows 10, provavelmente o seu computador é baseado em EFI e inicializa no modo EFI. Eu vou prosseguir com essa suposição. Se isso estiver incorreto, ignore o restante desta resposta.

Para inicializar um disco interno no modo EFI, o sistema operacional normalmente armazena um carregador de inicialização como um arquivo na partição do sistema EFI (ESP) no disco. Este nome de arquivo pode ser qualquer coisa legal, mas para o Ubuntu será EFI/ubuntu/shimx64.efi , que por sua vez lança EFI/ubuntu/grubx64.efi . O instalador do sistema operacional registra o nome do carregador de boot com o gerenciador de inicialização interno da EFI, que armazena esse nome na NVRAM. Se a EFI funcionar corretamente (nem todos), isso resulta em um processo de inicialização funcional.

O problema desse processo, aplicado a um disco removível, é triplo:

  • O instalador do Ubuntu instalará o GRUB no "ESP" - mas você pode ter vários ESPs disponíveis (quase certamente um no disco rígido e talvez um na unidade USB). Controlar onde o GRUB é instalado pode ser complicado. Não é feito usando a opção marcada com o título óbvio sobre onde instalar o GRUB. Em vez disso, pode ser feito (AFAIK) apenas a partir da opção de instalação "Algo mais" marcando o ESP que você deseja usar como "partição de inicialização EFI" ou "partição de sistema EFI" (cujo nome depende da versão do Ubuntu). / li>
  • Se você instalar o GRUB no ESP na unidade USB, quando remover a unidade USB, a EFI poderá perceber que tem uma entrada registrada do carregador de boot inválida e excluir essa entrada. Muitas EFIs fazem isso, e isso significa que, se você instalar o GRUB em um disco externo e, em seguida, desconectá-lo, perderá a capacidade de inicializar a partir desse disco, mesmo quando conectar o disco novamente.
  • A maneira como o Ubuntu configura o GRUB faz com que ele dependa dos arquivos de configuração que estão no diretório /boot/grub do Ubuntu, o que não provavelmente estará no ESP. Assim, se o Ubuntu instalar o GRUB no ESP em seu disco interno, você evitará o primeiro problema, mas se deparará com outro porque, quando você iniciar com a unidade USB desconectada, o GRUB será iniciado e não conseguirá localizar seus arquivos de configuração. O resultado é um aviso de grub> que irá mistificar a maioria dos usuários.

Existem várias soluções para esses problemas, incluindo:

  • Instalação manual do GRUB no nome de arquivo de fallback no disco externo - Os instaladores do SO são inicializados usando um nome de arquivo de fallback de EFI/BOOT/bootx64.efi . Se você copiar Shim (que inicia o GRUB) para esse nome de arquivo (copiando EFI/ubuntu para EFI/BOOT no ESP e renomeando shimx64.efi para bootx64.efi em EFI/BOOT ), seu firmware poderá iniciar seu USB com base no GRUB, assim como o instalador do Ubuntu. Isso funcionará após os dois problemas que acabei de identificar, mas você precisará usar o gerenciador de inicialização interno do computador para selecionar o sistema operacional a ser inicializado. Esse gerenciador de inicialização integrado varia de inutilizável a tolerável, portanto, isso pode ou não ser uma solução aceitável. Você também pode precisar ajustar sua ordem de inicialização depois de instalar o Ubuntu para evitar que ele execute o GRUB do ESP do disco interno ou do ESP do disco externo por padrão.
  • Coloque uma partição /boot em seu disco interno - Se você instalar o GRUB no disco interno, também poderá colocar uma partição /boot no disco interno. Isso permitirá que o GRUB funcione normalmente em todas as inicializações; no entanto, a opção Ubuntu aparecerá o tempo todo, mesmo quando o disco USB estiver desconectado. Isso pode ser indesejável, especialmente se o Ubuntu for o padrão.Além disso, essa solução significa que sua unidade USB externa será inicializável somente no computador em que você a preparou. Se você quiser usar esse disco em outros computadores, evite essa solução.
  • Use um gerenciador de boot mais inteligente - Um gerenciador de inicialização oferece uma opção de SOs para inicialização, enquanto um carregador inicializa um kernel na memória. O GRUB faz as duas tarefas e o gerenciador de inicialização interno da EFI faz apenas o primeiro trabalho. Existem outros gerenciadores de inicialização disponíveis, alguns dos quais podem ajudá-lo a evitar os problemas que identifiquei. O meu próprio rEFInd, por exemplo, se instalado no ESP do disco interno e feito o programa de inicialização padrão, detectará e apresentará um Ubuntu opção se e somente se GRUB ou um kernel Linux estiver presente - isto é, quando a unidade USB estiver conectada. Definindo a opção default_selection em refind.conf apropriadamente, você pode configurar o rEFInd para inicializar o Ubuntu automaticamente se o seu Ubuntu USB A unidade está conectada e inicializa diretamente no Windows se a unidade USB do Ubuntu não estiver conectada. Minha resposta para essa questão fornece mais detalhes sobre esse tipo de configuração, embora em um Mac em vez de em um PC.

Com alguma sorte, uma dessas abordagens fará com que você comece a trabalhar.

    
por Rod Smith 23.03.2016 / 18:32
0
  1. Inicialize o Ubuntu Live USB / CD
  2. Conecte seu HDD externo em
  3. Instale o Ubuntu no disco rígido externo (avançado, para que você possa definir onde o gerenciador de inicialização deve instalar)
  4. Configura a BIOS para inicializar a partir do seu disco rígido externo
por RemoveThisAccount 23.03.2016 / 15:17
0

Você precisa instalar o gerenciador de inicialização em qualquer unidade que seu UEFI / BIOS usar para inicializar. Você pode alterar este drive nas configurações do seu BIOS, as quais você pode acessar normalmente pressionando algo como F10 , F12 , ou Del imediatamente após o seu computador começa. Então, como primeiro passo, você pode tentar configurar sua máquina para inicializar a partir da unidade externa em vez da unidade interna. Se o bootloader estiver instalado corretamente na unidade externa, isso deve funcionar.

Para o uso diário normal, você provavelmente desejará sempre inicializar a partir da mesma unidade por conveniência, assim você desejará instalar o gerenciador de inicialização em sua unidade interna. Antes de fazer isso, porém, você deve fazer um backup, de preferência uma imagem de disco completa da sua unidade interna de trabalho. Se você encontrar problemas depois de instalar o Ubuntu ao lado do Windows, a ferramenta Boot-Repair pode ajudar.

    
por Ben 23.03.2016 / 15:19
0

Eu instalaria o gerenciador de inicialização no dispositivo externo! Desta forma, não há chance de sua instalação do Windows danificar ou remover o bootloader. Seria uma tarefa simples configurar seu BIOS para inicializar:

USB-Key
USB-Disk
HDD
etc 
etc

NB: CERTIFIQUE-SE DE DESABILITAR O SECUREBOOT (se você encontrar essa opção)

Dessa forma, se você desconectar o dispositivo externo por algum motivo, isso não afetará seu computador.

E: se você ficar longe de drivers proprietários, poderá executar este sistema em outros computadores ...

(Btw, eu não recomendaria este tipo de instalação para uso permanente, pois será mais lento que o eSATA)

    
por IzznogooooD 23.03.2016 / 15:30