Nowe posty

Autor Wątek: Problem z aktualizacją jądra  (Przeczytany 3530 razy)

Offline mateo86

  • Users
  • Guru
  • *****
  • Wiadomości: 647
    • Zobacz profil
Problem z aktualizacją jądra
« dnia: 2010-03-09, 23:21:48 »
Witam.

Zaistniała u mnie potrzeba zmiany jądra na nowszą wersję. Z 2.6.30-gentoo-r4 na 2.6.31-gentoo-r6

Użyłem starego pliku .config, jako że jestem leniwy i nie chciało mi się wszystkich opcji od nowa ustawiać (oprócz tych, które musiałem z racji aktualizacji):P
Po skompilowaniu i uruchomieniu kernela pojawia się komunikat
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2.0)
Wcześniej jest wywalone:
VFS: Unable to mount root fs via NFS, trying floppy
VFS Please append a correct "root=" boot option; here are the available partitions:

0340 20066251 hdb driver: ide-gd
0341 20065153 hdb1
Na pierwszy rzut oka wygląda jakby nie wykrył dysków, ale nie bardzo wiem gdzie szukać problemu, skoro na stare jądro na tej samej konfiguracji działa a nowe nie chce (sprawdziłem, przekompilowałem stare)

System plików to ext3, również wkompilowany na stałe.

Te dyski co widać to kontroler PATA, do niego podłączony jest dysk ze starego kompa.

W akcie desperacji zaznaczyłem wszystko co w nazwie ma 'intel' i jest związane w dyskiem/chipsetemw sekcji device drivers, jednak po kompilacji żadnych pozytywnych rezulattów.

Wszystko jest wkompilowane na stałe, żadnych modułów.
Initrd również brak.

Może ktoś miał podobny problem? Jakieś sugestie co do rozwiązania?

ASUS P5B (Intel P965+ICH8)

arctgx

  • Gość
Problem z aktualizacją jądra
« Odpowiedź #1 dnia: 2010-03-10, 00:49:14 »
Chyba najprościej byłoby podejrzeć z dmesg i lsmod, jakich sterowników używa działające jądro w tej wersji. Nie wiem jak jest z Gentoo, ale zdaje się że np. Ubuntu 9.10 pracuje domyślnie na 2.6.31. Jak pewnie zdążyłeś zauważyć, istnieje stara gałąź sterowników kontrolerów ide i aktualna libata (zależnie od tego, dyski zwą się hd? lub sd?).

A może sterowników nie brak, tylko (nie sprawdzam) z wersji na wersję zmieniono sterowniki i wystarczy przemianować parametr root? Jeśli używasz różnych jąder, chyba najwygodniej użyć root=UUID=id_głównego_systemu_plików (patrz blkid plik_urządzenia).

P.S. Nie próbowałem root=UUID=... na jądrze zbudowanym ze źródeł i nie sprawdzę teraz czy wymaga to jakiejś opcji czy może potrzebny jest initrd (z udevd, który wygeneruje /dev/disk/by-uuid/...). Zawsze możesz użyć oryginalnej nazwy dysku, która pojawiła się wcześniej. Jeśli nie pojawiła się, podejrzenie pada niżej, np. na obsługę wspomnianych kontrolerów.

chmooreck

  • Gość
Problem z aktualizacją jądra
« Odpowiedź #2 dnia: 2010-03-10, 08:11:18 »
Cytat: mateo86
Użyłem starego pliku .config, jako że jestem leniwy i nie chciało mi się wszystkich opcji od nowa ustawiać (oprócz tych, które musiałem z racji aktualizacji):P
Oczywiście po skopiowaniu pliku .config wywołałeś make oldconfig ?

Offline mateo86

  • Users
  • Guru
  • *****
  • Wiadomości: 647
    • Zobacz profil
Problem z aktualizacją jądra
« Odpowiedź #3 dnia: 2010-03-10, 15:36:56 »
Cytat: chmooreck
Oczywiście po skopiowaniu pliku .config wywołałeś make oldconfig ?
Oczywiście że nie... ;P

Ale przy wywołaniu make chyba automatycznie się to robi, przynajmniej podczas kompilacji wskazywały na to komunikaty... albo dla mnie się wydawało...

W każdym razie problem został raczej rozwiązany... Raczej, bo nie wiem co pomogło.

Dorzuciłem do jądra NFS server support i wszystkie jakie znalazłem sterowniki generic do chipsetu...

Jak znajdę chwilę czasu, to pojedynczo będę wyłączał wszystko i szukał sprawcy całego zamieszania ;)

Dzięki za pomoc

WizardNumberNext

  • Gość
Problem z aktualizacją jądra
« Odpowiedź #4 dnia: 2010-03-11, 18:16:15 »
Tak, jeżeli się kompiluje nowe jajko i wrzuci się stary .config, a nie zrobi się 'make oldconfig' (troche bez sensu - bo przecież już wrzuciliśmy stary .config, więc akcja była tylko powtórzona), to jajko samo się skonfiguruje (tzn te nowe opcje samo skonfiguruje), według defconfig.