Reinicie em outro sistema operacional

3

Eu tenho um laptop com mais de um sistema operacional.

Existe algum comando pelo qual eu posso desligar o sistema operacional atual e iniciar em outro sistema operacional?

Windows- & gt; Ubuntu e vice-versa

obrigado

Sourav Ghosh
fonte
1
Isso depende de como escolher inicializar os diferentes sistemas operacionais, a seleção de inicialização do BIOS, o gerenciador de inicialização LINUX ou o gerenciador de inicialização do Windows.
Peter Hahndorf
@ PeterHahndorf Você pode dizer isso por todos esses (se você souber)? é uma boa pergunta.
TechLife

Respostas:

2

Esses detalhes podem não corresponder exatamente ao modo como a UEFI lida com os sistemas GPT, mas descreve os sistemas baseados em MBR.

O padrão oficial (antigo) é usar o que está no registro mestre de inicialização. O comando "fdisk" pode ser usado para alterar os detalhes do MBR.

O MBR tradicional contém alguns bits que especificam se uma partição está sinalizada. O padrão especifica que apenas uma partição é sinalizada, embora isso não seja necessariamente imposto pelo código de inicialização. Quando um usuário especifica que uma partição específica deve ser sinalizada, um programa fdisk tradicional geralmente verifica se há outra partição sinalizada e, se for encontrada, desmarque-a. Pode haver palavras alternativas usadas para descrever uma partição "sinalizada", como uma partição "selecionada".

Então, o MBR tradicional contém algum "código" (instruções). Quando o sistema é inicializado, esse código é executado. O código irá verificar o MBR para ver o tamanho de cada partição e ver qual partição está marcada. Em seguida, ele continuará no processo de inicialização executando algum código adicional localizado na partição sinalizada.

Então, esse é o padrão que é amplamente suportado. Infelizmente, esse método padrão envolve entrar no fdisk e interagir com ele manualmente. Então, esse não é apenas um único programa que você pode executar. É, no entanto, o padrão mais amplamente suportado.

Citar FAQ do OpenBSD: Inicialização múltipla :

Praticamente todos os sistemas operacionais oferecem um programa para fazer isso; O OpenBSD é fdisk (8), programas nomeados similares estão no Windows 9x e DOS, e muitos outros sistemas operacionais. Isso pode ser altamente desejável para sistemas operacionais ou sistemas que demoram muito tempo para desligar e reinicializar - você pode configurá-lo e iniciar o processo de reinicialização, depois ir embora, pegar uma xícara de café e voltar ao sistema inicializado. você quer - sem esperar pelo momento mágico para selecionar o próximo sistema operacional.

É engraçado como, com todas as substituições feitas pelas pessoas, as vantagens do processo oficial mais amplamente aceito podem ser ignoradas com tanta frequência.

Eu sei que isso pode não ser tão automatizado quanto o desejado, embora a pergunta feita não tenha especificado a não-interatividade. Então, a resposta simples é que sim, existe tal comando. É "fdisk".

Agora, existem algumas outras variações e, assim, a automação é provavelmente possível se você estiver procurando uma solução desse tipo. Você pode querer verificar seus sistemas operacionais para um comando chamado "boot" ou algo parecido; Eu sei que o antigo sistema operacional OS / 2 contém um comando "BOOT" que pode modificar o sistema operacional que foi iniciado. Os comandos precisos que você precisaria executar dependem de qual código de inicialização você realmente usa. Há vários programas de "gerenciador de inicialização" disponíveis e essa funcionalidade agora está incorporada em mais sistemas operacionais. Essa é a boa notícia. A má notícia é que o processo não é tão padronizado, então não posso simplesmente fornecer a você um processo específico que se integre bem com as diferentes variações de todos. Basicamente, você precisa escolher uma solução e usá-la. A principal preocupação é encontrar um processo que pode ser feito a partir de vários sistemas operacionais e que pode ser usado para gravar nas seções do disco que são manipuladas enquanto o sistema é inicializado. Essas seções normalmente não fazem parte de um sistema de arquivos, e os recursos antivírus podem tentar limitar a capacidade de uma pessoa de gravar nessas seções críticas do disco.

Basicamente, o processo envolve a alteração dos bits de sinalização de uma partição ou a alteração do código de inicialização do MBR, ou a alteração do comportamento do código que está na partição que o MBR utiliza para continuar a inicialização. Então, são três abordagens diferentes e cada uma dessas abordagens é realmente usada por algumas das diferentes opções disponíveis.

Uma quarta abordagem pode ser alterar de qual disco o BIOS é inicializado. No entanto, esta abordagem tem sido tradicionalmente muito menos compatível entre diferentes sistemas, de modo que a abordagem é mais uma possibilidade teórica do que algo que é realmente usado. (Embora muitos usuários tenham usado essa abordagem de forma interativa, geralmente pressionando F12 ou algo parecido com um menu de inicialização, às vezes eles simplesmente entram na configuração da BIOS e alteram o disco padrão que será usado nas inicializações subsequentes.)

O método mais comum é provavelmente criar uma imagem de 512 bytes de todo o MBR quando o sistema é inicializado em um sistema operacional e, em seguida, salvar uma imagem de 512 bytes de todo o MBR quando o sistema é inicializado com um sistema operacional diferente. Em seguida, use o software necessário para gravar diretamente esses 512 bytes nos primeiros 512 bytes do disco. (Algo como "dd" faria o truque.) O maior desafio com isso pode ser apenas ter permissão do sistema operacional.

A resposta do AFH parece mostrar como isso pode ser feito a partir do Linux com o grub. O Gerenciador de Inicialização do Windows dos dias do XP / 2003 usaria esse tipo de imagem de setor (que seria referenciada por um arquivo "Boot.ini"), portanto, sair do Windows poderia ser feito alterando o arquivo de texto Boot.ini. (Esse processo pode ter mudado no Vista / 2008, portanto, verifique o novo gerenciador de inicialização antes de tentar isso em sistemas mais novos.) Uma maneira precisa de implementar qualquer uma dessas soluções dependerá de qual sistema operacional você está tentando parar de usar. (Por exemplo: qual versão do Microsoft Windows.)

TOOGAM
fonte
1

Sim, é possível se você usar o Grub para seleção de inicialização: -

  • Inicialize no Linux.
  • Habilitar raiz privilégios de login, ou usando su ou sudo -s.
  • cópia de /boot/grub.cfg para qualquer um /boot/grub.win ou /boot/grub.lin, dependendo do seu padrão.
  • Editar /etc/default/grub mudar GRUB_DEFAULT= para o número do sistema operacional alternativo na lista de inicialização (contando a partir de zero).
  • Corre update-grube copie /boot/grub.cfg para /boot/grub.lin ou /boot/grub.win, como apropriado.
  • Restaurar GRUB_DEFAULT= ao seu valor anterior em /etc/default/grub.
  • Crio bootlin e bootwin contendo:
    cp /boot/grub.lin /boot.cfg ou cp /boot/grub.win /boot.cfg
    shutdown -r now

Agora você pode ligar bootlin ou bootwin do Ubuntu.

No Windows, você precisará fazer o mesmo tipo de coisa:

  • Primeiro instale ext2fsd .
  • Atribuir uma letra de unidade (por exemplo U: ) para a partição do Ubuntu e torná-lo gravável.
  • Agora você pode criar bootlin.cmd e bootwin.cmd contendo o apropriado copy comando para sobrescrever U:\boot\grub.cfg, Seguido por:
    shutdown -r

Se você inicializar com ntldr você pode usar uma técnica semelhante com duas cópias de boot.ini (talvez seja necessário limpar primeiro os atributos Somente leitura, Sistema e Oculto). Pode haver uma técnica semelhante que você pode usar com outros carregadores de inicialização, mas deixo para outros sugerir o que funcionará com eles.

CUIDADO: eu acho ext2fsd funciona bem no modo somente leitura, mas eu nunca usei isso no modo gravável: esteja ciente de que ele pode corromper o seu sistema Ubuntu, então certifique-se de que ele tenha um bom backup até que você o tenha experimentado algumas vezes e tenha certeza de que funciona corretamente. Pode ser mais seguro do Windows editar grub.cfg no local , que não requererá alterações no diretório, mas você precisará de algum tipo de editor in-line do Windows que não use arquivos de trabalho no mesmo sistema de arquivos ou que bloqueie algumas linhas de arquivos. C fazer isso.

AFH
fonte
0

enquanto quando chamamos uma reinicialização de hardware, ela é mais ou menos idêntica a um desligamento e uma inicialização subsequente. Assim, toda a memória RAM é perdida. e quando ligamos, o processo de inicialização é controlado pelo firmware da placa-mãe. se queremos dizer firmware da placa-mãe alguns mensagem , não devemos deixar essa mensagem no carneiro. mas podemos escrever algo (qualquer coisa) no disco (ou em alguma outra mídia permanente, e acredito que o efi fornece um mecanismo para definir variáveis ​​não-voláteis).

além dos mencionados mencionados, os kernels linux kexec funcionalidade para "entregar o controle" a outro sistema sem que o hardware fique inativo. Embora um kernel do Windows não seja diretamente kexecedado, existe uma solução, entrando em um programa loader e deixando o programa loader inicializar o sistema Windows.

把友情留在无盐
fonte