Entra

View Full Version : booting nuovo kernel fallito


morskott
23-07-2008, 19:23
Salve, per una tesina per l'uni ho la necessità di modificare parti del kernel linux, lavorando sotto ubuntu (8.04) volevo usare l'utility make-kpkg per la compilazione del kernel e creazione del pacchetto autoinstallante .dep, purtroppo tentativo fallito (http://www.hwupgrade.it/forum/showthread.php?t=1785130) quindi ho fatto il piu classico "make bzImage", mi ha creato l'immagine sotto arch/x86/boot che ho copiato nella dir /boot, ho modificato il file /boot/grub/menu.lst mettendo la nuova entry del nuovo kernel e ho fatto ripartire.

Il problema è che al boot si è impiantato per parecchio senza offrirmi nessun metodo di iterazione, ho selezionato la nuova entry nel menu di grub all'avvio e sto da un bel po su startin up...

Decompressing Linux... done
Booting the kernele non si smuove da qua, come mai? (le modifiche non sono relative alla fase di boot)

ilsensine
23-07-2008, 20:05
Allega il tuo .config

morskott
23-07-2008, 21:10
eccolo in allegato

ilsensine
23-07-2008, 21:31
In teoria dovrebbe partire (anche se probabilmente ti si bloccherà più avanti), forse c'è qualche interazione strana con virtualbox.

Inizia col disabilitare completamente il supporto per il framebuffer e le varie opzioni di virtualizzazione e vediamo se cambia qualcosa.

ilsensine
23-07-2008, 21:33
Ah sì certo hai abilitato il framebuffer ma CONFIG_FRAMEBUFFER_CONSOLE è su "m".

Disabilita il framebuffer come ti ho consigliato, è la scelta più sicura.

morskott
23-07-2008, 22:56
adesso per partire piu o meno parte, ma dopo pochissimo mi manda in outputmodprobe: FATAL: Could not load /lib/modules/2.6.25.9/modules.dep: No such file or directory (questo un bel po di volte)

udev[1156]: main: error initializing udev e dopoun po continua concheck root= bootarg cat /proc/cmdline or missing modules, devices: cat /proc/modules ls dev
ALERT! /dev/disk/by-uuid/565c2a34-af3d-471c-a804-9552bfbe6c60 does not exist.
Dropping to a shell

BusyBox v1.1.3 (Debian 1:1.1.3-5ubuntu12) Built-in shell (ash)

(initramfs)e mi manda su una shell sul ramdisk, ma faccio bene la fase di compilazione facendo solo "make bzImage" e copiando il file "arch/x86/boot/bzImage" nella cartella "/boot/" modificando il file "/boot/grub/menu.lst"??? Allego il nuovo config e il file menu.lst

Menu.lst# 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 use 'savedefault' 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 3

## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
hiddenmenu

# 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=UUID=565c2a34-af3d-471c-a804-9552bfbe6c60 ro

## Setup crashdump menu entries
## e.g. crashdump=1
# crashdump=0

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

## 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=quiet splash

## 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=(recovery) single
# altoptions=(recovery 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

## should update-grub add savedefault to the default options
## can be true or false
# savedefault=false

## ## End Default Options ##

title Ubuntu 8.04.1, kernel 2.6.24-19-generic
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-19-generic root=UUID=565c2a34-af3d-471c-a804-9552bfbe6c60 ro quiet splash
initrd /boot/initrd.img-2.6.24-19-generic
quiet

title Ubuntu 8.04.1, kernel 2.6.24-19-generic (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-19-generic root=UUID=565c2a34-af3d-471c-a804-9552bfbe6c60 ro single
initrd /boot/initrd.img-2.6.24-19-generic

title Ubuntu 8.04.1, kernel 2.6.24-16-generic
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=565c2a34-af3d-471c-a804-9552bfbe6c60 ro quiet splash
initrd /boot/initrd.img-2.6.24-16-generic
quiet

title Ubuntu 8.04.1, kernel 2.6.24-16-generic (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=565c2a34-af3d-471c-a804-9552bfbe6c60 ro single
initrd /boot/initrd.img-2.6.24-16-generic

title Ubuntu 8.04.1, memtest86+
root (hd0,0)
kernel /boot/memtest86+.bin
quiet

title Ubuntu 8.04.1, so3 hacked
root (hd0,0)
kernel /boot/bzImage root=UUID=565c2a34-af3d-471c-a804-9552bfbe6c60 ro quiet
initrd /boot/initrd.img-2.6.24-16-generic

### END DEBIAN AUTOMAGIC KERNELS LIST

dennyv
23-07-2008, 23:21
Non devi lanciare make bzImage, almeno non solo, non si usa più da un bel pezzo.

Dai un make all invece. Visto però che hai già l'ambaradan compilato e l'immagine kernel installata e dai solo un make modules_install.

L'errore che ti da sopra è perchè hai installato l'immagine del kernel e non i relativi moduli. Poi devi creare anche l'initrd (man mkinitramfs), oppure non mettere come modulo le cose indispensabili per l'avvio del sistema (driver ide/sata per il tuo hardware, il tuo filesystem ecc...)

Ciao!

ilsensine
24-07-2008, 09:06
ama faccio bene la fase di compilazione facendo solo "make bzImage" e copiando il file "arch/x86/boot/bzImage" nella cartella "/boot/" modificando il file "/boot/grub/menu.lst"???
Ti sei scordato i moduli:
make modules
make modules_install