Ubumatic z Restore GRUB 2 – prosta instalacja programu rozruchowego z Ubuntu Live CD (Desktop) [aktualizacja] 64


Jak naprawić lub ponownie zainstalować po instalacji nowego Windowsa program rozruchowy GRUB2? Tego typu pytania można często spotkać na różnych forach, w komentarzach pod artykułami itd. Odpowiedź na nie jest jest bardzo prosta, wystarczy przeczytać instrukcję pod tym linkiem https://wiki.ubuntu.com/Grub2. Ale bądźmy szczerzy, początkujący użytkownik Ubuntu ma prawo czegoś nie rozumieć, a bardziej zaawansowany wcześniej czy później i tak zapomni jak się to robi. Dlatego postanowiłem wszystkim ułatwić zadanie i opracowałem kolejną wersję Ubumatika z opcją–restoregrub, która służy do ponownego instalowania GRUB-a 2 z Ubuntu Live CD (Desktop).


Obsługa tego skryptu jest wystarczająco prosta, wystarczy go uruchomić na Ubuntu Live CD (Desktop) i postępować wg kreatora. Skrypt można uruchomić z karty pamięci, Pendrive lub bezpośrednio na Live CD pobrać z internetu.

Ubumatic --restoregrub

Pobierz skrypt: Ubumatic dla Ubuntu

Aby uruchomić skrypt, trzeba zrobić następujące kroki:
– kliknąć prawym przyciskiem myszy na pobrany plik i z menu wybrać Rozpakuj tutaj,
– uruchomić rozpakowany skrypt w terminalu: sudo ./ubumatic.sh --restoregrub.

Ze skryptu korzystasz na własną odpowiedzialność


Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

64 komentarzy do “Ubumatic z Restore GRUB 2 – prosta instalacja programu rozruchowego z Ubuntu Live CD (Desktop) [aktualizacja]

  • Haze

    Witam!
    No super! Aż dziw, że dotąd nikt o tym nie pomyślał!
    A można by jeszcze dodać opcję na LiveCD z Polskim remiksem (bo na bazowy nie mamy wpływu) obok testu pamięci itp.
    Pozdrawiam!

  • athlonpp

    Odpalamy Ubuntu z Live CD i dajemy w terminalu:
    sudo fdisk -l aby dowiedzieć się na której partycji mamy Linuksa.Ja mam na /dev/sda6.Następnie wklepujemy kilka komend:
    sudo mkdir /mnt/temp
    sudo mount -t ext4 /dev/sda6 /mnt/temp
    sudo mount -o bind /dev /mnt/temp/dev
    sudo mount proc /mnt/temp/proc -t proc
    sudo mount sysfs /mnt/temp/sys -t sysfs
    sudo chroot /mnt/temp
    sudo grub-install /dev/sda
    sudo update-grub2

  • empitt Autor wpisu

    @athlonpp, przecież to wszystko robi skrypt. A tak poza tym należało przynajmniej wytłumaczyć co robią te polecenia, ponieważ one dotyczą tylko jednej partycji EXT4 i nie u każdego zadziałają.

  • ggor

    [quote comment=”43971″]Witam!
    No super! Aż dziw, że dotąd nikt o tym nie pomyślał!
    A można by jeszcze dodać opcję na LiveCD z Polskim remiksem (bo na bazowy nie mamy wpływu) obok testu pamięci itp.
    Pozdrawiam![/quote]
    Dla laików którzy po instalacji windy potrafią tylko reinstalować linuksa to cudo.
    Zagubieni potrzebują więcej automatyzacji. Nie każdy zna polecenia tekstowe.

  • bazyl

    @athlonpp :
    Polecam zapoznanie się z poleceniem sudo -s . Nie będzie potrzeby wpisywania wielokrotnie sudo na początku każdego polecenia. Dodatkowo najczęściej wersje grub’a z liveCD i z dysku nie różnią się znacznie i nie ma potrzeby użycia chroot do zmiany położenia katalogu głównego (i co się z tym wiąże montowania dev’a, proc’a i sys’a), więc można zastosować parametr –root-directory i podać ścieżkę do miejsca w którym jest zamontowana partycja linuksowa. Czyli polecenia mogą wyglądać tak :
    sudo -s
    fdisk -l
    mkdir /mnt/temp
    mount /dev/sda1 /mnt/temp
    grub-install --root-directory=/mnt/temp /dev/sda
    update-grub2

    Oczywiście fdisk -l służy tylko wyłącznie do określenia która partycja jest szukaną przez nas partycją linuksową (tak naprawdę chodzi o partycję z zawierającą katalog boot) i przeze mnie oznaczona jako /dev/sda1 .
    Jeśli nie wiemy gdzie dokładnie mamy zainstalować gruba, to można spróbować użyć gruba w trybie interaktywnym (uruchomić program grub), który między innymi podpowiada, które partycję mogą mieć zainstalowanego linuksa.

  • guzdzich

    Uprzejmie prosze o pomoc jak wyczyścić wszystkie opcje uruchamiania w grubie, a pozostawić tylko system Ubuntu i Windows. Nie chce mieć wyborów aż kilku opcji uruchamiania w tym testy pamięci. Czemu to wszystko jest tak niedostępne i skomplikowane jeżeli się chce coś zmienić , ustawić inaczej np właśnie w menu gruba. guzdzich.

  • staryalejary

    Kolejna przydatna opcja, przyłączam się do głosów aby dodać ten skrypt w jakiś przyjazny sposób do LiveCD. Ile to razy już płakałem nad brakiem dostępu do Ubuntu po kolejnym padzie windowsa albo po jakimś zamieszaniu w układzie partycji na dysku.

  • rumsztyk

    [quote comment=”44199″]@athlonpp, przecież to wszystko robi skrypt.[/quote]
    no u mnie skrypt nie zadzialal a porada athlonpp i owszem
    @ athlonpp dzieki
    PS. mam ext3 i dalo rade nie wiem jakich objasnien moglbym oczekiwac…

  • empitt Autor wpisu

    @athlonpp, no dobrze a jak ktoś będzie miał Ubuntu i /boot na oddzielnych partycjach, to Twoje polecenia nie ruszą, ponieważ nie wspomniałeś o kilku ważnych rzeczach.

    @rumsztyk, mógłbyś wytłumaczyć dlaczego nie zadziałał? Bo tak na poważnie skrypt robi praktycznie to samo co komendy @athlonpp + więcej, a jak widzisz wyżej u innych śmiga.

  • empitt Autor wpisu

    @td4, wtedy wybierasz pierwszą opcję. Jeśli masz samo /, np. na /dev/sda1, to na tej samej partycji masz też /var i /boot, ponieważ każdy ma te katalogi (tylko nie każdy na tej samej partycji).

  • wojaczek

    i to ma byc przyjazny system dla uzytkowanika ? devy mounty gruby i inne cuda. Linux nigdy nie byl i nie bedzie przyjaznym systemem. Za malo rozwiazan intuicyjnych za duzo klepania w klawiature. Tyle na temat dziesiatej juz z kolei przyjaznej edycji linuxa.

  • empitt Autor wpisu

    @wojaczek, Gruba instaluje się raz na 100 lat (no chyba, że lubisz codziennie reinstalować Windowsa), więc w czym problem? A skrypt powstał po to żebyś nie musiał klepać w klawiaturę, ale skąd możesz o tym wiedzieć jak nigdy go nie uruchomiłeś.

  • mikey

    Przy akualizacji gruba czasami cos sie dzieje i pojawia sie grub rescue> i nic nie moge zrobic. Musze odpalic live CD (nagrane na karte SD – nie mam w lapku nosnika optycznego:) i wtedy w terminalu wpisuje:
    sudo apt-get install lilo
    sudo lilo -M /dev/sda mbr

    Znalazlem ta porade na forum ubuntu i juz dwa razy mi sie przydalo.
    Jestem poczatkujacym jezeli idzie o linuksa i nie wiem na ile sie przyda to innym.
    Pewnie ten skrypt tez jest dobry, ale cos robilem nie tak, bo mi nie zadzialalo.

  • empitt Autor wpisu

    @mikey, ale co nie zadziałało? Można jaśniej, bo może jest coś co nie zauważyłem.

    @wojaczek, być może, ale i tak jest przyjaźniejszy od Windowsa (w moim przypadku). Bo my tak naprawdę mówimy o naprawianiu/przywracaniu…

  • AleksanderK

    Super skrypt, bo to dla mnie szansa po kilku reinstalkach. Mam xpi Ubuntu L.L. 10.04.LTS. Po ostatnim padnięciu na monitorze w lewym górnym rogu ifno., że brak Gruba.Czy ktoś instalował Skrypt w takiej sytuacji i czy po uruchomieniu go z CD czy pena pojwią się ww.okna. Opiszcie jak praktycznie z nieg korzystać. Z gory dzięki-żółtoddziub, ale uparty by używć Ubuntu.

  • mikey

    Moze zle robilem, ale odpalilem skrypt. Wybralem pierwsza opcje, ze var i boot na jednej partycji (mam kilka partycji – jedna ukryta recovery win, 2 – win, 3-dane, 4 gdzie zainstalowalem ubuntu jest w „narzedzie do obslugi dysku jest podzielone na 3 na gorze jest partycja rozszerzona a pod spodem dwie linux i plik wymiany). Sprawdzilem ze linux to sda5 i ta wartosc wybralem w drugim okienku. w trzecim wybralem sda a nie partycje. po restarcie znow byl grub rescue. jeszcze raz odpalilem z sd i wpisalem komendy co na gorze.
    Pewnie popelniam gdzies blad podczas wybierania wartosci. Jestem zielony to dla mnie szybciej bylo wpisac tamte komendy, ktore juz raz zadzialaly i teraz ponownie mnie uratowaly.
    Ogolnie chce jak najwiecej nauczyc sie, wiec chetnie dowiem sie gdzie popelnialem blad. Sam fakt, ze na poczatku nie wiedzialem jak odpalic skrypt juz o czyms swiadczy. Jakos znalazlem na necie (co nie bylo latwe – wszyscy uwzaja, ze to jest jasne:) jak odpalac i odpalilem, a nie otwieralem w edytorze tekstu:)

  • mikey

    Jak juz pisalem, nie mam doswiadczenia w linuksie i moze nie mam var i boot na jednej partycji, albo gruba nie mam wcale zainstalowanego na tej samej partycji co linuks. Nie mowie, ze to jest zly skrypt, ale dla zielonego jak ja majacego kilka partycji i dwa systemy latwiej bylo wykorzystac 2 komendy idioten free i dalej cieszyc sie jednym i drugim systemem. Co ciekawe, na pracowniczym kompie mam tez dwa systemy win xp i ubuntu – tam nie mam problemow z grubem po aktualizacji:).

  • janek

    a najlepsze ze cala sprawa znajduje sie w opcjach przywracania systemu na live dvd i po jej odpaleniu wystarczy wybrac reinstalacje grub czy naprawe programu rozruchowego co dziala niezaleznie od wersji i ilosci posiadanych partycji… mam 10.10 i na pewno tam jest. pozdr.

  • ftw

    @ empitt – dlaczego w opcjach ubumatica nie ma przywracania gruba, a jak sie da zeby z terminala odpalić, to wyskakuje, że nie znaleziono polecenia

  • ftw

    ok, problem rozwiązany;)
    w opisie zamiast:
    – uruchomić rozpakowany skrypt w terminalu: sudo ./ubumatic.sh –restoregrub.
    powinno być:
    – uruchomić rozpakowany skrypt w terminalu: sudo ./ubumatic.sh –restoregrub
    Pozdrawim!

  • empitt Autor wpisu

    @ftw, pewnie sam zauważyłeś, że przed restoregrub powinny być dwa myślniki, ale ja nic na to nie poradzę, że one sklejają się w jeden.

  • gtriderxc

    Lipa. Szybciej idzie wkleić to do konsoli(sciaga sie jakies archiwum i po rozpakowaniu i uruchomieniu ani slowa o instalacji gruba. moze wytlumaczone jest to w postach powyzej, ale jak sie robi takie cos, to powinno dzialac bez zadnych dodatkow. u mnie lipa. polecam terminal i to co ponizej. bedzie szybciej):

    sudo su
    mkdir /mnt/root
    mount -t ext3 /dev/sda6 /mnt/root
    mount -t proc none /mnt/root/proc
    mount -o bind /dev /mnt/root/dev
    chroot /mnt/root /bin/bash
    grub-install /dev/sda
    W razie błędów:
    grub-install --recheck /dev/sda

    Później po uruchomieniu Ubuntu aktualizacja wpisów:
    sudo grub-update

    —————————————————

    Dodanie Win do Grub 2:

    sudo aptitude install os-prober

    Potem:
    sudo update-grub2

  • empitt Autor wpisu

    @gtriderxc, zapewniam Cię, że skrypt robi dokładnie to samo co Ty napisałeś (kropka w kropkę). Testowane było już na wielu komputerach i działało tak jak powinno. Ostatnio miałem do czynienia z ludźmi, którym skrypt podobno nie działał, ale tylko podobno, ponieważ źle robili. Jak będę miał trochę więcej czasu postaram się jeszcze bardziej uprościć ten skrypt, ponieważ nie najlepiej mi to wyszło.

    [quote]Szybciej idzie wkleić to do konsoli[/quote]
    Jesteś pewien? Podam Ci taki przykład: Ubuntu mam na partycji btrfs, partycję rozruchową (ext4) na oddzielnej i wytłumacz mi jak mam zainstalować ponownie Grub-a, bo podany przez Ciebie sposób na 100% u mnie nie zadziała?

    [quote]sciaga sie jakies archiwum i po rozpakowaniu i uruchomieniu ani slowa o instalacji gruba[/quote]
    Jak się źle robi to nic dziwnego. Ale jak widzisz po komentarzach, większość ludzi raczej nie ma z tym problemu (jest tylko kilka narzekań).

    [quote]ale jak sie robi takie cos, to powinno dzialac bez zadnych dodatkow[/quote]
    O jakich dodatkach mówisz? Nie przypominam sobie, abym do tego skryptu ładował jakiekolwiek dodatki.

  • gtriderxc

    Dodatkami są właśnie powyższe komentarze. „Jak się źle robi”. Widzisz, bynajmniej Cię nie krytykuję, bo sam pomysł genialny, ale aplikacja powinna być bardziej intuicyjna. Czytanie instrukcji obsługi zajmie tyle czasu co wklepanie kilku linijek w terminal. Jeśli ktoś ma btrfs, przeczyta instrukcję obsługi i skorzysta z Twojego skryptu – o ile go znajdzie. Ja nie miałem na to czasu. Podkreślam, że pomysł genialny ale, jak sam zauważyłeś, niedopracowany, bo nieintuicyjny.

  • empitt Autor wpisu

    @gtriderxc, komentarze są po to żeby nawet krytykować jeśli jest coś złe, ale wciąż nie rozumiem Twojego, ponieważ piszesz ogólnie.

    [quote]ale aplikacja powinna być bardziej intuicyjna.[/quote]
    Co masz dokładnie na myśli? Uruchamianie aplikacji, czy korzystanie z niej? Myślę, że wiesz o czym myślisz, ale ja niestety już nie.

    [quote]Czytanie instrukcji obsługi zajmie tyle czasu co wklepanie kilku linijek w terminal.[/quote]
    No tak: sudo ./ubumatic --restoregrub – to bardzo skomplikowane polecenie i jest trudniejsze do opanowania od tych kilku linijek. Grubo przesadzasz, tym bardziej, że „sudo aplikacja --opcja” nie jest niczym nowym.

  • empitt Autor wpisu

    Hmm.. udostępniłem nowego Ubumatika, w którym przywracanie partycji rozruchowej zostało mocno przebudowane i mam nadzieję, że teraz będzie wygodniej i łatwiej niż w poprzedniej wersji.

  • elgo

    Mam podobny problem – ponieważ mam TYLKO ubuntu to niestety czasami przy starcie wyrzuca mi „rescue grub” – a widać w czasie uruchomienia, że pokazuje jakiś dysk 33Mb i z niego chce wystartować – pomaga restart i wtedy staruję z „dużego” dysku bez problemu – co może być tego przyczyną?

  • sj65

    Przychylam się do zdania, że skrypt jest genialny w swoim działaniu i prostocie. Myślę, że jeżeli ktoś ma fenomenalną pamięć, kilka razy bawił się odzyskaniem gruba, ma za dużo czasu orzeknie, że skrypt jest zbędny lub będzie marudził przypinając łatkę Twórcy.

    Działa -to jest najważniejsze.

    Przenoszę system z jednego dysku na drugi zewnętrzny podpinany przez usb, Po zmianach w fstab skrypt uruchomiony i drugi system też działa. To tak na wszelki wypadek przed upgrade(m) do 11.04. Cztery razy aktualizowałem do 11.04 i nowy system nie wstawał. Stary został nienaruszony, tak więc straty nie było.

    Instalator Ubuntu nie widzi jednego z moich dysków. A na nim chciałem mieć zainstalowane Ubuntu do testów. Po przekopiowaniu jak poprzednio danych z / i /home i modyfikacji fstab, uruchamiam skrypt, a ten robi co potrzeba.
    Skuteczny jest z Debianem i Mintem -nic dziwnego.
    Nie sprawdzałem, podejrzewam jednak, że o ile w jakimś systemie nie zmieniono nazw czy układu katalogów skrypt będzie działał.

    Przychylam się do wniosku aby był w w narodowych remiksach.

    EMPIT
    wielkie dzięki w imieniu własnym i tych którzy korzystają.

    Pozdrawiam
    sj65

  • empitt Autor wpisu

    @johnyjj2, dzięki za cynk, bo faktycznie jest błąd (przeoczenie z mojej strony) i w ciągu kilku dni powinienem wypuścić łatkę.

    @sj65, miło słyszeć, że są ludzie, którym przydaje się „mój wysiłek” 😉

  • empitt Autor wpisu

    Przywracanie GRUB-a zostało naprawione i uproszczone (wyrzuciłem możliwość ustawienia partycji /var, z której na Desktopie mało kto korzysta). Poprawiony skrypt testowałem na kilku komputerach i działał, ale dla pewności testujcie. Za kilka dni pojawi się jeszcze jedna wersja Ubumatika z pełnym wsparciem dla Ubuntu 11.04.

  • sj65

    Wczoraj bawiłem się Mintem 11 i przenosiłem system na partycję skompresowaną z systemem btrfs, nie używając oddzielnej partycji /boot.
    Co ciekawe Twój rewelacyjny skrypt zadziałał, ale dopiero gdy zamontowałem partycje ręcznie:
    mount -t btrfs -o comperss ….

    Swojego czasu przeniosłem Maveric’a na skompresowany btrfs, tu była oddzielna partycja /boot i problemu nie było.

    Propozycja a właściwie dwie:
    Może byś zajrzał w wolnej chwili przystosował go do pracy ze skompresowanym btrfs.

    Może zmień napis „zamontuj Ubuntu”. Przecież działa z Debianem, Mintem innych nie sprawdzałem, ale pewnie też, wszak to linuksy.

    Pozdrawiam i dziękuję
    sj65

  • empitt Autor wpisu

    @sj65, od dłużeszgo czasu nie korzystam z Ubuntu i też nie mam czasu na większe zabawy.

    Ad. 1. Czy Ubuntu domyślnie ustawia skompresowany system plików BTRFS? Jeśli tak to mogę się temu przyjrzeć, ale niczego nie obiecuję. Dobrze byłoby gdybyś mógł pokazać końcowe wyniki dwóch poleceń:
    sudo fdisk -l /dev/sda
    sudo file -s /dev/sda1
    * – zakładam, że Twój dysk jest oznaczony jako /dev/sda, a partycja z systemem plików jest oznaczona jako /dev/sda1

    Ad. 2. Wystarczy, że tworzę skrypt Ubumatic dla różnych wersji Ubuntu i wiem jakie są niespodzianki. Bardzo prosty przykład: niech jakaś dystrybucja Linuksa nie ma zainstalowanego ‚sudo’ lub innego potrzebnego programu i już skrypt nie zadziała. Oczywiście, że zawsze można znaleźć inne rozwiązanie, ale nie podejmę się tego (trzeba mieć na to wszystko dużo czasu).

    Ad. 3. Nie widzę sensu przywracania tej możliwości. Skrypt jest kierowany do zwykłych użytkowników Ubuntu, którym oddzielna partycja /var jest zupełnie niepotrzebna.

  • sj65

    Domyślnie nie obsługuje. Potrzebna oddzielna partycja /boot dla 10.10. 11.04 instaluje się już normalnie, ale zgłasza błędy podczas startu.

    Skompresowany btrfs to dobre rozwiązanie, mam nadzieję na bliską przyszłość. Ostatnio system chciał sprawdzać te partycje ale nie potrafił. Wróciłem do starego układu partycji z ext4. Informacja o którą prosiłeś, dzisiaj uzyskana, nie byłaby właściwa.

    Wszystkie zabawy gdzie korzystam z Twojego skryptu czynię zazwyczaj na starym dysku podpiętym przez USB.
    W razie popsucia systemu najszybciej jest skopiować partycję systemową na właściwe miejsce i uruchomić skrypt.

    Sprawa sudo zazwyczaj skrypt uruchamiałem jako administrator i nie było problemów.

    Co do var, na razie mam stary skrypt z tą możliwością i zachowam go bo skutecznie działa i nie zawiódł mnie jeszcze.
    /var używam tylko podczas instalacji systemu. Potem przenoszę ją na partycję /.

    Pozdrawiam
    sj65