Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di citrus
    Registrato dal
    Feb 2002
    Messaggi
    774

    [ricompilazione kernel] help!!!

    ciao a tutti....
    sono alla mia prima ricompilazione ed ho qualche problema.
    (Suse 8.2 Pro, sto cercando di mettere il kernel 2.6.6)
    praticamente, dopo varie peripezie sono riuscito a configurare il kernel e a farne un immagine con il comando "make bzImage".
    A questo punto lancio il comando "make install" ma non ha successo perchè non trova il file di configurazione di lilo (infatti il bootloader è grub).
    Allora seguendo le indicazioni della guida di html.it copio il file bzImage nella directory boot e lo rinomino Vmlinuz (avendo prima mantenuto il vecchio kernel con il nome di Vmlinuz_old). stessa cosa per il file system.map (che no ho assolutamente idea a che cosa serva).
    Cmq sia...
    fatto questo entro nel file di configurazione di grub (menu.list), copio esattamente le tre righe per l'avvio del vecchio kernel, cambio l'etichetta e il nome del file del kernel in modo da poter scegliere con quale kernel avviare.
    Fin qui sembra andare tutto bene....
    E invece quando riavvio con il nuovo kernel mi dice che non trova la partizione di root
    "please append a correct "root=" boot option"!
    quello che no capisco è che è la stessa della versione con il vecchio kernel.. ho cambiato solo l'etichetta e il nome del file contenente l'immagine del kernel......
    perchè mi da questo errore?
    cosa devo fare?

    grazie mille
    citrus

  2. #2
    probabilmente non ti ha creato initdr

    installa mkinitdr e poi lancialo nella dei del kernel

    la suse come mandrake preferisce avere tutto disponibile
    se ricompili il kernel compilalo con

    make all
    make modules_install
    make install


    ti dovrebbe creare anche initrd altrienti prima del make install dai un mkinitrd

    poi prima di riavviare controlla grub.conf e guarda che corrisponda hai file che hai in /boot

  3. #3
    Utente di HTML.it L'avatar di citrus
    Registrato dal
    Feb 2002
    Messaggi
    774
    grazie ci provo subito...
    ma cosa sarebbe scusa initrd?

  4. #4
    serve a dare le istruzioni di boot per molte distro' rpmbased come la suse

    poi lo devi aggiungere anche a grub.conf probabilmente io grub non lo uso mai
    guarda la configurazione esistente e quello che c'è in /boot

  5. #5
    Utente di HTML.it L'avatar di citrus
    Registrato dal
    Feb 2002
    Messaggi
    774
    quello che non capisco è che io ho praticamente sostituito il vmlinuz con quello ricompilato da me...
    di grub praticamente non ho toccato nulla.. ho solo aggiuto il "link" al vechio kernel...
    quindi dipenderebbe proprio dall'immagine del kernel che ho creato giusto?
    quindi se le cose stanno così è qui dentro che dovrebbe trovarsi il file initrd?

    poi un altra cosa...
    se non do il comando "make bzImage" ma semplicemente "make all" mi crea cmq un immagine che io poi posso spstare in /boot?
    perchè il "make install" non mi funziona per via di lilo.....

  6. #6
    vmlinuz era meglio se non lo toccavi

    se dai il make install ti crea il vmlinux-2.6.xxxxx
    che puoi usare come immagine del kernel aggiuntiva senza andare a toccare quella esistente
    probabilmente suse ti crea anche un vmlinux.old e fa un similink da vmlinuz all'immagine nuova

    il problema puo essere anche il kernel compilato male che non permette il boot

  7. #7
    make all si preoccupa di tutto non devi dare make bzImage
    quello va usato con i kernel 2.4.xx

    make crea il bzImage da solo

  8. #8
    Utente di HTML.it L'avatar di citrus
    Registrato dal
    Feb 2002
    Messaggi
    774
    Originariamente inviato da andy caps
    vmlinuz era meglio se non lo toccavi
    se dai il make install ti crea il vmlinux-2.6.xxxxx che puoi usare come immagine del kernel aggiuntiva senza andare a toccare quella esistente probabilmente suse ti crea anche un vmlinux.old e fa un similink da vmlinuz all'immagine nuova
    no, ho controlato e non crea link... o magari lo creerebbe se andasse a buon fine il "make install", cosa che però non avviene quindi mi tocca fare a mano lo spostamento...
    per il vmlinuz ho creato una copia prima di sovrascriverlo a cui punta un secondo (come si dice?)... boot, quindi anche quando il 2.6 mi da problemi avvio con il 2.4.

    cmq sia ho provato a fare come dici tu, ovvero do prima il "make all" poi compilo i moduli, poi do un "mkinitrd" ed infine il benedetto "make install" che sempre per via di lilo non funziona...
    quindi ho preso il bzImage e lo copiato nella cartella /boot rinominandolo con vmlinuz.. ora dovrebbe essere tutt'apposto ma ancora mi da lo stesso problema di prima all'avvio...
    quello che mi chiedo è: se il file initrd serve al kernel per creare il mount su root (giusto?), allora non dovrebbe stare all'interno dell'immagine (bzImage)?
    quindi in teoria non dovrei dare l'"initrd" prima del "make all"?
    ...

    Originariamente inviato da andy caps
    il problema puo essere anche il kernel compilato male che non permette il boot
    Se così fosse cosa potrei fare?
    Io non ho praticamente toccato nulla della configurazione del kernel.. ho solo aggiunto il supporto ai dischi sata, nient'altro.
    Se la compilazione non riesce non credo dipenda da me (spero) giusto?

    ...
    ps:
    sto ragionando a spanne quindi se dico cavolate ti prego di correggermi....
    grazie di nuovo
    citrus

  9. #9
    Utente di HTML.it L'avatar di citrus
    Registrato dal
    Feb 2002
    Messaggi
    774
    ecco...
    avevi ragione... il make install prima di non riuscire a creare il link alla nuova immagine è riuscito però a sovrascrivere quella di prima su vmlinuz_old che conteneva il kernel funzionante di cui avevo fatto backup....
    ora praticamente non ho più il 2.4 e non riesco nemmeno ad avviare la macchina....
    grrrrr!!!
    vabbè... più grande è lo sbattimento più sarà grande la soddisfazione!
    ora reinstallo e riprovo....
    intanto potresti darmi una dritta sulla risposta che ho dato sopra?
    denghiuuu
    citru(llu)s

  10. #10



    mkinitrd - Creates an initial ramdisk image for preloading modules


    Mkinitrd creates filesystem images for use as initial ramdisk (initrd) images. These ramdisk images are often used to preload the block device modules (SCSI or RAID) needed to access the root filesystem. In other words, generic kernels can be built without drivers for any SCSI adapters which load the SCSI driver as a module. Since the kernel needs to read those modules, but in this case it isn't able to address the SCSI adapter, an initial ramdisk is used. The initial ramdisk is loaded by the operating system loader (normally LILO) and is available to the kernel as soon as the ramdisk is loaded. The ramdisk loads the proper SCSI adapter and allows the kernel to mount the root filesystem.

    se hai sata specialmente ci vuole initrd

    quando ricompili controlla con esattezza con ls -l /boot come sta la situazione prima di riavviare

    :quipy: metti lilo che è piu semplice mentre installi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.