Instalando o Ubuntu de 32 bits lado a lado com o Ubuntu de 64 bits no sistema UEFI?

0

Eu tenho minhas mãos em um desses notebooks com processadores Intel de 64 bits e Windows 8 de 64 bits instalados por padrão.

Primeiro, eu queria instalar o Ubuntu 14.04 de 32 bits nesta máquina.

Eu finalmente aprendi que eu deveria desligar o SecureBoot do BIOS, assim como o FastBoot ( Está desativando o Boot Seguro necessário para o Ubuntu 14.04 dual-boot com o Windows 8 UEFI ); então eu tentei inicializar o thumbdrive USB com UEFI (que não me lembro se funcionou); eventualmente, o live USB 14.04 de 32 bits inicializado.

Primeiro tentei manter as partições de restauração do Windows e instalei apenas na partição principal, mas depois de tudo isso, eu limpei o disco e configurei uma nova tabela de partição - e consegui instalar o Ubuntu 32-bit. aparentemente com sucesso - mas ao tentar inicializar a partir da instalação depois disso, eu consegui:

Reboot and select proper Boot Device
or Insert Boot Media in selected Boot device

Isso também é observado em " Reinicie e selecione dispositivo de inicialização adequado "erro após a instalação limpa do Ubuntu 13.04 - e depois de encontrar Instalação limpa do Ubuntu não inicializa [reinicialize e selecione o dispositivo de inicialização adequado] , eu observei isto:

If your computer has EFI or UEFI firmware or has pre-installed Windows 8, you must choose Ubuntu 64-bit version. 32-bit version will not work.

E então eu substituí o instalador do Ubuntu 32-bit no meu thumbdrive USB com um Ubuntu 64-bit, e finalmente consegui fazer a instalação com sucesso - e ter esta versão instalada inicializada a partir da partição principal do sistema.

Até agora, tudo bem - mas eu acho que às vezes eu posso precisar de um sistema de 32 bits para depuração e tal. Então, como meu conhecimento da UEFI e similares é muito ruim, gostaria de perguntar (antes que eu perca horas com isso, antes de descobrir que é impossível):

Desde que eu já tenha uma instalação de UEFI de 64 bits na unidade principal deste computador, será mais fácil se eu decidir: reduzir a partição de 64 bits para criar espaço; em seguida, crie uma nova partição para o sistema de 32 bits; e finalmente, instalar o Ubuntu 32-bit a partir de um thumbdrive USB nesta partição?

Eu vi no link , que:

Use a 64bit disk of Ubuntu. (Ubuntu32bit cannot be easily installed in UEFI mode. This is a problem if 32-bit UEFI is the only way your computer can boot, e.g. if you have a modern Intel Atom based laptop. In this case, you will need a complicated work-around.)

... no entanto, não tenho certeza se essas instruções se aplicam apenas à instalação pela primeira vez do Ubuntu em um sistema (ou possivelmente, para um lado a lado com o Windows).

Estou meio que esperando que no meu caso, onde eu quero um Ubuntu de 64 bits e 32 bits lado a lado (e sem o Windows), seria mais fácil: meu raciocínio é que ter 64 bits já instalado com sucesso, o processo de instalação já teria configurado as partições de inicialização, rótulos "inicializáveis" etc. apropriadamente - e então, quando a versão de 32 bits é instalada, ele detectaria o Grub na máquina e simplesmente se adicionaria como entrada , em vez de tentar instalar o bootloader do zero (mesmo que o instalador sempre pergunte explicitamente em qual dispositivo o bootloader deve ser instalado, o que me faz temer que o processo de instalação de 32 bits possa sobrescrever o bootloader correto do 64-bit) e, assim, bagunçar as coisas).

Então - alguém já tentou isso antes, e pode-se esperar um processo de instalação mais fácil (isto é, simples) nesse caso; ou deve-se esperar a quebra da instalação de 64 bits, se uma instalação de 32 bits for tentada lado a lado?

    
por sdaau 23.03.2016 / 13:10

3 respostas

4

A maneira fácil

A maneira mais fácil de fazer o que você quer é não inicializar o Ubuntu de 32 bits diretamente; em vez disso, instale-o em uma máquina virtual (no VirtualBox, QEMU ou VMware, por exemplo). Dependendo de suas necessidades exatas, isso pode ser tudo o que você precisa, e é um lote mais fácil do que tentar obter tudo adequadamente com multi-inicialização. OTOH, se você estiver desenvolvendo, digamos, drivers para o hardware do seu computador, uma máquina virtual provavelmente não fará o que você deseja.

O caminho difícil

De um modo geral, posso pensar em três maneiras de fazer o que você quer (além da solução fácil de usar uma máquina virtual):

  • Go 100% BIOS / CSM / legacy - Você pode limpar o computador e instalar todos os seus sistemas operacionais usando o CSM (Compatibility Support Module), que permite que os carregadores de inicialização do modo BIOS funcionem. Isso fará com que seja muito parecido com a instalação em um computador de vários anos atrás. O truque é que pode ser difícil controlar o modo de inicialização da mídia de instalação, especialmente se você não estiver familiarizado com as ferramentas e técnicas usadas para fazer isso. Veja minha página na Web sobre o assunto para mais informações; no entanto, essa página foi escrita com o objetivo de desestimular a instalação de modo misto, portanto, informações sobre como fazer uma configuração de 100% no modo BIOS são enterradas entre outras coisas. Além disso, se você quiser manter o Windows, precisará passar por alguns bastidores exóticos ou reinstalá-lo completamente e, para fazer o último, será necessário rastrear a mídia de instalação apropriada.
  • Use um GRUB de 64 bits do modo EFI para iniciar um kernel de 32 bits - O GRUB 2 de 64 bits do modo EFI pode iniciar kernels Linux de 32 bits - ou pelo menos alguns deles posso. (Os binários do GRUB variam significativamente na forma como são construídos, por isso não posso prometer que todos os binários GRUB de 64 bits do modo EFI farão o trabalho.) Como uma questão prática, para trabalhar desta forma, você provavelmente desejaria para instalar o Windows, em seguida, um Ubuntu de 32 bits (no modo BIOS funcionará bem), em seguida, o Ubuntu de 64 bits no modo EFI. Idealmente, o GRUB do Ubuntu de 64 bits deve detectar a instalação do Ubuntu de 32 bits e criar entradas de menu separadas para ele. Eles podem não ser bem rotulados, mas devem funcionar. Se eles não forem detectados, talvez seja possível criar entradas manualmente.
  • Use rEFInd para inicializar os sistemas operacionais de modo EFI de 64 bits e seu SO de modo BIOS de 32 bits - Essa abordagem é semelhante à anterior; no entanto, você instalaria meu rEFInd gerenciador de inicialização após concluir a instalação do Ubuntu de 64 bits. Em seguida, edite /boot/efi/EFI/refind/refind.conf : descomente a linha scanfor e verifique se hdbios está entre as opções. O resultado é que o rEFInd permitirá que você inicie o Windows ou o Ubuntu de 64 bits no modo EFI e mostrará um ícone cinza em forma de losango que iniciará o GRUB no modo BIOS a partir da instalação do Ubuntu de 32 bits. Este GRUB, por sua vez, lançará o Ubuntu de 32 bits. (Pode eventualmente pegar e mostrar opções para iniciar o Ubuntu de 64 bits no modo BIOS também.)

Em teoria, qualquer uma dessas opções deve funcionar. Na prática, todos eles apresentam armadilhas durante a configuração, e qualquer um pode ser bloqueado por peculiaridades de firmware ou outros problemas. Assim, você pode precisar experimentar dois ou até os três antes de conseguir algo para trabalhar.

    
por Rod Smith 23.03.2016 / 14:35
2

Ok, tentei, funciona - mas existem ressalvas, então aqui estão minhas anotações:

A bios neste PC me deu duas opções para inicializar o thumbdrive USB inicializável de desktop de 32 bits do Ubuntu 14.04: UEFI e um não-UEFI. A opção UEFI simplesmente reiniciou o BIOS, então eu tive que usar o não-UEFI. Uma vez que o thumbdrive USB inicializou, escolha o Try Ubuntu.

A partir daqui, executei gparted (ou gparted-pkexec ), encolhi a partição principal do Ubuntu 14.04 de 64 bits e coloquei o espaço não alocado em uma nova partição ext4 . Neste ponto, é visível que o instalador de 64 bits criou uma partição separada para inicialização - observe isso para mais tarde.

Neste ponto, eu corri o ícone Install Ubuntu da execução ao vivo de 32 bits. Quando se trata da tela Tipo de instalação (veja link ), escolha aqui "Algo mais", e simplesmente dê um duplo clique na partição feita no passo anterior, "use" como ext4, e tenha como ponto de montagem / (a raiz), então continue a configuração.

Aqui, você obterá o prompt "Área de inicialização da BIOS reservada" (".. Se você não voltar ao menu de particionamento e corrigir este erro, ...", consulte Devo criar a partição da área de inicialização do BIOS reservado? ) - você pode ignorar isso e prosseguir, como vimos com nossos próprios olhos anteriormente em gparted que já existe uma partição desse tipo.

Quando a instalação de 32 bits terminar e o PC for reinicializado, você notará que não há menu Grub no início, em vez disso, o PC é inicializado diretamente no sistema operacional de 64 bits. Aqui, como por Eu não posso obter grub menu para aparecer durante a inicialização , alterei GRUB_HIDDEN_TIMEOUT etc (consulte link e Bug # 1258597 "Aviso: Definindo GRUB_TIMEOUT como um valor diferente de zero ..." ) valores em /etc/default/grub e ran sudo update-grub - acho que é isso que fez a partição de instalação de 32 bits ser encontrada, e a entrada de menu é adicionada ao menu Grub. Quando esta corrida é finalmente reinicializada, o menu Grub deve ser mostrado na inicialização - se não, tente segurar / tocar no Shift assim que a tela da BIOS passar.

Agora eu posso inicializar no recém-instalado 32-bit, eu corro apt-get update + dist-upgrade como há um novo kernel, o novo kernel é instalado, e agora deve haver uma entrada extra no menu do Grub, então update-grub é executado automaticamente no modo de 32 bits por apt-get dist-upgrade e, infelizmente, fará uma bagunça no processo de inicialização. Da próxima vez que reiniciarmos, se quisermos ir para o sistema operacional de 32 bits através do menu do Grub, seremos recebidos com erros do Grub como "arquivo não encontrado" e "ponteiro não alinhado".

Felizmente, neste ponto, a entrada do Grub para o processo de 64 bits ainda não está corrompida, portanto podemos inicializar no sistema de 64 bits e aqui emitir sudo update-grub para corrigir a inicialização do Grub.

Agora, neste momento, há duas pequenas falhas. Primeiro, os nomes mostrados no menu do Grub são algo como "Ubuntu" para a instalação de 64 bits (o primeiro) e "Ubuntu com o kernel xxxx em / dev / sdxy" para a instalação de 32 bits. Eu prefiro ter nomes como "Ubuntu 64-bit" e "Ubuntu 32-bit", mas isso é aparentemente difícil de fazer ( Como posso editar minhas entradas de carregador de boot Grub (Hide, Rename, Remove)? De preferência fazê-lo manualmente, e não com um programa , Bug # 439538 "O Grub2 não oferece uma opção para renomear menuentry em / etc / default / grub "), já que o Grub2 parece autogerar esses nomes a partir de scripts.

Então, também a ordem de inicialização é definida pelos scripts do Grub2, então se você precisa ter o SO padrão para ser inicializado como 32 bits, você terá que contar em qual ordem é a entrada desejada mostrada em No menu de inicialização do Grub2, use GRUB_DEFAULT=x em /etc/default/grub ( Como Eu altero a ordem de inicialização do GRUB? ) seguido por sudo update-grub - novamente, correu estritamente no sistema operacional de 64 bits!

Obviamente, você terá que ser extremamente cuidadoso a cada vez com possivelmente reajustar essas coisas toda vez que houver uma atualização do kernel em qualquer um dos sistemas operacionais ...

    
por sdaau 23.03.2016 / 21:08
1

O relatório de erros pode ser encontrado no launchpad . É dito que o Debian tem beta para EFI de 32 bits . Do link:

What's here?

This is a fourth build of netinst CDs with experimental EFI support included. For the first time, I've included i386 support as well as just amd64. The amd64 image should boot and work in EFI mode on a recent amd64 (x86_64) machine, doing the following steps differently:

boot via UEFI rather than BIOS mode
use GPT partitioning on hard disks rather than MSDOS
add a FAT-formatted EFI partition for booting
install an EFI bootloader rather than lilo/grub-pc

Pode valer uma tentativa de copiar isso para um ISO do Ubuntu e testá-lo.

    
por Rinzwind 23.03.2016 / 13:55