Когда я собрал себе снова стационарный компьютер летом 2019, было понятно, что будет стоять 2 системы Windows 10 и какой-либо дистрибутив Linux. Но главная проблема, если в линуксе перезагрузиться в windows труда не составляет для этого нужна будет установленная программа efibootmgr
далее смотрим на вывод команды
sudo efibootmgr
Вывод будет примерно таким:
BootCurrent: 0002
Timeout: 1 seconds
BootOrder: 0002,0000,0003
Boot0000* Windows Boot Manager
Boot0002* UEFI OS
Boot0003* Samsung SSD 970 PRO 512GB
А далее легко перезагружаемся одной строкой в Windows, где 0000
это номер Windows Boot Manager
из команды выше
sudo efibootmgr -n 0000 && sync && reboot
То же самое, но в Windows.
Казалось бы - Windows богата на разные программы, но для управления загрузкой UEFI или тяжёлые и платные монстры или только редакторы для Wndows опций, что явно не достаточно. И я нашел, как с помощью bcdedit
мы можем так же перезагружаться в Linux парой команд:
bcdedit /enum firmware
- получим так же список всех возможных вариантов загрузкиbcdedit.exe /set {fwbootmgr} bootsequence {UUID} /addfirst
- Изменить порядок загрузки при следующем запуске, гдeUUID
это данные из первой команды для варианта загрузки Linuxshutdown /r /t 0
перезагрузиться сейчас
Команды это хорошо, но мы же в Windows и возможно хотим сразу перегрузиться в установочную флешку. Так что я решил написать обертку над этими командами на C# код проекта можно посмотреть тут:
Вы так же можете загрузить его здесь или с GitHub Release