Script para inicialização dupla

Script para inicialização dupla

Estou executando o servidor de arquivos no servidor Ubuntu com inicialização dupla com o Windows 7, agora quero um SCRIPT que possa reiniciar o servidor à meia-noite e iniciar o Windows 7 e coloquei alguns scripts personalizados no meu Windows 7 para que ele possa ser executado à noite a partir de windows 7 e novamente pela manhã quando eu iniciar o servidor ele iniciará automaticamente com o servidor Ubuntu

Por favor, me oriente para executá-lo via script

Desde já, obrigado.

Responder1

Aqui está uma solução com a qual você deve poder trabalhar. Não é bonito e dá um pouco de trabalho e pode ser diferente dependendo da versão do Ubuntu que você está usando. Eu criei isso usando 16.04. Também testei isso para inicializar em um kernel diferente porque não tenho o Windows instalado nesta caixa. Como você tem uma inicialização dupla, devo presumir que você já tem um menu grub exibido e, esperançosamente, uma entrada do Windows no menu principal e não em um submenu, como abordarei mais tarde.

Primeiro você precisa editar seu /etc/default/grubarquivo

Procure a entrada GRUB_DEFAULT="#"que provavelmente é 0. Altere-a para ler GRUB_DEFAULT="saved"e adicione uma linha abaixo dela que dizGRUB_SAVEDEFAULT="true"

Deve ser parecido com o seguinte:

GRUB_DEFAULT="saved"
GRUB_SAVEDEFAULT="true"
...and so on...

Salve o arquivo e execute em um terminalsudo update-grub

Agora vem a parte que estou supondo. Quando você inicializa o computador e está no menu GRUB ... Na minha caixa VM que usei para testar isso mostra as seguintes entradas

Ubuntu
Advanced options for Ubuntu
Memory test (memtest86+)
Memory test (memtest86+,serial console)
Test1

Tive que criar o Test1 entrypara que isso funcionasse, mas tenho a sensação de que você tem um Windows entrylugar nesta lista, mas não sei onde ele se enquadra. Você precisa contar onde esse item de menu se enquadra na lista. Por exemplo, se o seu Windows entryestiver onde o meu Test1 entryestá, então ele estaria na posição 4 (o Ubuntu está na posição 0 e não na 1)

Agora que temos isso precisamos criar um arquivo.. Vou usar startwinneste exemplo abrir startwinno seu editor favorito e digitar o seguinte:

#!/bin/bash
grub-reboot 4 
reboot now

(claro que 4 é qualquer número que você determinou que está Windows entryposicionado) salve o arquivo e abra o terminal. Mude para o diretório onde startwinestá localizado e certifique-se de que esteja definido como executável.

sudo chmod +x startwin

Agora você está pronto para experimentar. Abra o terminal, mude para o diretório em que o arquivo está localizado e, sudo ./startwinclaro, salve todo o seu trabalho e feche tudo que estiver aberto, pois isso reiniciará o computador. Ele deve iniciar no Windows e quando você solicitar que o Windows reinicie, ele deverá voltar ao Ubuntu novamente.

Se funcionou, tudo o que você precisa fazer é configurar um cron job para executá-lo à meia-noite.

Editar /etc/crontabadicione a entrada na parte inferior

00 00 * * * root path/to/startwin/startwin

e faça uma tarefa do Windows para reiniciar quando quiser voltar para o Ubuntu, por volta das 7h.

Agora, às 7h, sua tarefa do Windows será reinicializada automaticamente no Ubuntu e à meia-noite, seu script do Ubuntu será reinicializado automaticamente no Windows.

informação relacionada