Совет :Установите параметр перезагрузки grub -при выключенном компьютере

Использование того факта, что readв оболочке интерпретирует обратную косую черту при использовании без-r:

$ while IFS= read line; do printf '%s\n' "$line"; done <file
foo bar bash baz
dude happy

Обратите внимание, что это также интерпретирует любой другой обратный слэш в данных.

0
26.07.2020, 05:01
1 ответ

Проблема заключается в том, что при загрузке из сети системная прошивка (либо BIOS, либо UEFI )предоставляет сетевые драйверы. При загрузке с локального диска прошивка -, предоставленная сетевыми драйверами, может быть не активирована, поэтому GRUB должен будет предоставить свой собственный сетевой стек -, если только он не знает, как активировать прошивку (, может быть, с UEFI? ). Так использует ли система Marcus BIOS или UEFI, и какой тип сетевого адаптера она использует?

Использование функции Vendor Keys в GRUB не похоже на -пусковое устройство :оно основано на чтении определенного байта в настройках BIOS NVRAM, чтобы решить, была ли использована специальная кнопка. Таким образом, вам нужно будет каким-то образом изменить это значение между включением системы и доступом к GRUB. Это подразумевает использование собственного расширения BIOS, пользовательского загрузчика и/или какого-либо пользовательского оборудования.


Самый простой способ реализовать это, вероятно, состоял бы в том, чтобы настроить систему Marcus на попытку загрузки из сети с локальной загрузкой в ​​качестве второй цели загрузки в случае сбоя загрузки по сети. Вам потребуется DHCP-сервер, который может предоставить необходимые параметры DHCP для сетевой загрузки PXE, и TFTP-сервер, который может предоставить загрузчик PXE и ​​его файл конфигурации для системы Marcus. Pi мог довольно легко делать обе эти вещи.

Вы можете написать два или три файла конфигурации для загрузчика PXE, работающего на Marcus :один для безусловной загрузки Linux с локального диска, другой для безусловной загрузки Windows таким же образом и, возможно, третий для представления загрузочного меню,для ситуаций, когда приложение не выполняет команду запуска -up (, чтобы исключить необходимость ожидания истечения времени попытки сетевой загрузки при загрузке системы вручную ).

Затем ваше приложение Alexa просто изменит, какой из файлов конфигурации предлагается TFTP-сервером, прежде чем отправить команду пробуждения -в систему Marcus :в соответствии с используемой голосовой командой, оно поместит либо безусловную -конфигурацию загрузки Windows или безусловную -Linux для загрузки на TFTP-сервер, затем активируйте команду пробуждения -или перезагрузки для системы Marcus. После ожидания достаточного времени для успешной попытки загрузки или истечения времени ожидания (или после просмотра сообщения журнала с сервера TFTP, указывающего, что файл конфигурации был прочитан, если вы хотите быть причудливым ), он восстановит загрузку. -настройка меню на TFTP-сервер.

1
18.03.2021, 23:17

Теги

Похожие вопросы