Należy pamiętać, że istnieje wyraźne rozróżnienie między błędami, oparte na liczbach na końcu, i nie będę wchodził w szczegóły, ponieważ można je łatwo znaleźć w Internecie, jeśli to konieczne. Te poprawki zakładają, że masz wszystkie potrzebne połączenia (zasilanie, karta SD, HDMI, przewodowa klawiatura, mysz) i używasz Raspbian wraz z NOOBS.
Szczegóły błędu kończącego się na 2 znajdują się na końcu odpowiedzi. Jeśli komunikat o błędzie kończy się na 6 , to tak:
Synchronizacja jądra bez paniki: VFS: nie można zamontować roota na nieznanym bloku (179, 6 )
będziesz musiał sprawdzić i naprawić system plików:
- Uruchom Raspberry trzymając
Shift
klucz.
- Po załadowaniu NOOBS naciśnij,
Alt-F2
aby uzyskać dostęp do wiersza polecenia odzyskiwania.
- Zaloguj się za pomocą nazwy użytkownika
root
i hasła raspberry
.
- Wpisz
sudo fsck.ext4 -y /dev/mmcblk0p6
. Spowoduje to przeskanowanie i spróbuje naprawić uszkodzony system plików (w razie potrzeby zastąp ext4 typem partycji). Zauważ, że auto
tryb fsck
(tj. Tylko pisanie fsck
zamiast fsck.ext4
) nie jest obsługiwany.
- Wpisz,
sudo shutdown -h now
aby całkowicie zamknąć Raspberry.
- Odłącz kabel zasilający i podłącz go ponownie. Raspberry powinien teraz zacząć działać poprawnie.
Jeśli komunikat o błędzie kończy się na 2 , w ten sposób:
Synchronizacja jądra bez paniki: VFS: nie można zamontować roota na nieznanym bloku (179, 2 )
prawdopodobnie przyczyną problemu jest błąd aktualizacji. Poprawka polega na zamianie 2 na 6 :
- Uruchom Raspberry trzymając
Shift
klucz.
- Kliknij
Edit config (e)
przycisk lub naciśnij e
.
- Kliknij
cmdline.txt
zakładkę lub naciśnij right arrow
na klawiaturze.
- Zastąpić:
root = / dev / mmcblk0p 2
z
root = / dev / mmcblk0p 6
- Kliknij,
OK
a następnie naciśnij escape
na klawiaturze, aby kontynuować sekwencję rozruchu.
Twoje Pi powinno się teraz ładować poprawnie. Jeśli pojawia się ten sam błąd, ale z 6, wykonaj powyższe kroki.
W niektórych przypadkach Pi może zignorować zmianę dokonaną w interfejsie GUI NOOBS i nadal widzisz dokładnie ten sam błąd, z 2
końcem podczas uruchamiania. W takim przypadku odpowiedź tktbjp może pomóc:
W rzeczywistości korzystanie z trybu odzyskiwania jest proste. Wszedłem w tryb odzyskiwania i nacisnąłem Alt-F2, aby zalogować się jako root. Zmiana cmdline.txt z GUI nie działa.
Po zalogowaniu się jako root za pomocą malinowego hasła sprawdź, czy istnieje katalog / boot. Najprawdopodobniej nie będzie obecny. Jeśli nie, utwórz go za pomocą mkdir / boot. Następnie użyj edytora vi, aby utworzyć cmdline.txt.
#cd /boot
#vi cmdline.txt
w edytorze vi zmień katalog główny na mmcblk0p6. Moja zawartość cmdline.txt wyglądadwc_otg.lpm_enable=0 console=ttyAM0,115200 console=tty1 root=/dev/mmcblk0p6 rootfstype=ext4 elevator=deadline rootwait
Zapisz plik. ważne jest, aby wykonać synchronizację.
#sync
Następnie uruchom tablicę. Sprawdź krzyż za pomocą GUI, jeśli cmdline jest naprawdę zmieniony. Mój PI B + już działa
Miałem ten sam problem, ale z nieznanym blokiem (179,7) i pierwsze rozwiązanie działało dobrze, po prostu zastępując to:
z tym:
Nie jestem ekspertem, ale mam nadzieję, że to może pomóc innym.
źródło
Aby poradzić sobie z sednem problemu (a nie obejściem problemu), jeśli nie możesz uruchomić systemu (lub nie masz „NOOBS”), musisz:
fdisk -l
imount -l
. W moim przykładzie jest montowany jako/dev/sdb1
i/dev/sdb2
. Aby odmontować, użyjumount /dev/sdb1
iumount /dev/sdb2
. ( UWAŻAJ, ABY SPRAWDZIĆ SWÓJ NUMER PARTYCJI. „2” to tylko MÓJ przykład).fdisk -l
identyfikacji DOS partycję i sprawdzić / naprawić gofsck.fat -y /dev/sdb1
( Sprawdź swój prawidłowy numer )fdisk -l
pokazujeext4
numer partycji. Napraw to za pomocąfsck.ext4 -y /dev/sdb2
( Sprawdź poprawny numer )umount
oba ponownie. Jeśli nie, możesz usunąć z komputera Raspberry Pi i włączyć go.Jeśli jest to tylko problem „blokowy”, prawdopodobnie będzie działał. Jeśli
Kernel Panic
kontynuuj, sprawdź, czy komunikat o błędzie zmienił się na coś innego. W takim przypadku należy poszukać innych odpowiedzi lub rozważyć ponowne zapisanie karty SD od zera.źródło
Ten błąd wystąpił po próbie zainstalowania Raspbian (Lite) na karcie SD, która była zbyt mała. Oczywiście, gdybym rzeczywiście spojrzał na dane wyjściowe z procesu dd, zobaczyłbym to przed ślepym włożeniem karty do mojego Pi:
Skończyłem instalowanie Minibiana .
źródło
Wystąpił błąd kończący się na 2 przy powielaniu znanej dobrej karty. Zasadniczo skopiowałem bajty z oryginalnej karty na nową / nową kartę SD za pomocą
dd
. Nie spodziewałem się żadnych błędów po tym prostym procesie, więc wyobraź sobie moje zdziwienie, gdy zetknąłem się z tym komunikatem:Po przeszukaniu okazało się, że świeża karta SD była nieco mniejsza od oryginału.
Z tego powodu nie udało się zamontować partycji root. To z kolei doprowadziło do niesławnej wiadomości o panice jądra. Wydaje mi się, że jądro próbowało dotrzeć do bloków poza końcem karty SD lub odkryło, że partycja (będąca ostatnią w kolejności) nie mieści się całkowicie na karcie SD.
Ponieważ naprawdę chciałem zachować moje pliki i ustawienia, zmniejszyłem główny system plików. Obejmuje to
resize2fs
najpierw uruchomienie , a następniefdisk
dostosowanie partycji. Należy pamiętać, że jedno narzędzie zgłasza rozmiar w blokach 4k, drugie działa z przesunięciem start / stop sektora 512 bajtów. Naprawdę łatwo jest zepsuć. Dlatego przechowuj kopie zapasowe znanych dobrych obrazów.Prawdopodobnie najlepiej to zrobić na innym komputerze PC lub laptopie z czytnikiem kart. Nie na samej malinie.
Oczywiste jest, że powinieneś mieć wystarczająco dużo miejsca w systemie plików, aby móc go zmniejszyć ...
źródło
W moim przypadku sklonowałem SD w innym SD, ponieważ oryginał został uszkodzony w tym sektorze.
Aby sklonować w systemie Windows, możesz użyć tego narzędzia: Win32 Disk Imager .
Aby zmniejszyć obraz sd, jeśli nowy sd jest mniejszy niż oryginalny, możesz użyć tego skryptu w vm linuxa, w którym udostępniono obraz sd: PiShrink .
Wreszcie, jeśli chcesz zobaczyć całą procedurę w tym filmie .
źródło