Jak mogę naprawić / zainstalować / ponownie zainstalować grub?

9

Zacząłem więc od dysku twardego o pojemności 250 GB, dysku podstawowego EeePC 1015pem, który próbuję przekształcić w MintBook. Dysk jest fizycznie obsługiwany, ale wszystkie dane zostały usunięte, w tym stary system operacyjny. Biorąc to pod uwagę, podłączyłem dysk twardy do pulpitu i zainstalowałem Linux Mint 16 Xfce z Live USB utworzonego za pomocą Unetbootin-585. swapOdłóż 10 GB na i 240 GB na ext4i /.

Dysk odmawia teraz rozruchu komputera stacjonarnego lub netbooka. Obie płyty główne emitują prawidłową sekwencję sygnałów dźwiękowych, więc wydają się zdrowe i mogę z powodzeniem uzyskać dostęp do systemu BIOS w obu systemach. Jednak jedyne, co pojawia się po uruchomieniu komputera, to niereagujący wiersz poleceń. Nie ma komunikatu o błędzie, nie ma grub ani rat gruba, nic.

Czy jest coś, co mogę spróbować oprócz formatowania i rozpoczynania od nowa? Jak mam przejść do instalacji modułu ładującego, który może uruchomić mój system operacyjny?

the.keV.nc
źródło
2
Dlaczego instalujesz na pulpicie? Dlaczego nie zainstalować bezpośrednio na docelowym netbooku? 10 GB na zamianę !? 240 dla Ext4 i /? Czy zainstalowałeś grub na MBR dysku? Czy korzystasz z UEFI? Czy możesz nam pokazać skonfigurowany schemat partycjonowania?
terdon
W celu:> Dlaczego instalujesz na pulpicie? Dlaczego nie zainstalować bezpośrednio na docelowym netbooku? Zainstalowałem z pulpitu, ponieważ netbook reaguje błyskawicznie na USB na żywo. Mogę uruchomić komputer z USB, ale kiedy próbuję uruchomić netbooka, przed zamknięciem wyświetla szybko migające logo Mint przez ~ 45 minut. > 10 GB na zamianę !? Nie widziałem też żadnego dobrego powodu; Nie potrzebuję pilnie takiej przestrzeni. > 240 dla Ext4 i /? ... Czy to jakoś źle? Każde znalezione źródło mówiło „Użyj Ext4”, a instalator zażądał / dla partycji.
the.keV.nc
OK, dość uczciwie (chociaż może to być spowodowane użyciem unetbootin, miałem podobne problemy i działało to z USB utworzonymi za pomocą MultiSystem, również widzę ten wątek. Czy możesz również odpowiedzieć na moje inne pytania? Czy używasz UEFI? Czy masz zainstalowany grub na dysku, a jeśli tak, to gdzie?
terdon
> Czy zainstalowałeś grub na MBR dysku? Nie, nie mam. Myślałem, że instalator sam edytował MBR. > Czy korzystasz z UEFI? Nic mi nie wiadomo. Czy powinienem? > Czy możesz nam pokazać skonfigurowany schemat partycjonowania? Daj mi chwilkę.
the.keV.nc
1
Osobiście starałbym się bardziej o bezpośrednią instalację na laptopie. Zainstalowanie czegoś innego to po prostu dodanie dodatkowej warstwy złożoności imo. Wypróbuj coś innego niż instalacja Live USB. Nic nie wiem na temat sugestii @ terdona, ale spróbowałbym ich.
Faheem Mitha

Odpowiedzi:

16

Wygląda na to, że nie zainstalowałeś programu ładującego (np. Gruba) na dysku. Oznacza to, że chociaż masz na nim prawidłowy system operacyjny, nie ma sposobu na uruchomienie go, więc nie możesz go używać.

Musisz podłączyć dysk twardy do działającego komputera (możesz użyć Live CD), skonfigurować środowisko chroot i zainstalować na nim grub.

  1. Zamontuj partycję, której będziesz używać jako /(wywołam dysk /dev/sdbi /partycję sdb1, nazwy mogą być inne w twoim systemie, będziesz musiał użyć poprawnych ) gdzieś:

    sudo mount /dev/sdb1 /mnt/foo
    
  2. Powiąż katalogi, które grubmuszą mieć dostęp

    sudo mount --bind /dev /mnt/foo/dev && 
    sudo mount --bind /dev/pts /mnt/foo/dev/pts && 
    sudo mount --bind /proc /mnt/foo/proc && 
    sudo mount --bind /sys /mnt/foo/sys
    
  3. Skonfiguruj chrootśrodowisko

    sudo chroot /mnt/foo
    
  4. Utwórz plik konfiguracyjny gruba:

    sudo grub-mkconfig -o /boot/grub/grub.cfg
    

    Jeśli masz zainstalowanych wiele systemów operacyjnych, upewnij się, że powyższe polecenie wyświetla wszystkie z nich. Na przykład:

    $ sudo grub-mkconfig -o /boot/grub/grub.cfg
    Generating grub.cfg ...
    Found background image: /usr/share/images/desktop-base/desktop-grub.png
    Found linux image: /boot/vmlinuz-3.10-2-amd64
    Found initrd image: /boot/initrd.img-3.10-2-amd64
    Found linux image: /boot/vmlinuz-3.2.0-4-amd64
    Found initrd image: /boot/initrd.img-3.2.0-4-amd64
    Found linux image: /boot/vmlinuz-3.2.0-3-amd64
    Found initrd image: /boot/initrd.img-3.2.0-3-amd64
    Found linux image: /boot/vmlinuz-3.2.0-2-amd64
    Found initrd image: /boot/initrd.img-3.2.0-2-amd64
    Found memtest86+ image: /boot/memtest86+.bin
    Found memtest86+ multiboot image: /boot/memtest86+_multiboot.bin
    Found Windows 7 (loader) on /dev/sda2
    done
    
  5. Teraz zainstaluj grub na MBR dysku (pamiętaj, aby zmienić /dev/sdbdysk, na którym chcesz go zainstalować)

    grub-install /dev/sdb
    grub-install --recheck /dev/sdb
    
  6. Wyjdź chrooti odmontuj wszystko, aby system działał normalnie:

    exit
    sudo umount /mnt/foo/dev/pts /mnt/foo/dev /mnt/foo/proc /mnt/foo/sys /mnt/foo
    
  7. Spróbuj uruchomić z dysku, tym razem powinieneś mieć menu grub.

terdon
źródło
Na podstawie Twojej wcześniejszej sugestii zrobiłem to dokładnie, postępując zgodnie z instrukcjami na stronie nooblab.com. I zadziałało! Na pulpicie mogę uruchomić Mint z nowo utworzonego gruba. Niestety nie rozwiązało to problemu z netbookiem, więc uważaj na dalszy post.
the.keV.nc
@ the.keV.nc co masz na myśli moją wcześniejszą sugestię? Użyłeś czegoś innego niż unetbootin? Jeśli zastosowałeś się do mojej odpowiedzi w celu rozwiązania problemu, oznacz go jako zaakceptowany, aby inni mogli zobaczyć, że jest to właściwe rozwiązanie.
terdon
Mam na myśli, że zapytałeś, czy mam zainstalowany grub. Wygląda na to, że tego nie zrobiłem, więc postępowałem zgodnie z instrukcjami tutaj, aby zainstalować ponownie z rozruchu na żywo Mint. Działa i mogę teraz uzyskać dostęp do mennicy 16, podłączając dysk twardy do pulpitu. Jednak nadal nie będzie działać na moim netbooku, stąd kontynuacja. (I dzięki za wzmiankę o oznaczeniu go jako zaakceptowanego.)
the.keV.nc
Ze strony podręcznika update-grub- update-grub is a stub for running grub-mkconfig -o /boot/grub/grub.cfg. Więc nie trzeba robić grub-mkconfigi update-grub. Myślę, że po grub-installjest właściwy czas (jeśli robi to jakąkolwiek różnicę), więc zasadniczo nie potrzebujesz kroku 4 (chociaż prawdopodobnie możesz po prostu zmienić wyjście na krok 5, ponieważ będzie taki sam).
Graeme,
1
@Graeme, właściwie to update-grubcałkowicie usunąłem , jest to kwestia Debiana i, jak powiedziałeś, tylko skrypt powłoki, który działa grub-mkconfigpo użyciu set -xdo debugowania. Nie ma sensu, grub-mkconfigpowinno wystarczyć.
terdon