как быстро перезагрузиться с OSX на Windows и обратно

31

С Windows вернуться к OSX довольно просто. То, что я хотел бы, это несколько меньше шагов, чтобы перейти от OSX к Windows. В настоящее время я запускаю системные настройки -> загрузочный диск - затем выбираю раздел bootcamp и нажимаю перезагрузку.

Будучи совершенно новым для OSX, мне кажется, что одним щелчком мыши на док-станции должно быть возможно с какими-то сценариями автоматизации. Однако я ничего не знаю о OSX (пока) и о том, как это работает. Во-первых, возможна ли такая вещь, а во-вторых, пожалуйста, предоставьте некоторые учебные ссылки для такой системы автоматизации.

Ральф Шиллингтон
источник
1
Какой был «довольно легкий» путь из окон? Просто открываешь лоток буткемпа?
noelicus
@noelicus Да, щелкните правой кнопкой мыши значок bootcamp и выберите Reboot в OS X. Возможно, будет интересно узнать, что с этого оригинального поста я перешел от bootcamp к параллелям (которые в конце 2013 года iMac (32 ГБ оперативной памяти, 3 ТБ Fusion и т. д.) ...) это действительно намного лучшая среда. Теперь одним движением пальца вперед и назад между двумя операционными системами
Ральф Шиллингтон
Кажется, что нет способа сделать «загрузку один раз на OS X». Это меню bootcamp в Windows, кажется, меняет постоянный запуск. С другой стороны, я также установил параллели. Очень круто, но медленнее, чем родная загрузка!
noelicus

Ответы:

19

Примечание. Это не работает в системах с включенной защитой целостности системы.

Напишите сценарий оболочки, который делает это

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

Это можно вызвать из окна терминала

sudo bootcamp

Используйте Automator для вызова этого через скрипт Apple и сохранения в качестве приложения

on run {input, parameters}

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

    return input
end run
user151019
источник
5
Просто помните, что при нажатии на этот скрипт у вас не будет возможности сохранить любую несохраненную работу из любого приложения. Система перезагрузит вашу машину любой ценой!
nuc
2
Разве это не должно быть --mount / Volumes / BOOTCAMP --setBoot --nextonly (обратите внимание на двойные черточки перед параметрами)?
Aldekein
1
Может кто-нибудь проверить, что это работает на OSX 10.10 или выше? Даже с двойными черточками это не работает для меня (просто перезагружается в OSX). Я проверил, что команда не выдает никаких ошибок, запустив ее непосредственно в командной строке, и убедился, что / Volumes / BOOTCAMP существует.
Давертрон
1
Я также не могу заставить его работать на MacOS 10.12.2. Когда я вызываю sudo bless --mount /Volumes/BOOTCAMP --setBoot --nextonly, я получаю ошибку Could not set boot device property: 0xe00002bc. Кажется, проблема в SIP .
Джейсон Р. Кумбс
2
Это больше не работает из-за защиты целостности системы. Посмотрите это и ответ @ celestialroad на этот вопрос.
Тимммм
14

Удерживайте во время загрузки, вы получите подсказку, чтобы выбрать, с какой ОС / диска вы хотите загрузиться!

пис
источник
13
Это не то, что он спросил, это определенно не «быстро», ни «автоматизировано», ни «в один клик».
о0 '.
7
@looris иногда нет необходимости заново изобретать колесо ..
Nuc
1
@nuc С 38K просмотров, я бы сказал, что есть. Лохорис имеет на это право.
bpcookson
Вопрос был в том, что я хотел бы сделать несколько шагов от OSX к Windows. Это решает проблему легко (именно то, что я искал, когда я нашел этот вопрос), не требует нового программного обеспечения или сценариев.
Crimbo
14

Другой способ быстро перейти с OS X на Windows - это использовать Bootchamp , который добавляет элемент строки меню, например:

введите описание изображения здесь

Для моих нужд по загрузке Windows Bootchamp работал хорошо.

(Я узнал об этом из аналогичного вопроса о Super User, который я однажды задал.)

Jonik
источник
BootChamp не работает с определенной настройкой, и это займет дополнительные секунды при загрузке компьютера.
аэрокси
3
С El Capitan BootChamp больше не работает :( - kainjow.tumblr.com/post/128933657269/bootchamp-and-el-capitan
wilsjd
Я установил это и «перезагрузка в Windows» неактивна?
niico
6

Вот рабочий процесс Automator, который я написал для автоматической перезагрузки Bootcamp:

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

Начиная с El Capitan, больше невозможно программно установить загрузочный диск, даже если SIP отключен.

celestialroad
источник
1
Это хорошее и простое решение. Работает отлично. Благодарность!
Staysee
2

Кажется, что этот скрипт из SuperUser обрабатывает закрытие открытых окон (и остановку запланированного перезапуска, если пользователь нажимает «отмена»):

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
источник
2

Я действительно люблю REFIt .

rEFIt - это загрузочное меню и инструментарий обслуживания для машин на базе EFI, таких как Intel Mac. Вы можете легко использовать его для загрузки нескольких операционных систем, включая тройную загрузку с Boot Camp. Он также предоставляет простой способ войти и изучить среду предзагрузки EFI.

Похоже, OP заинтересован только в команде OSX-to-Windows, так что я думаю, это не совсем то, что он хочет. Тем не менее, я считаю, что с REFI намного проще работать: если я хочу перейти с одной ОС на другую, мне просто нужно перезагрузить компьютер и затем выбрать ОС, которую я хочу.

И если вам когда-нибудь понадобится работать с 3 (или более) ОС, вы увидите, что REFIT - гораздо лучший вариант ...

Это также позволяет вам загружаться с внешнего жесткого диска или пера, что является очень приятным бонусом.

Редактировать со следующей страницы:

2013-03-29: Как вы уже могли заметить, REFIt больше не поддерживается. Пожалуйста, проверьте REFInd , форк, который находится в процессе обслуживания и находится в активной разработке.

rsenna
источник
0

Я хотел использовать AppleScript вместо BootChamp, поскольку у меня были проблемы с постоянно работающим веб-приложением, когда оно возобновляло состояние при возврате к OS X вместо регулярного запуска. Попытка благословить том из AppleScript не сработала на моем iMac с фьюжн-накопителем объемом 3 ТБ, поэтому перезагрузка после благословения может привести к появлению экрана ошибки «НЕТ ЗАГРУЗКА УСТРОЙСТВА - ВСТАВЬТЕ ДИСК ЗАГРУЗКИ И НАЖМИТЕ ЛЮБОЙ КЛЮЧ».

То , что я должен был сделать благословить EFI диска идентификатор жесткого диска с -device переключателем, установите громкость BootCamp с -mount переключателем и пропустить -legacy переключатель. Для меня идентификатор диска раздела EFI жесткого диска был disk1s1, но вы можете проверить свой, запустив в терминале список diskutil и найти устройство EFI с жесткого диска (не SSD).

Я также хотел сделать «чистый» перезапуск, чтобы мои приложения не возобновляли работу при возврате к OS X, поэтому я создал AppleScript, который закрывает определенные приложения, прежде чем перейти к благословению и перезагрузке:

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

Вы можете пропустить часть о пароле, если вы не хотите хранить пароль администратора в сценарии в виде открытого текста.

Если вы поместите сценарий или его псевдоним в ~ / Library / Scripts и включите меню сценариев в настройках редактора сценариев, вы получите простой способ запустить его, как с BootChamp.

Jouni
источник