Corrigindo o menu grub após migrar o wubi para a partição

2

Eu instalei o Ubuntu 12.04 via Wubi há algumas semanas, e hoje usei o script no link para movê-lo para uma nova partição. Agora estou tendo um pouco de confusão sobre como limpar a instalação original do Wubi.

Aqui está a configuração: dois discos rígidos, / dev / sda contém minha instalação do Windows 7, e / dev / sdb é uma unidade secundária com uma grande partição para dados. Eu tinha o Wubi instalado em / dev / sdb1 e agora criei duas novas partições sdb2 e sdb3 para a instalação e troca, respectivamente.

Na inicialização, o computador inicia o gerenciador de inicialização do Windows com duas opções, Windows e Ubuntu (esse é o comportamento que quero, pois uso o Windows na maioria das vezes e não quero inicializar acidentalmente o Ubuntu enquanto o Windows hibernado); mas agora o carregador do grub ao escolher a opção do Ubuntu de repente se tornou bastante cheio. Parece que o Wubi foi deixado intacto no topo da lista, com a versão migrada (em / dev / sdb2) empurrada para baixo na lista.

Isso me deixou com duas perguntas:

  1. Como removo a instalação do Wubi da lista do grub?
  2. Agora é seguro desinstalar o Wubi de dentro do Windows enquanto ainda permite que seu gerenciador de inicialização direcione para o Grub na segunda unidade?

Felicidades.

EDIT: Eu tentei usar o programa Ubuntu-Tweak como recomendado abaixo, e levantou uma questão interessante. Havia algumas versões antigas do kernel que também estavam sendo mostradas na lista do grub, e que eu havia removido. Tentando executar qualquer um deles dá um erro ao longo das linhas de "Você precisa carregar o kernel primeiro". sudo update-grub não os tirou da lista e, de fato, de acordo com a saída do status, ele deveria ter adicionado o Windows ao grub (o que não foi feito). Reiniciei no Windows e executei bcdedit , e parece que está usando a versão do grub do Wubi com a nova versão adicionada (daí porque update-grub não está ajudando em nada). Esta é a seção relevante da saída do bcdedit:

Real-mode Boot Sector
---------------------
identifier              {816916df-c233-11e0-a9e6-883a7e390b89}
device                  partition=G:
path                    \ubuntu\winboot\wubildr.mbr
description             Ubuntu

onde "G: \ ubuntu" era a pasta de instalação original do Wubi.

Quando eu executei o script de migração, em primeiro lugar ele disse que estava instalando o Grub em / dev / sdb - mas isso por si só não é uma partição. Existe algum lugar onde o script de migração poderia ter instalado o Grub, ou seja, em algum lugar eu posso apontar o bootloader para que ele use a versão correta do Grub? (Depois disso, tenho certeza que a questão sobre a desinstalação do Wubi é um ponto discutível)

    
por Jez W 05.03.2013 / 17:21

1 resposta

1

A migração para o Wubi só instalará o gerenciador de inicialização do Grub na unidade para a qual você está migrando. Nesse caso, /dev/sdb . Ele faz isso para simplificar as coisas (e acredito que seja a opção mais segura). Portanto, a maneira mais fácil de inicializar a instalação migrada é definir /dev/sdb para inicializar primeiro nas opções BIOS .

A maneira como o Wubi inicializa - e a maneira como você está inicializando agora - é do Gerenciador de Inicialização do Windows (armazenamento BCD), wubildr.mbr (no diretório \ubuntu\winboot ), então wubildr ( C:\wubildr ), então o grub.cfg de dentro da instalação do Wubi (o root.disk ). É aqui que você está inicializando sua instalação migrada. Se você desinstalar o Wubi ALL, essas coisas serão removidas (não o Gerenciador de Inicialização do Windows, mas ele não será exibido, porque a entrada do Wubi foi excluída).

Portanto, você não pode inicializar a instalação migrada com o método de inicialização do Wubi depois de se livrar do Wubi. Você pode instalar o grub na partição migrada e usar easyBCD para fazer isso. Mas pessoalmente eu não recomendaria isso. Se você tiver que inicializar a partir da unidade que contém janelas (no seu caso, /dev/sda ), faça isso:

  1. Inicialize a instalação migrada
  2. Instale o grub no MBR. Supondo que a unidade da qual você inicializa é /dev/sda , você executaria: sudo grub-install /dev/sda
  3. Altere a ordem de inicialização para que o Windows seja o primeiro.

Código:

sudo mv /etc/grub.d/30_os-prober /etc/grub.d/09_os-prober
sudo update-grub

Estes últimos comandos apenas alteram a ordem na qual o Grub gera as entradas do menu, colocando a entrada do Windows (gerada a partir de 30_os-prober ) primeiro.

PS. já que você já ajustou o menu do grub na instalação migrada, provavelmente terá que instalar o Grub no /dev/sda para fazer as coisas funcionarem corretamente e deixar os scripts do grub sozinhos.

    
por bcbc 05.03.2013 / 20:09