como reiniciar rapidamente do OSX para o Windows e voltar

31

Do Windows de volta ao OSX é bastante fácil. O que eu gostaria é de menos algumas etapas para ir do OSX para o Windows. Atualmente, inicio as preferências do sistema -> disco de inicialização -, em seguida, selecione a partição do bootcamp e pressione reiniciar.

Sendo completamente novo no OSX, parece-me que uma ação de um clique no dock deve ser possível com algum tipo de script de automação. Ainda não sei nada sobre o OSX (ainda) e como isso funciona. Primeiro, isso é possível, e segundo, forneça alguns links de tutoriais para esse sistema de automação.

Ralph Shillington
fonte
1
Qual era o caminho "bastante fácil" das janelas? Apenas abrindo a bandeja do bootcamp?
Noelicus
@noelicus Sim, clique com o botão direito do mouse no ícone do bootcamp e selecione Reiniciar no OS X. Pode ser interessante saber que, desde este post original, eu me mudei do bootcamp para os paralelos (que no final de 2013 iMac (32 GB de ram, fusão de 3 TB, etc.) ..) é realmente um ambiente muito melhor agora apenas um furto de volta dois dedos e para trás entre os dois sistemas operacionais..
Ralph Shillington
Parece que não há como fazer uma "inicialização uma vez no OS X". Esse menu de bootcamp no Windows parece alterar a inicialização permanente. Em outra nota, eu instalei paralelos também. Muito legal, mas mais lento que uma bota nativa!
noelicus 28/01

Respostas:

19

Nota: Isso não funciona em sistemas com o System Integrity Protection ativado

Escreva um script de shell que faça isso

#!/bin/sh
# tell OSX to change the boot disk 
# nextonly just for the next time - without the default would be Windows
/usr/sbin/bless -mount /Volumes/BOOTCAMP --setBoot  --nextonly  
# reboot
/sbin/shutdown -r now

Isso pode ser chamado a partir de uma janela do terminal

sudo bootcamp

O uso do Automator para chamar isso por meio de um script apple e salvar como um aplicativo

on run {input, parameters}

    do shell script "/Users/mark/bin/bootcamp" with administrator privileges

    return input
end run
user151019
fonte
5
Lembre-se de que, quando você clica nesse script, não terá a chance de salvar qualquer trabalho não salvo de qualquer aplicativo. O sistema reinicializará sua máquina a qualquer custo!
nuc
2
Não deveria ser --mount / Volumes / BOOTCAMP --setBoot --nextonly (observe traços duplos antes dos parâmetros)?
Aldekein
1
Alguém pode verificar se isso funciona no OSX 10.10 ou superior? Mesmo com os traços duplos, não funciona para mim (apenas reinicia no OSX). Eu verifiquei que o comando não gera nenhum erro executando-o diretamente na linha de comando e verifiquei que / Volumes / BOOTCAMP existe.
Davertron
1
Também não consigo fazê-lo funcionar no macOS 10.12.2. Quando invoco sudo bless --mount /Volumes/BOOTCAMP --setBoot --nextonly, recebo o erro Could not set boot device property: 0xe00002bc. Parece que o problema é SIP .
Jason R. Coombs
2
Isso não funciona mais devido à proteção de integridade do sistema. Veja esta e a resposta de @ celestialroad a esta pergunta.
21717 Timmm
14

Espere durante a inicialização, você receberá uma solicitação para escolher de qual SO / unidade deseja inicializar!

nuc
fonte
13
Não foi isso que ele perguntou, definitivamente não é "rápido", nem "automatizado" nem "com um clique".
o0 '.
7
@looris às vezes não há necessidade de re-inventar a roda ..
nuc
1
@nuc Com 38K visualizações, eu diria que existe. Lohoris tem o direito disso.
precisa saber é o seguinte
A pergunta era "O que eu gostaria é de menos algumas etapas para passar do OSX para o Windows". Isso resolve o problema facilmente (exatamente o que eu estava procurando quando encontrei essa pergunta), não requer novo software ou script.
crimbo
14

Outra maneira de passar do OS X para o Windows rapidamente é usar o Bootchamp , que adiciona um item da barra de menus como este:

insira a descrição da imagem aqui

Para minhas necessidades de inicialização do Windows, o Bootchamp funcionou bem.

(Aprendi sobre isso com uma pergunta semelhante sobre o Superusuário que fiz uma vez.)

Jonik
fonte
O BootChamp não funciona com determinadas configurações e leva mais alguns segundos para inicializar o computador.
Aeroxy
3
Com El Capitan, BootChamp não funciona mais :( - kainjow.tumblr.com/post/128933657269/bootchamp-and-el-capitan
wilsjd
Eu instalei isso e 'reiniciar no Windows' está acinzentado?
Niico 7/10
6

Aqui está um fluxo de trabalho do Automator que escrevi para realizar a reinicialização no Bootcamp automaticamente:

https://github.com/ryanmcginnis/Restart-to-Bootcamp

No El Capitan, não é mais possível definir programaticamente o disco de inicialização, mesmo com o SIP desativado.

estrada celestial
fonte
1
Esta é uma solução agradável e simples. Funciona bem. Obrigado!
Staysee
2

Parece que este script do SuperUser lida com o fechamento de janelas abertas (e com a interrupção da reinicialização programada se o usuário pressionar 'cancelar'):

do shell script "hdiutil unmount /Volumes/<Windows_Partition> -quiet"
do shell script "bless -device /dev/disk0s3 -legacy -setBoot -nextonly" with administrator privileges
tell application "Finder" to restart
akauppi
fonte
2

Eu realmente gosto de reflexo .

O rEFIt é um menu de inicialização e um kit de ferramentas de manutenção para máquinas baseadas em EFI, como os Macs Intel. Você pode usá-lo para inicializar vários sistemas operacionais facilmente, incluindo configurações de inicialização tripla com o Boot Camp. Ele também fornece uma maneira fácil de acessar e explorar o ambiente de pré-inicialização da EFI.

O OP parece estar interessado em um comando apenas OSX para Windows, então acho que não é exatamente isso que ele deseja. Ainda assim, acho muito mais fácil trabalhar com o rEFIt: se eu quiser ir de um sistema operacional para outro, só preciso reiniciar e escolher o sistema operacional desejado.

E se você precisar trabalhar com 3 (ou mais) sistemas operacionais, verá que o rEFIT é uma opção muito melhor ...

Ele também permite que você inicialize a partir de um disco rígido externo ou de um pen drive, o que é um bônus muito bom.

Editar Na página rEFIt:

29-03-2013: Como você deve ter notado, o rEFIt não é mais mantido ativamente. Confira o rEFInd , um fork que é mantido e está em desenvolvimento ativo.

rsenna
fonte
0

Eu queria usar o AppleScript em vez do BootChamp, pois tive um problema com um webapp sempre em execução quando ele voltou ao estado ao retornar ao OS X em vez de iniciar regularmente. Tentar abençoar o volume de um AppleScript não funcionou no meu iMac com uma unidade de fusão de 3 TB, portanto, a reinicialização após a benção levaria a uma tela de erro "NENHUM DISPOSITIVO BOOTABLE - INSIRA O DISCO DE BOOT E PRESSIONE QUALQUER CHAVE".

O que eu tive que fazer foi abençoar a identificação do disco EFI do HDD com a opção -device , montar o volume BootCamp com a opção -mount e pular a opção -legacy . Para mim, o ID do disco da partição EFI do disco rígido era disk1s1, mas você pode verificar o seu executando a lista diskutil no terminal e procurar o dispositivo EFI no HDD (não no SSD).

Eu também queria fazer uma reinicialização "limpa" para que meus aplicativos não continuassem ao retornar ao OS X, então criei um AppleScript que encerra aplicativos específicos antes de continuar com a benção e reiniciar:

try
    set apps to {"Safari", "Google Chrome", "Mail", "Twitter"}
    repeat with thisApp in apps
        tell application thisApp to quit
    end repeat
end try

delay 2

do shell script "bless -device /dev/disk1s1 -mount /Volumes/BOOTCAMP -setBoot -nextonly" password "YourPassWordHere" with administrator privileges
tell application "Finder" to restart

Você pode pular a parte sobre a senha se não desejar armazenar sua senha de administrador no script em texto sem formatação.

Se você colocar o script ou um alias dele em ~ / Library / Scripts e ativar o Menu Script a partir da preferência do Editor de scripts, você terá uma maneira fácil de executá-lo, como no BootChamp.

Jouni
fonte