Strona 1 z 1

Błąd po kompilacji kernela 2.6.24.4 --- GRUB

: 20 kwietnia 2008, 16:11
autor: fan_debianu
Witam dziś kompilowałem kernela ze strony : http://pl.wikibooks.org/wiki/Bardzo_szc ... w_Debianie
Wszystko poszło w miarę dobrze, ale nie mogę odpalić Debiana, w trakcie ładowania systemu mam zawieszkę! Coś czuję że to ma związek z GRUB. Na stary kernel co miałem poprzedni, mogę się zalogować bez żadnych problemów, dopiero przy nowym kernelu 2.6.24.4 mam problemy. Podaję kod błedów (związane chyba z Grubem)

Kod: Zaznacz cały

debian:/usr/src# dpkg -i linux-image-2.6.24.4_MojeJadro2.6.24.4_i386.deb
(Odczytywanie bazy danych ... 102493 plików i katalogów obecnie zainstalowanych.)
Przygotowanie do zastąpienia linux-image-2.6.24.4 786:MojeJadro2.6.24.4 (wykorzystując linux-image-2.6.24.4_MojeJadro2.6.24.4_i386.deb) ...
Done.
Rozpakowanie pakietu zastępującego linux-image-2.6.24.4 ...
Running postrm hook script /sbin/update-grub.
You shouldn't call /sbin/update-grub. Please call /usr/sbin/update-grub instead!

Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.24.4
Found kernel: /boot/vmlinuz-2.6.18-6-686
Found kernel: /boot/vmlinuz-2.6.18-4-686
Updating /boot/grub/menu.lst ... done

Konfigurowanie linux-image-2.6.24.4 (MojeJadro2.6.24.4) ...
Running depmod.
Not updating image symbolic links since we are being updated/reinstalled
(786:MojeJadro2.6.24.4 was configured last, according to dpkg)
Running postinst hook script /sbin/update-grub.
You shouldn't call /sbin/update-grub. Please call /usr/sbin/update-grub instead!

Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.24.4
Found kernel: /boot/vmlinuz-2.6.18-6-686
Found kernel: /boot/vmlinuz-2.6.18-4-686
Updating /boot/grub/menu.lst ... done


debian:/usr/src# dir
linux                   linux-headers-2.6.18-4-686
linux-2.6.24.4          linux-image-2.6.24.4_MojeJadro2.6.24.4_i386.deb
linux-2.6.24.4.tar.gz   linux-kbuild-2.6.18
linux-headers-2.6.18-4  patch-2.6.24.4.gz
debian:/usr/src# cd ..
debian:/usr# cd ..
W jaki sposób mogę przywrócić grub, żeby mi odpalał system na nowszym kernelu (oczywiście jak tylko z tym jest problem?). Proszę o dokładne wyjaśnienie tego problemu. Pozdrawiam serdecznie

P.S

Kod: Zaznacz cały

Gdy instalacja zostanie zakończona, zostaniesz poproszony o utworzenie dyskietki startowej. Sugeruję to zrobić, ale nie jest to niezbędne.

Następnie zostaniesz zapytany, czy zainstalować rekord rozruchowy korzystając z konfiguracji /etc/lilo.conf. Jeśli nie odpowiesz twierdząco na to pytanie, nie będziesz mógł uruchomić komputera korzystając z nowego jądra (chyba, że stworzyłeś dyskietkę, o której była mowa przed chwilą, ale wtedy będziesz mógł uruchomić komputer tylko z tej dyskietki). Upewnij się, że odpowiedziałeś twierdząco na jedno z pytań (lub oba), inaczej pozostaniesz bez możliwości uruchomienia swojego nowego lśniącego jądra w wersji 
Nie miałem zapytania czy zainstalować rekord rozruchowy, lub żeby stworzyć dyskietkę startową. Bo inaczej bym to stworzył, i zainstalował rekord rozruchowy GRUB :-)

: 22 kwietnia 2008, 23:32
autor: -X-
Edytuj plik menu.lst dopisując:

title Linux-twoje numery jądra [to jest tylko nazwa wiec możesz zmienić na dowolną]
root (hdx,y) [x numer dysku, y numer partycji licząc od 0]
kernel /boot/twoj kernel pelna nazwa vmlinuz-2.6xxxxx root=/dev/hdax lub sdax [gdzie x to numer partycji licząc od 1!] [hdax - dysk ATA, sdax - jak masz dysk SATA]
initrd /boot/nazwa pliki init

Jak nie tworzyłeś init to musisz wejść do katalogu z źródłami kernela i wydać polecenie z konsoli mkinitrd -o initrd.img [mkinitrd musisz mieć zainstalowane w systemie] Kopiujesz plik wynikowy initrd.img do /boot
Możesz sobie utworzyć linki symboliczne do kernela i initrd w / ale nie musisz.

To co w nawiasach to tylko wyjaśnienia więc tego nie pisz.

: 28 kwietnia 2008, 07:18
autor: fan_debianu
-X- pisze:Edytuj plik menu.lst dopisując:

title Linux-twoje numery jądra [to jest tylko nazwa wiec możesz zmienić na dowolną]
root (hdx,y) [x numer dysku, y numer partycji licząc od 0]
kernel /boot/twoj kernel pelna nazwa vmlinuz-2.6xxxxx root=/dev/hdax lub sdax [gdzie x to numer partycji licząc od 1!] [hdax - dysk ATA, sdax - jak masz dysk SATA]
initrd /boot/nazwa pliki init

Jak nie tworzyłeś init to musisz wejść do katalogu z źródłami kernela i wydać polecenie z konsoli mkinitrd -o initrd.img [mkinitrd musisz mieć zainstalowane w systemie] Kopiujesz plik wynikowy initrd.img do /boot
Możesz sobie utworzyć linki symboliczne do kernela i initrd w / ale nie musisz.

To co w nawiasach to tylko wyjaśnienia więc tego nie pisz.
OK spróbuje pokombinować, tylko w jakim katologu mieszczą się zródła kernela.....? Spróbuję poszukać :-) Pozdrawiam

[ Dodano: 2008-04-29, 07:05 ]
Próbowałem zainstalować mkinitrd, ale nie dało rady, w systemie go nie mam, podaję kod:

Kod: Zaznacz cały

debian:/home/piotrino# cd /boot
debian:/boot# mkinitrd -o initrd.img
bash: mkinitrd: command not found
debian:/boot# aptitude search mkinitrd
debian:/boot# apt-get install mkinitrd
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności... Gotowe
E: Nie udało się odnaleźć pakietu mkinitrd
debian:/boot# mkinitrd -o initrd.img
bash: mkinitrd: command not found
debian:/boot# apt-get install  mkinitrd
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności... Gotowe
E: Nie udało się odnaleźć pakietu mkinitrd
debian:/boot#                    
Podaję też zawartość menu.lst

Kod: Zaznacz cały

 menu.lst - See: grub(8), info grub, update-grub(8)
#            grub-install(8), grub-floppy(8),
#            grub-md5-crypt, /usr/share/doc/grub
#            and /usr/share/doc/grub-doc/.

## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not change this entry to 'saved' or your
# array will desync and will not let you boot your system.
default		0

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout		5

# Pretty colours
color cyan/blue white/blue

## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line)  and entries protected by the
# command 'lock'
# e.g. password topsecret
#      password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/
# password topsecret

#
# examples
#
# title		Windows 95/98/NT/2000
# root		(hd0,0)
# makeactive
# chainloader	+1
#
# title		Linux
# root		(hd0,1)
# kernel	/vmlinuz root=/dev/hda2 ro
#

#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
##      kopt_2_6_8=root=/dev/hdc1 ro
##      kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/hda3 ro

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd0,2)

## should update-grub create alternative automagic boot options
## e.g. alternative=true
##      alternative=false
# alternative=true

## should update-grub lock alternative automagic boot options
## e.g. lockalternative=true
##      lockalternative=false
# lockalternative=false

## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=

## should update-grub lock old automagic boot options
## e.g. lockold=false
##      lockold=true
# lockold=false

## Xen hypervisor options to use with the default Xen boot option
# xenhopt=

## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=console=tty0

## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
##      altoptions=(single-user) single
# altoptions=(single-user mode) single

## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
##      howmany=7
# howmany=all

## should update-grub create memtest86 boot option
## e.g. memtest86=true
##      memtest86=false
# memtest86=true

## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaultentry=false

## ## End Default Options ##

title		Debian GNU/Linux, kernel 2.6.24.4
root		(hd0,2)
kernel		/boot/vmlinuz-2.6.24.4 root=/dev/hda3 ro
initrd          mkinitrd -k /boot/vmlinuz-2.6.24.4 -i /boot/initrd.img-2.6.24.4  \ /dopisane przeze mnie ale błednie
 
savedefault

title		Debian GNU/Linux, kernel 2.6.24.4 (single-user mode)
root		(hd0,2)
kernel		/boot/vmlinuz-2.6.24.4 root=/dev/hda3 ro single
initrd          mkinitrd -k /boot/vmlinuz-2.6.24.4 -i /boot/initrd.img-2.6.24.4  \ //dopisane przeze mnie  ale błędnie

savedefault

title		Debian GNU/Linux, kernel 2.6.18-6-686
root		(hd0,2)
kernel		/boot/vmlinuz-2.6.18-6-686 root=/dev/hda3 ro 
initrd		/boot/initrd.img-2.6.18-6-686
savedefault

title		Debian GNU/Linux, kernel 2.6.18-6-686 (single-user mode)
root		(hd0,2)
kernel		/boot/vmlinuz-2.6.18-6-686 root=/dev/hda3 ro single
initrd		/boot/initrd.img-2.6.18-6-686
savedefault

title		Debian GNU/Linux, kernel 2.6.18-4-686
root		(hd0,2)
kernel		/boot/vmlinuz-2.6.18-4-686 root=/dev/hda3 ro 
initrd		/boot/initrd.img-2.6.18-4-686
savedefault

title		Debian GNU/Linux, kernel 2.6.18-4-686 (single-user mode)
root		(hd0,2)
kernel		/boot/vmlinuz-2.6.18-4-686 root=/dev/hda3 ro single
initrd		/boot/initrd.img-2.6.18-4-686
savedefault

### END DEBIAN AUTOMAGIC KERNELS LIST

# This is a divider, added to separate the menu items below from the Debian
# ones.
title		Other operating systems:
root


# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/hda1
title		Microsoft Windows XP Home Edition
root		(hd0,0)
savedefault
makeactive
chainloader	+1


: 05 maja 2008, 13:14
autor: marhatx
;

a spróbuj użyć linux_boot botowalny systemik do naprawy, instalacji grub-a i lilo :)

.

odp

: 05 maja 2008, 17:05
autor: fan_debianu
Nie wiem czy masz dokładnie to na myśli co ja. To znaczy z płytki instalacyjnej co instalowałem debian, wpisałem rescue, z tego naprawiałem gruba, ale działa mi na kernelu starszym, ale nie na tym nowszym co kompilowałem go...Pozdrawiam :-)

: 05 maja 2008, 19:38
autor: fnmirk
marhatx pisze:...a spróbuj użyć linux_boot botowalny systemik do naprawy, instalacji grub-a i lilo :)
Nie wystarczy wspomnieć o zestawie narzędzi. Dobrze widziane jest podanie odnośnika do strony domowej.