Como fazer um Kubuntu portátil na unidade externa (GPT) no computador UEFI?

0

O problema: após a instalação do Kubuntu no SSD externo ( Transcend ESD400 512Gb ) no computador UEFI eu posso não use em outro. Fiz algumas tentativas, mas todas elas não tiveram sucesso.

Meu computador: UEFI, Core i7 - 4 núcleos, Windows 7 Ultimate 64bit, 2 unidades internas com GPT, SSD externo com GPT.

Kubuntu distro: LiveUSB, criado com Universal USB Installer 1.9.5.4, Kubuntu 14.04 LTS

O SSD externo foi particionado com o GParted, as partições estão alinhadas.

Após cada instalação, o SSD foi formatado e reparticionado. O GRUB foi verificado: versão 2.02, EFI (não grub-pc).

Tentativa 1: com drives internos conectados.

Eu iniciei no LiveUSB. Execute a instalação usual. Minha tabela de partições:

512Mb - EFI - fat32
30Gb - / - ext4
100Gb - /home - ext4
50Gb - /usr - ext4
50Gb - /opt - ext4

O Bootloader foi instalado no SSD Externo (/ dev / sdc). Após a reinicialização, encontrei duas entradas de inicialização ubuntu no UEFI. Se meu SSD externo estiver conectado e eu escolher cada uma dessas duas entradas - tudo funciona bem: o Kubuntu inicia e funciona. Se o SSD externo estiver desligado - uma tela preta Minimal BASH-like line editing is supported apareceu. Se eu escolher UEFI TS512... (entrada de inicialização com rótulo do SSD externo), parece que a próxima entrada funciona ( Windows Boot Manager ).

Tentativa 2: com unidades internas desconectadas.

O procedimento de instalação foi o mesmo. Depois de reiniciar o sistema começou e funcionou. Mas depois de ligar as unidades internas, ao inicializar a partir de externas (entradas ubuntu e UEFI TS512... ) aparece uma tela preta com cursor de texto piscando e nada quer começar. Se eu escolho Windows Boot Manager o Windows inicia bem.

Tentativa 3: tentou modificar arquivos efi.

Copiado grubx64.efi de /dev/sda1 para dev/sdc1 e renomeado para bootx64.efi . Nada de novo - desce a lista de entradas até Windows Boot Manager .

Tentativa 4: tentou modificar grub.cfg e fstab .

Em /boot/grub/grub.cfg substitui todo hd2 por hd0 . E em fstab alterei o UUID da partição EFI: antes de apontar para /dev/sda1 , agora aponta para /dev/sdc1 .

Então, como posso criar um sistema portátil no SSD externo, que será inicializado em cada computador UEFI, mas não apenas no meu?

    
por Eugene 28.07.2014 / 18:59

1 resposta

1

O problema é que o processo de inicialização EFI armazena dados na localização do carregador de inicialização na NVRAM, portanto, quando você instala em um computador e move o disco para outro computador, o segundo computador não sabe onde procurar. carregador de inicialização. A maneira usual de contornar esse problema é usar o nome do arquivo de carregador de inicialização padrão / substituto, EFI/BOOT/bootx64.efi , na partição do sistema EFI (ESP; essa é a sua partição FAT32). O firmware procura por esse nome de arquivo em discos removíveis. A grande advertência é que você pode precisar usar o gerenciador de inicialização interno do firmware para selecionar esse disco, e os detalhes de como acessar esse gerenciador de inicialização variam de um computador para outro.

Você pode copiar o carregador de boot para esse local manualmente. A maneira mais provável de funcionar, a partir de uma instalação do Ubuntu em funcionamento, é:

cd /boot/efi/EFI
sudo mkdir -p BOOT
sudo cp ubuntu/shimx64.efi BOOT/bootx64.efi
sudo cp ubuntu/grubx64.efi BOOT/grubx64.efi

Observe que esses comandos sobrescreverão qualquer carregador de inicialização EFI/BOOT/bootx64.efi existente. Você provavelmente não tem um no seu disco externo agora, mas talvez queira verificar isso novamente. Além disso, isso pressupõe que o ESP no disco externo esteja montado em /boot/efi . Você deve verificar novamente com df antes de continuar. Você não quer sobrescrever o carregador de boot em seu disco por acidente!

Se você tiver certeza de que estará inicializando com o Secure Boot desativado, poderá copiar EFI/ubuntu/grubx64.efi para EFI/BOOT/bootx64.efi , mas isso não funcionará se o computador de destino tiver a Inicialização segura ativada.

    
por Rod Smith 28.07.2014 / 19:15