Home › Fora › Forum wsparcia › Podstawy › [Solved] GRUB reinstalacja – zmiana kolejności po instalacji drugiego Manjaro
- This topic has 16 odpowiedzi, 5 uczestników, and was last updated 7 years, 2 months temu by azja.
- AutorPosty
- 24 września 2017 o 01:52 #5943majoModerator
Witam,
Pojawił mi się problem z GRUBem.Miałem zainstalowany aktualny Manjaro 17.0.5 na dysku z UEFI.
Menu GRUB’a wyglądało wtedy klasycznie, tj:Manjaro Linux Advanced options for Manjaro Linux itd.
Potrzebowałem zainstalować drugą, starszą instalację Manjaro 16.10.3, nie niszcząc instalacji pierwotnej – Manjaro 17.
Zrobiłem to, postępując zgodnie ze wskazówkami z .pdf: „Manjaro User Guide”
->; Manual installation on a UEFI system
->; Using an already existing EFI partitionInstalacja Manjaro 16 przebiegła poprawnie, jednak w jej wyniku zmienił się wygląd Menu GRUBa, które teraz wygląda tak:
Manjaro Linux [tu jest Manjaro 16] Advanced options for Manjaro Linux [dla Manjaro 16] Manjaro Linux 17 Advanced options for Manjaro Linux 17 itd.
Chciałbym aby aktualne Manjaro 17 znajdowało się na pierwszym miejscu w Menu GRUBa. W tym celu wszedłem do Manjaro 17 i wykonałem komendę:
sudo update-grub
W jej wyniku – wydawało mi się – wszystko się „naprawiło”, czego potwierdzenie(?) widzę uruchamiając komendę:
sudo grub-customizer
, gdzie Menu GRUBa wygląda tak, jak sobie bym życzył, tj.Manjaro Linux [tu jest Manjaro 17] Advanced options for Manjaro Linux [dla Manjaro 17] Manjaro Linux 16 Advanced options for Manjaro Linux 16 itd.
Jednak po restarcie systemu pojawia się Menu GRUBa z Manjaro 16 na pierwszym miejscu :(
Ma ktoś pomysł, co z tym zrobić ?
Manjaro [stable] LTS, Xfce - tego używam
24 września 2017 o 12:06 #5944Robert75ForumowiczGdy ja instaluje Manjaro wersje 16.10 to po aktualizacji mam już Manjaro 17.0.5. Wyskakuje Ci w grubie info że wersja 16 ponieważ najwidoczniej nie zaktualizowałeś systemu
A tak na marginesie to ja bym Tobie proponował instalacje tego grub-a:
https://manjaro.pl/forum/topic/bootloader/Arch Linux Xfce - 64Bit Linux User #62111024 września 2017 o 12:44 #5945majoModerator@Robert75
Drugi system Manjaro zainstalowałem celowo na małej, roboczej partycji i ten system nie ma być aktualizowany do najnowszej wersji (służy on jedynie sporadycznie do testowania). Problem wersji systemu w tej partycji, nie jest moim problemem.Problemem jest to, co i jak zrobić, aby podczas startu komputera pojawiało się Menu GRUBa pobrane z głównej partycji (gdzie jest zainstalowany aktualny Manjaro 17), a nie to utworzone w partycji roboczej (z Manjaro 16).
Manjaro [stable] LTS, Xfce - tego używam
24 września 2017 o 13:01 #5946Robert75ForumowiczGdy ja swego czasu miałem zainstalowane 2 systemy Manjaro tj. Cinnamon oraz Xfce, a że pierwszy system był zainstalowany Cinnamon, a obok niego Xfce, to jako pierwszy na liście grub-a był Xfce. Nie wiem czy istnieje jakiś sposób żeby zmienić kolejność systemów w grub-e. Najprościej by było sformatować dysk i od nowa zainstalować te 2 systemy, tylko już w odwrotnej kolejności.
Arch Linux Xfce - 64Bit Linux User #62111024 września 2017 o 13:07 #5947pavbaranovForumowicz@majo – Popraw, jeśli czegoś nie rozumiem. Instalowałeś to tak:
1. Pierwszy system 17.x z grubym,
2. Partycja na 16.x i… również zainstalowałeś jej własnego gruba,
3. Obecnie system startuje z gruba zainstalowanego wraz z 16.x.
Zgadza się?
Teraz pytanie co chcesz – jeśli domyślnie uruchamiać określone Manjaro, to edytujesz plik /etc/default/grub, odnajdujesz linię GRUB_DEFAULT=X i w miejscu X wpisujesz cyfrę odpowiadającą temu kernelowi, który chcesz uruchomić. Liczenie zaczynasz od 0.
Sądzę jednak, że chcesz by system uruchamiał się z Manjaro 17.x i tam zainstalowanego grubego. No to musisz owego grubego z poziomu Manjaro 17 przeinstalować (czyli jakbyś go pierwszy raz uruchamiał na komputerze, gdzie jeszcze grub nie jest w ogóle zainstalowany). Mam nadzieję, że wystarczy. Jeśli nie – chroot, wejście na Manjaro 17.x i instalacja grubego tam gdzie chcesz. Ze względu na to, że nie podajesz bliższych informacji – odsyłam do wiki Archa.
Gdybyś nie wgrał gdzieś owego drugiego grubego, a jedynie zainstalował Manjaro 16, to Manjaro 17 winno wykryć system na nowej partycji i go dodać (oczywiście po odnowieniu gruba).
Niestety mało nieco informacji nt. gdzie jest zainstalowany i jak Twój program(-y) rozruchowy(-e).
@Robert75 – majo ma 2 wersje Manjaro (jak 2 różne systemy), a nie dokonał upgrade’u. Instalacja proponowanego przez Ciebie „gruba” nic tu nie zmieni, ani nic też nawet nie jest w ogóle instalacją grubego, a jedynie tematu/skórki dla GRUB2.24 września 2017 o 14:22 #5948majoModerator@pavbaranov
Tak. Instalowałem tak, jak napisałeś (choć chciałem zainstalować drugi roboczy system Manjaro 16 bez GRUBa, jednak w instalacji z UEFI nie znalazłem opcji instalacji „bez GRUBa” ).Chcę aby Menu GRUBa miało klasyczny wygląd, tj. aby na pierwszym miejscu na liście była aktualna wersja systemu. I tak dokładnie wygląda GRUB zapisany obecnie na podstawowej partycji z Manjaro 17.x, jednak nie jest on uruchamiany.
Z poziomu Manjaro 17 wykonałem polecenie
sudo update-grub
, które powinni przeinstalować GRUBa. Jednak zaktualizowało one jedynie GRUB zapisany na podstawowej partycji z Manjaro 17.x, ale komputer nie startuje z tego GRUBa, tylko z tego zapisanego w partycji z Manjaro 16.Jeśli chodzi o przywracanie GRUBa, to wiki Manjaro przedstawia ten zabieg trochę bardziej przystępnie, choć nie jest to do końca, przynajmniej dla mnie, klarowne, szczególnie w wersji z UEFI.
Pytanie, czy jeśli zostawię Menu pojawiającego się GRUBa tak jak jest, tj.
Manjaro Linux [tu jest Manjaro 16] Advanced options for Manjaro Linux [dla Manjaro 16] Manjaro Linux 17 Advanced options for Manjaro Linux 17 itd.
, to czy w czasie kolejnej aktualizacji systemu na głównej partycji (obecnie z Manjaro 17), np. do Manjaro 18, aktywizuje mi się GRUB zapisany na tej partycji i przywróci mi się klasyczny wygląd Menu GRUBa ? :
Manjaro Linux [tu będzie Manjaro 18] Advanced options for Manjaro Linux [dla Manjaro 18] Manjaro Linux 16 Advanced options for Manjaro Linux 16 itd.
Manjaro [stable] LTS, Xfce - tego używam
24 września 2017 o 14:44 #5949aquilaModeratorWłaściwie to nie mam UEFI ale po googlowaniu mam 2 spostrzeżenia.
1. Niektóre lapki z BIOS/UEFI mają możliwość ustawienia kolejności ładowania bootloaderów. które zapisane są na partycji EFI.
2. Instalacja efibootmgr. Np. tutaj jest to opisane. Wiem, że to Ubuntu i Windows ale chodzi o naprowadzenie.24 września 2017 o 15:20 #5950pavbaranovForumowicz@majo – Pokaż układ partycji.
O ile wiem, to GRUB działa w ten sposób, że – w przypadku wielu systemów – na pierwszym miejscu umieszcza ten, z którego GRUB pochodzi, a na dalszych, te systemy, które znajduje os-prober. Innymi słowy: jeśli będziesz odpalał z GRUB z M17 – to na pierwszym miejscu będzie 17, na drugim M16. Jeśli GRUB pochodzi z M16, to on będzie pierwszy. Czy można tu coś zmienić? Nie mam bladego pojęcia (tzn. tak, by odpalając z M16 mimo wszystko na pierwszym miejscu był M17). Musiałbyś się wczytać w grub.cfg i prawdopodobnie ręcznie go skonfigurować. Uwaga – trzeba doskonale wiedzieć co się robi.
24 września 2017 o 16:00 #5951majoModerator@aquila
Może coś niewłaściwie robię, jednak poniższa komenda nie generuje mi żadnej list potencjalnych urządzeń EFI.
Niezależnie od tego, czy wywołuje ją z poziomu LiveMedia, czy z Manjaro 16, czy Manjaro 17, czy jako sudo, czy jako root zawsze mam ten sam rezultat:sudo efibootmgr BootCurrent: 0000 Timeout: 0 seconds No BootOrder is set; firmware will attempt recovery
@pavbaranov
układ partycji:lsblk -f NAME FSTYPE LABEL UUID MOUNTPOINT sda ├─sda1 vfat DFDC-27CF /boot/efi ├─sda2 ext4 M 79492466-7c01-4f91-93b6-d7bc1a79f22d / ├─sda3 swap 4a557fab-5124-49d5-b531-2d023b88efef [SWAP] ├─sda4 ext4 testy24g ccb66e9c-28a3-407a-9e98-33cdfc33a105 ├─sda5 ext4 rob16g c0fe9982-bfcf-43b7-a26e-d480011ed2a0 ├─sda6 ext4 bd 84e26864-1cb9-4bd7-9cfd-915a847f1859 /run/media/ja/bd ├─sda7 ext4 slit f9e1a6e3-9ab1-4e97-ae1f-1d0f953d5ed4 └─sda8 ext4 rob1g 582dbe21-e180-4e53-aa83-06165d603f27
Manjaro 17 jest na sda2 ( bez wydzielonego /home).
Manjaro 16 jest na sda5 ( bez wydzielonego /home).Chyba znalazłem błąd, który popełniłem podczas instalacji Manjaro 16. Postępowałem zgodnie z instrukcją, a chyba powinienem pominąć krok, w którym wskazuje się partycję /boot/efi ( na str. 84 przewodnika).
Manjaro [stable] LTS, Xfce - tego używam
24 września 2017 o 16:22 #5952pavbaranovForumowiczIMO – najprościej: chroot na M17, z jego poziomu reinstalacja GRUBa (nie chodzi mi o ponowne zainstalowanie paczki bo to nic nie da, tylko GRUBego) i będzie jak chcesz.
EDIT:
Zobacz też na tego typu programy. Z tego co widzę mają one możliwość (przynajmniej niektóre) zmiany kolejności bootowania obrazów. Inna sprawa, że GRUB na partycji z testowym systemem chyba nie jest najrozsądniejszym rozwiązaniem.24 września 2017 o 19:34 #5953majoModerator@pavbaranov
Proszę, zaktualizuj linka w poprzednim poście, bo obecny jest błędny.A ja biorę się za Chroot pod UEFI. Brrr! Mam nadzieję, że nie wysadzę systemu :)
Bazując na wiki Manjaro, poniżej podaję sekwencję komend, które planuję wykonać i proszę Was o weryfikację, czy jest to poprawnie.
sudo pacman -S mhwd-chroot sudo mhwd-chroot
Teraz nie wiem co autor miał na myśli pisząc
Next, choose the root partition of your existing Manjaro installation.
Domyślam się, że mogę zobaczyć jakieś menu, gdzie mam wskazać obecną partycję z Manjaro 17, tj. sda2 .
Czy dobrze kombinuję ?I dalej komendy:
sudo pacman -S mtools os-prober sudo mkdir /boot/efi sudo mount /dev/sda1 /boot/efi
W powyższej komendzie podaję partycję, gdzie mam plik EFI, czyli u mnie sda1 ?
I dalej komendy:
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck sudo update-grub
Manjaro [stable] LTS, Xfce - tego używam
24 września 2017 o 20:15 #5954pavbaranovForumowiczLink zaktualizowany.
Reszta… niestety źle kombinujesz.
Chroot „wpuści” Cię jedynie na konsolę. Nie wiem jak to wygląda ze skryptem mhwd-chroot. Wiem jak z arch-chroot. Niech ktoś inny Cię poprowadzi, choć pewnie mhwd-chroot jest bliźniaczo podobny do arch-chroot (tu nie ma co kombinować).
Tak, czy inaczej.
Poradnik na wiki napisał jakiś idiota. Jest mylący, zwłaszcza dla użytkowników dystrybucji, która ma być dla każdego.
Partycję /boot/efi tworzysz wyłącznie, gdy jej nie masz. Ty ją masz. Nie tworzysz jej.
Musisz natomiast stworzyć w katalogu, w którym będziesz montować partycje chrootowanego systemu co najmniej dwa katalogi /boot/efi oraz /. Następnie dokonać chrootowania (mhwd-chroot winno to zapewnić), wejść do schrootowanej partycji głównej (czyli tego co odpowiada urządzeniu /dev/sda2) i tam wydać polecenia z pkt. 4 i 5 „poradnika”).PS: Albo na moim blogu, albo na archlike.darmowefora.pl znajdziesz info jak chrootować, ale… Archa :) Ogólna zasada jest taka. W systemie, z którego uruchomiłeś komputer tworzysz w katalogu /mnt katalogi, które odpowiadają katalogom/partycjom, które chcesz chrootować. Wydajesz polecenie skryptu (u Ciebie to powinno być mhwd-chroot). Po chwili powinieneś się znaleźć w katalogu głównym systemu schrootowanego (czyli u Ciebie – jeśli zrobisz to dobrze – M17.x). Tam robisz to co potrzebujesz i wychodzisz ze schrootowanego systemu poleceniem exit.
24 września 2017 o 21:59 #5955majoModerator@pavbaranov
Składając, to co piszesz z wiki, rozumiem, że tworzeniem tych katalogów, o których piszesz zajmuje się skrypt mhwd-chroot.
Ja natomiast mam „wejść do schrootowanej partycji głównej” ? Tego nie rozumiem. Co to znaczy „wejść” ?cd nazwa_katalog
czy coś innego ?Podsumowująć, zrobię tak:
sudo pacman -S mhwd-chroot sudo mhwd-chroot
Potem „wejść” do schrootowanej partycji głównej – tylko jak ?
I dalej komendy:
sudo pacman -S mtools os-prober sudo mount /dev/sda1 /boot/efi sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck sudo update-grub
Manjaro [stable] LTS, Xfce - tego używam
24 września 2017 o 22:25 #5956aquilaModeratorPo wpisaniu
sudo mhwd-chroot
powinno Ci wyskoczyć nowe okienko konsolowe. Jeśli zapyta o wybór (1 lub 2) wskaż partycję z Manjaro 17 i zatwierdź. Jeśli nie zapyta to powinieneś byc na M17. Możesz sprawdzić gdzie jesteś wydając polecenie:
lsb_release -a
Taka jak pisał @pavbaranov partycje /boot/efi już masz więc wykonujesz tak jak napisałeś:I dalej komendy:
sudo pacman -S mtools os-prober sudo mount /dev/sda1 /boot/efi sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck sudo update-grub
PS. Tak na szybko.
24 września 2017 o 22:38 #5957pavbaranovForumowicz@pavbaranov
Składając, to co piszesz z wiki, rozumiem, że tworzeniem tych katalogów, o których piszesz zajmuje się skrypt mhwd-chroot.majo – jak zapewne dobrze wiesz – nie mam Manjaro. Mam Archa. Tu nie ma mhwd-chroot. Nie bardzo chce mi się szukać kodu tego ustrojstwa i analizować co to robi. Mogę jedynie domniemywać, że jest to skrypt analogiczny do arch-chroot. W przeciwieństwie do Manjaro, Arch ma dobre wiki :) Kiedyś popełniłem też krótki tekst nt. arch-chroota. Mam nadzieję, że to jeszcze aktualne. Niezależnie jednak od tego, to zrozumiesz jak to działa. Niemniej jednak są to opisy o skrypcie w Archu, a nie w Manjaro. Raz jeszcze – nie wiem na ile to jest równie aktualne dla mhwd-chroot. Musi Ci tu pomóc ktoś, kto używa Manjaro.
W archu skrypt ułatwia jedynie sam chroot, całą resztę (tworzenie katalogów, montowanie) musisz wykonać sam. Możesz spokojnie skorzystać jednak z mhwd-chroot analogicznie jak w przypadku arch-chroot, co najwyżej chroot się nie uda (mam nadzieję, że nikt w Manjaro nie popsuł tego – w sumie dobrego – narzędzia). Treść wiki, który podałeś wskazywałby na to, że mhwd-chroot jakoś jednak sam montuje odpowiednie katalogi chrootowanego systemu. Nie wiem. Musisz albo poczekać na kogoś, kto to stosuje, albo… po prostu wykonać i zobaczyć co się dzieje.
Zawsze też możesz wykonać chroot „na piechotę” wg opisu z wiki Archa (link wyżej), albowiem jest to właściwe dla każdej dystrybucji.Ja natomiast mam „wejść do schrootowanej partycji głównej” ? Tego nie rozumiem. Co to znaczy „wejść” ?
cd nazwa_katalog
czy coś innego ?Znów powiem – nie mam bladego pojęcia co wyprawia mhwd-chroot. Owe „wejść” to przetłumaczony cytat z podanego przez Ciebie wiki Manjaro. Normalnie, tj. w przypadku arch-chroot, po wykonaniu skryptu jesteś w katalogu głównym schrootowanego systemu (czyli w Twoim przypadku winien to być katalog odpowiadający urządzeniu /dev/sda2). Uwaga: jesteś tu na prawach roota!
„Wejść”, czy „przejść” do katalogu znaczy natomiast zwykle cd katalog.
Podsumowująć, zrobię tak:
sudo pacman -S mhwd-chroot sudo mhwd-chroot
Potem „wejść” do schrootowanej partycji głównej – tylko jak ?
I dalej komendy:
sudo pacman -S mtools os-prober sudo mount /dev/sda1 /boot/efi sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck sudo update-grub
[/quote
Generalnie tak, ale z zastrzeżeniem, że nie wiem jak działa mhwd-chroot, o czym pisałem wcześniej. Jeśli automatycznie montuje chrootowany system – tak. W przeciwnym razie, przed jego wykonaniem musisz stworzyć odpowiednie punkty montowania w /mnt i podmontować tam partycję z /boot/efi oraz z katalogiem głównym chrootowanego systemu. Wszystko Ci się pewnie wyjaśni, jak w końcu wpiszesz w konsoli mhwd-chroot :) - AutorPosty
- Musisz być zalogowany aby odpowiedzieć w tym wątku.