Dualboot Ubuntu 11.10 e Windows 7. Deseja certificar-se de que o grub retome o SO correto após o hibernate

0

Instalei o windows7 e o Ubuntu 11.10 no meu laptop da asus. Eu tenho uma grande partição de dados (NTFS) compartilhada por ambos os sistemas operacionais, então eu quero que o laptop acorde para o sistema operacional original depois de hibernar. No entanto, o GRUB não parece ter noção de qual sistema operacional iniciou o modo de hibernação. Existe alguma maneira de informar ao GRUB que o SO iniciou o modo de hibernação?

Aqui está a minha ideia (espero que alguém tenha ideias melhores à minha frente), mas não sabe por onde começar:

no ubuntu, antes de entrar em hibernação, defina GRUB_TIMEOUT = 0 e execute grub-set-default no ubuntu. Desta forma, da próxima vez o GRUB tem que inicializar / retomar no Ubuntu. Ao voltar do estado de hibernação ou no desligamento, configure GRUB_TIMEOUT = 10 (ou algum outro valor diferente de zero).

Mas isso só resolve metade do problema (se a ideia for factível). Ainda não sei como definir o padrão do GRUB antes do W7 hibernar.

Realmente adoro dar sugestões.

    
por G. He 14.03.2012 / 01:15

2 respostas

2

Se você alterar o / etc / default / grub para ter as duas linhas:

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

Ele sempre selecionará o último SO inicializado, trazendo o sistema hibernado sem a sua intervenção; no entanto, isso também será feito, mesmo que você não tenha hibernado.

(Agradecimentos a @ drs305, que escreveu o guia GRUB 2 Basics nos fóruns do Ubuntu.)

    
por zpletan 14.03.2012 / 01:56
1

Eu executei o Ubuntu 11.10 e o Windows 7 lado a lado, com uma partição de dados NTFS separada, como você descreveu, há algum tempo, e minha solução foi simplesmente ignorar isso, e chegar ao menu GRUB independentemente se Encerrei ou hibernizei a última vez que deixei meu computador.

Os efeitos disso são os seguintes:

  1. Hibernar do SO (a). O computador salvará o estado no disco e desligará.

  2. Inicie o computador. Ele irá para o menu GRUB como de costume. Escolha qual sistema operacional iniciar.

  3. Se você iniciar no sistema operacional (a), sairá da hibernação como esperado.

  4. Se você iniciar no sistema operacional (b), você iniciará esse SO a partir do estado que você deixou por último (hibernado / desligado).

  5. Se você iniciou no OS (b), reinicie o computador e encerre o SO (a), ele será retomado da hibernação da mesma forma que foi feito sem iniciar o SO (b) entre eles.

Em suma, minha máquina parece lidar com a hibernação e desligar os dois sistemas de operação de forma independente, e a única característica que eu não tenho que você fala é a falta de escolha em qual sistema operacional iniciar após a hibernação. Isso possibilita, por exemplo, trabalhar em algo no Windows, perceber que você precisa fazer algo no Ubuntu para que você hibernate, reinicie no Ubuntu, desligue e retome o Windows - algo que não seria possível com sua configuração desejada.

Eu não deixo nenhuma garantia de que isso é realmente sem problemas, ou funciona em qualquer máquina - mas até agora tem sido sem problemas para mim , e funcionou muito bem na minha máquina .

Atualizar em resposta ao comentário:
Se chkdsk começar quando você inicializar no W7 depois de hibernar e usar o Ubuntu no meio, pode ser porque o Ubuntu montou a partição W7 automaticamente. Provavelmente o Ubuntu mudou alguma coisa no disco, o que confundiu o W7.

Tente desabilitar a montagem automática da partição W7 - comentando a linha correta em /etc/fstab ou definindo algumas opções em uma GUI em algum lugar (por algum motivo não consigo encontrar o programa de configurações correto ...)

    
por Tomas Aschan 14.03.2012 / 01:28