Mam standardowy system podwójnego rozruchu: Ubuntu i Windows. Grub jest domyślnie skonfigurowany do uruchamiania systemu Windows.
Czy istnieje sposób utworzenia linku w systemie Windows, który:
- uruchom ponownie system Windows
- uruchom system Ubuntu
Mam standardowy system podwójnego rozruchu: Ubuntu i Windows. Grub jest domyślnie skonfigurowany do uruchamiania systemu Windows.
Czy istnieje sposób utworzenia linku w systemie Windows, który:
Odpowiedzi:
Nie musisz modyfikować, /boot/grub/grub.cfg
jak sugerował Michał Hagara. Może to spowodować uszkodzenie Ubuntu, jeśli zainstalujesz nowe jądro i nie zaktualizujesz e:\home\user\Grubshift\ubuntudefault\grub.cfg
.
Wszystko, co musisz zrobić, to utworzyć / skopiować plik /boot/grub/grubenv
o następującej treści
# GRUB Environment Block
next_entry=2
###########################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################
Gdzie next_entry
jest wiersz następnego wpisu menu GRUB, który powinien rozpocząć się następnym razem (od zera). Więc next_entry=2
byłoby 3th linia.
Grub automatycznie usunie wartość po uruchomieniu, więc następnym razem uruchomisz ponownie domyślny system operacyjny.
Tak to grub-reboot
działa.
Oto, co mam na myśli:
Z tym podejściem mogę się całkowicie mylić, ale nie rozumiem, dlaczego to nie powinno działać.
EDYTOWAĆ:
Jest też: http://www.paragon-drivers.com/extfs-windows/, których nigdy nie próbowałem.
1. Skrót, aby ponownie uruchomić system Windows i uruchomić system Ubuntu
OK, wadą tego jest to, że będziemy musieli zmodyfikować grub.cfg (/boot/grub/grub.cfg) bezpośrednio (odradza się - https://askubuntu.com/a/437341/402801), ponieważ istnieje nie ma sposobu na uruchomienie update-grub
z systemu Windows ... jeśli możesz żyć z tym czytać dalej.
/home/user/Grubshift
z 3 podkatalogami: kopia zapasowa (do tworzenia kopii zapasowej aktualnego /boot/grub/grub.cfg), ubuntudefault (do przechowywania grub.cfg z Ubuntu jako domyślną), windowsdefault (masz pomysł)Po instalacji Ubuntu jest ustawiony jako domyślny, więc skopiuj go grub.cfg
do żądanego katalogu. Mam konfigurację „Windows jako domyślną” poprzez modyfikację GRUB-a za pomocą grub-customizera (moim zdaniem jest to bezpieczniejsze), po tym skopiuj Windows grub.cfg
do pożądanego katalogu
Następnie otwórz notatnik i wstaw:
copy e:\boot\grub\grub.cfg /y e:\home\user\Grubshift\backup
copy e:\home\user\Grubshift\ubuntudefault\grub.cfg /y e:\boot\grub
shutdown /r /t 0
/y
- opcja copy
polecenia, pomija monit o potwierdzenie zamiaru zastąpienia istniejącego pliku docelowego
/r /t 0
- opcje zamknięcia, 1. oznacza ponowne uruchomienie, 2. oznacza natychmiast, bez brzydkich wiadomości
Zmodyfikuj odpowiednio ścieżkę !!!
*.bat
shift.bat
, kliknij prawym przyciskiem myszy na shorctur -> właściwości -> karta skrótów -> Uruchom: zminimalizowany (który pozbywa się wyskakiwania CMD)Próbowałem tego co najmniej 8 razy, ustawiając system Windows jako domyślny za pomocą grub-customizer
...
Nie mówię, że to bezpieczne, ale HEJ !, mamy problem z bootloaderem ... to nie jest bezpieczne
Kiedy w pełni działa, możemy całkowicie pozbyć się menu GRUB, ponieważ zawsze uruchamia się ono we właściwym systemie operacyjnym ...
Podsumowując: System resetuje się domyślnie do ostatniego aktywnego, restartuje z Windowsa do Linuksa i odwrotnie za pomocą prostego skryptu.
Pod linuksem:
GRUB_DEFAULT=saved
i GRUB_SAVEDEFAULT=true
w / etc / default / grubsudo update-grub
patrz http://www.paragon-drivers.com/extfs-windows/
Jeśli / boot / grub / grubenv nie istnieje, utwórz go, używając odpowiedzi od Germara
@echo off
"C:\Program Files (x86)\Paragon Software\ExtFS for Windows\extmounter" /mount disk1 L:
:CheckForFile
IF EXIST "L:\boot\grub\grubenv" GOTO FoundIt
GOTO CheckForFile
:FoundIt
sed -i -e '/next_entry/c\next_entry=0' L:/boot/grub/grubenv
"C:\Program Files (x86)\Paragon Software\ExtFS for Windows\extmounter" /umount disk1 L:
echo press enter to reboot
pause
shutdown -r -t 00
/mount disk1 L:
coś specyficznego dla twojego systemu. Dostępne dyski można znaleźć za pomocą extmounter /list
polecenia i litery dysku. Ponadto L:
nie można go już wziąć.reboot-linux.bat
run as administrator
aby go wykonaćsudo sed -i -e '/next_entry/c\next_entry=2' /boot/grub/grubenv
sudo reboot
next_entry=2
dowolny wpis w systemie Windows.~/reboot_windows
i oznacz jako wykonywalny:chmod +x ~/reboot_windows