Просто задумываясь здесь и надеясь на второе мнение.
Я просто получил RPi3, что я люблю. Я рассматривал его как удаленный доступ к WOL-серверу. ПК, к которому я пытаюсь добраться, имеет двойную загрузку с Windows 10 и Ubuntu 17.10, в которых я настроил доступ к VNC для каждого. Я подумал, что даже если я настрою сервер WOL и отправлю волшебный пакет, я все равно не смогу выбрать, какая ОС будет загружена (потому что AFAIK волшебный пакет не способен передавать эту информацию) .
Итак, вариант 1) Запишите сценарий python, который может изменить файл конфигурации grub, чтобы указать предпочтительный вариант загрузки по умолчанию. Предполагая, что диск / файловая система Ubuntu доступен из Windows, сценарий python будет написан соответствующим образом. С другой стороны, в Ubuntu можно было бы запустить другой скрипт python (чтобы было проще, чем просто редактировать файл grub conf).
Вариант 2) Не уверен, что это возможно, но что, если я размещал символический (через некоторый промежуточный облачный сервис) grub conf файл на RPi? Таким образом, мне не придется беспокоиться об изменении файла conf grub из Windows или Ubuntu, я мог бы просто сделать это на RPi. Я не уверен в том, что изменения, внесенные в RPi, будут доступны для grub по отношению к последовательности загрузки.
Буду признателен за более эффективный способ решения вышеизложенного, проблемы / осуществимость в отношении вышеизложенного, разные идеи и т. д. Спасибо!
То, как я решил подобную ситуацию, было дефолтом grub для загрузки с Ubuntu. Затем добавьте псевдоним в конце файла /etc/bash.bashrc, который перезагрузится в раздел Windows (номер 4 для меня).
alias windows="sudo grub-reboot 4 && sudo reboot"
Проблема в том, что если вы находитесь в Windows и вы снова перезагрузитесь в Windows, сначала он подойдет к Ubuntu, и вам придется ssh / VNC и перезагрузиться в Windows вручную с помощью псевдонима windows. Это не было проблемой для меня до сих пор.
Чтобы перезагрузить Windows из Windows или Ubuntu, вы можете создать скрипт, который будет модифицировать файл grub в / boot. См. Есть ли способ, чтобы grub автоматически перезагрузился в Windows из Windows?
Мне нужно будет больше поработать над этим, но я подумал, что это хорошая находка: https://github.com/Fmstrat/diy-ipmi
Это настройка DIY IP KVM: веб-сайт - доступная система IPMI / IP KVM, обеспечивающая полный контроль клавиатуры, просмотр монитора и возможность перезагрузки компьютеров со стандартными материнскими платами удаленно, как если бы вы сидели перед ними с клавиатурой и монитором. 
Очевидный конфликт: Требуется покупка (требуется менее 120 долларов США) и установка постороннего оборудования
Pro: Казалось бы, поведение установки похоже на VNC-сервер, но из любой точки в последовательности загрузки или после этого. Таким образом, меню grub (или любой загрузчик) и любая ОС будут доступны удаленно.
То, как я решил подобную ситуацию, было дефолтом grub для загрузки с Ubuntu. Затем добавьте псевдоним в конце файла /etc/bash.bashrc, который перезагрузится в раздел Windows (номер 4 для меня).
alias windows="sudo grub-reboot 4 && sudo reboot"
Проблема в том, что если вы находитесь в Windows и вы снова перезагрузитесь в Windows, сначала он подойдет к Ubuntu, и вам придется ssh / VNC и перезагрузиться в Windows вручную с помощью псевдонима windows. Это не было проблемой для меня до сих пор.
Чтобы перезагрузить Windows из Windows или Ubuntu, вы можете создать скрипт, который будет модифицировать файл grub в / boot. См. Есть ли способ, чтобы grub автоматически перезагрузился в Windows из Windows?
Мне нужно будет больше поработать над этим, но я подумал, что это хорошая находка: https://github.com/Fmstrat/diy-ipmi
Это настройка DIY IP KVM: веб-сайт - доступная система IPMI / IP KVM, обеспечивающая полный контроль клавиатуры, просмотр монитора и возможность перезагрузки компьютеров со стандартными материнскими платами удаленно, как если бы вы сидели перед ними с клавиатурой и монитором. 
Очевидный конфликт: Требуется покупка (требуется менее 120 долларов США) и установка постороннего оборудования
Pro: Казалось бы, поведение установки похоже на VNC-сервер, но из любой точки в последовательности загрузки или после этого. Таким образом, меню grub (или любой загрузчик) и любая ОС будут доступны удаленно.