comment redémarrer rapidement d'OSX vers Windows et inversement

31

De Windows à OSX est assez facile. Ce que j'aimerais, c'est quelques étapes de moins pour passer d'OSX à Windows. Actuellement, je lance les préférences système -> disque de démarrage - puis sélectionne la partition bootcamp et appuie sur redémarrer.

Étant complètement nouveau sur OSX, il me semble qu'une action en un clic sur le dock devrait être possible avec une sorte de script d'automatisation. Cependant, je ne connais pas (encore) OSX et comment cela fonctionne. Premièrement, une telle chose est-elle possible, et deuxièmement, veuillez fournir quelques liens de tutoriel pour un tel système d'automatisation.

Ralph Shillington
la source
1
Quel était le moyen "assez facile" de Windows? Vous venez d'ouvrir le plateau du bootcamp?
noelicus
@noelicus Oui, faites un clic droit sur l'icône du bootcamp et choisissez Redémarrer sous OS X. Il peut être intéressant de savoir que depuis ce post original, je suis passé du bootcamp aux parallèles (qui sur un iMac fin 2013 (32 Go de RAM, fusion de 3 To, etc.) ..) c'est vraiment un environnement bien meilleur. Maintenant, juste un mouvement de va-et-vient entre les deux systèmes d'exploitation
Ralph Shillington
Il semble qu'il n'y ait aucun moyen de faire un "démarrage une fois sur OS X". Ce menu de bootcamp dans Windows semble changer le démarrage permanent. Sur une autre note, j'ai également installé des parallèles. Très cool, mais plus lent qu'une botte native!
noelicus

Réponses:

19

Remarque: cela ne fonctionne pas sur les systèmes avec la protection de l'intégrité du système activée

Écrivez un script shell qui fait cela

#!/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

Cela peut être appelé à partir d'une fenêtre de terminal

sudo bootcamp

Utilisez Automator pour l'appeler via un script Apple et l'enregistrer en tant qu'application

on run {input, parameters}

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

    return input
end run
user151019
la source
5
Gardez à l'esprit que lorsque vous cliquez sur ce script, vous n'aurez pas la possibilité d'enregistrer les travaux non enregistrés à partir de n'importe quelle application. Le système redémarrera votre machine quel qu'en soit le coût!
NUC
2
Cela ne devrait-il pas être --mount / Volumes / BOOTCAMP --setBoot --extonly (notez les doubles tirets avant les paramètres)?
Aldekein
1
Quelqu'un peut-il vérifier que cela fonctionne sur OSX 10.10 ou supérieur? Même avec les doubles tirets, cela ne fonctionne pas pour moi (redémarre simplement dans OSX). J'ai vérifié que la commande ne génère aucune erreur en l'exécutant directement sur la ligne de commande et vérifié que / Volumes / BOOTCAMP existe.
davertron
1
Je ne parviens pas non plus à le faire fonctionner sur macOS 10.12.2. Lorsque j'invoque sudo bless --mount /Volumes/BOOTCAMP --setBoot --nextonly, j'obtiens l'erreur Could not set boot device property: 0xe00002bc. Il semble que le problème soit SIP .
Jason R. Coombs du
2
Cela ne fonctionne plus en raison de la protection de l'intégrité du système. Voir ceci et la réponse de @ celestialroad à cette question.
Timmmm
14

Maintenez pendant le démarrage, vous obtiendrez une invite pour choisir à partir de quel OS / lecteur vous voulez démarrer!

nuc
la source
13
Ce n'est pas ce qu'il a demandé, ce n'est certainement ni "rapide" ni "automatisé" ni "en un clic".
o0 '.
7
@looris parfois, il n'est pas nécessaire de réinventer la roue ..
nuc
1
@nuc Avec 38K vues, je dirais que oui. Lohoris en a le droit.
bpcookson
La question était "Ce que j'aimerais, c'est quelques étapes de moins pour passer d'OSX à Windows." Cela résout le problème facilement (exactement ce que je cherchais lorsque j'ai trouvé cette question), ne nécessite pas de nouveau logiciel ou de script.
crimbo du
14

Une autre façon de passer rapidement d'OS X à Windows est d'utiliser Bootchamp , qui ajoute un élément de la barre de menus comme celui-ci:

entrez la description de l'image ici

Pour mes besoins de démarrage Windows, Bootchamp a bien fonctionné.

(Je l'ai appris à partir d'une question similaire sur Super User que j'ai posée une fois.)

Jonik
la source
BootChamp ne fonctionne pas avec certaines configurations et cela prendra des secondes supplémentaires lors du démarrage de l'ordinateur.
aeroxy
3
Avec El Capitan, BootChamp ne fonctionne plus :( - kainjow.tumblr.com/post/128933657269/bootchamp-and-el-capitan
wilsjd
J'ai installé cela et «redémarrer dans Windows» est grisé?
niico
6

Voici un workflow Automator que j'ai écrit pour effectuer automatiquement le redémarrage de Bootcamp:

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

Depuis El Capitan, il n'est plus possible de définir par programme le disque de démarrage, même avec SIP désactivé.

celestialroad
la source
1
Ceci est une solution simple et agréable. Fonctionne très bien. Merci!
Staysee
2

Il semble que ce script de SuperUser gère la fermeture des fenêtres ouvertes (et l'arrêt du redémarrage planifié si l'utilisateur appuie sur 'annuler'):

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
la source
2

J'aime vraiment rEFIt .

rEFIt est un menu de démarrage et une boîte à outils de maintenance pour les machines basées sur EFI comme les Mac Intel. Vous pouvez l'utiliser pour démarrer facilement plusieurs systèmes d'exploitation, y compris les configurations à triple démarrage avec Boot Camp. Il fournit également un moyen facile d'entrer et d'explorer l'environnement de pré-démarrage EFI.

L'OP semble intéressé par une commande OSX vers Windows uniquement, donc je suppose que ce n'est pas exactement ce qu'il veut. Pourtant, je trouve rEFIt beaucoup plus facile à travailler: si je veux passer d'un OS à un autre, il me suffit de redémarrer puis de choisir l'OS que je veux.

Et si jamais vous avez besoin de travailler avec 3 (ou plus) OS, vous verrez que rEFIT est une bien meilleure option ...

Il vous permet également de démarrer à partir d'un disque dur externe ou d'une clé USB, ce qui est un très bon bonus.

Modifier à partir de la page rEFIt:

2013-03-29: Comme vous l'avez peut-être remarqué, rEFIt n'est plus activement maintenu. Veuillez consulter rEFInd , une fourchette maintenue et en cours de développement actif.

rsenna
la source
0

Je voulais utiliser AppleScript au lieu de BootChamp car j'avais des problèmes avec une webapp toujours en cours d'exécution lorsqu'elle reprenait son état lors du retour à OS X au lieu de se lancer régulièrement. Essayer de bénir le volume d'un AppleScript ne fonctionnait pas sur mon iMac avec un lecteur de fusion de 3 To, donc le redémarrage après la bénédiction conduirait à un écran d'erreur "AUCUN PÉRIPHÉRIQUE BOOTABLE - INSÉRER LE DISQUE BOOT ET APPUYER SUR TOUTE TOUCHE".

Ce que je devais faire était bénissent l'ID du disque EFI disque dur avec le -device commutateur, monter le volume BootCamp avec le -mount commutateur et sauter le -legacy commutateur. Pour moi, l'ID du disque de partition EFI du disque dur était disk1s1, mais vous pouvez vérifier le vôtre en exécutant la liste diskutil dans le terminal et recherchez le périphérique EFI depuis le disque dur (pas le SSD).

Je voulais également faire un redémarrage "propre" afin que mes applications ne reprennent pas lors du retour à OS X, j'ai donc créé un AppleScript qui quitte des applications spécifiques avant de continuer à bénir et à redémarrer:

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

Vous pouvez ignorer la partie concernant le mot de passe si vous ne souhaitez pas stocker votre mot de passe administrateur dans le script en texte clair.

Si vous mettez le script ou un alias de celui-ci dans ~ / Library / Scripts et activez le menu Script à partir des préférences de Script Editor, vous obtenez un moyen facile de l'exécuter comme avec BootChamp.

Jouni
la source