figulus
17-06-2005, 13:00
Da due giorni sono seduto davanti al mio notebook, e ho già perso molti capelli...
Obiettivo: Installare un kernel 2.6.11 con bootsplash e hibernate (swsusp2). Sembra impossibile.
Ma andiamo con ordine.
Sia bootsplash che swsusp2 richiedono una patch del kernel.
Prima giornata persa: nessuno me lo aveva detto ma queste patch NON sono compatibili con quelle applicate da debian ai propri kernel, dunque apt-gettare i sorgenti del kernel porta solo all'esaurimento nervoso.
Soluzione: scaricare i sorgenti "puliti" da kernel.org (nel mio caso 2.6.11-12).
Finalmente le patch si applicano senza Hunk, primo successo.
Adesso possiamo passare alla configurazione del kernel. Cominciamo da bootsplash: sul sito dicono che uno può mettere il supporto (necessariamente in built-in) al proprio framebuffer preferito. Non è vero. Se non si mette vesafb non si può neanche attivare il supporto a bootsplash. Se metti vesafb E radeonfb il bootsplash non partirà...
Io ho uno schermo 1400x1050, ma il framebuffer funziona SOLO a 1024x768. Ok, non è grave, ma almeno ditemi che devo mettere il supporto SOLO a VGA 8x16 in console, perché se metto ANCHE quello a 8x8 i caratteri risultano troppo grandi, e non ho capito come si fa poi a kernel avviato a cambiare configurazione dei caratteri in console (qualcuno lo sa?).
Il bootsplash richiede initrd, quindi bisogna attivarne il supporto nel kernel E non dimenticarsi di ricompilare con make-kpkg --initrd.
Ok, adesso il kernel è ricompilato. Bisogna installarlo. Io non so se sia un bug, ma di sicuro è MOLTO fastidioso: dpkg -i installa il kernel e SOVRASCRIVE il menu.lst di grub. Avete appena perso tutti i parametri di avvio dei vostri kernel, ed eventualmente anche windows. E vai di tastiera per modificare menu.lst (alla fine l'avrò fatto molte volte).
Ora si possono apt-gettare dei temi e tramite un
dpkg-reconfigure bootsplash
selezionare il proprio tema preferito da applicare al proprio initrd appena creato. Non sempre funziona. Passare da un tema all'altro è una lotteria, anche usando il comando splash. Può capitare che vi faccia l'avvio con un tema e lo shutdown con un altro!
Ultima osservazione, per avere il verbose in avvio altra soluzione non vi è che scrivere testualmente sulla riga del kernel in menu.lst
append="splash=verbose",
tanto al prossimo kernel che ricompilate dpkg vi cancella tutto...
Ma almeno, a parte caratteri enormi e/o illegibili, funziona...
Passiamo a swsusp2... Qui la cosa diventa complicatuccia... In primo luogo il rapporto tra swsusp2 e initrd non è dei migliori. Esiste uno script fatto da un debianista che va messo in /etc/mkinitrd/script, poi gli vanno cambiati il nome e i permessi, e poi... non funziona. Ovviamente dovete ricompilare l'initrd, pensate, ma non cambia nulla.
Bisogna poi procurarsi hibernate, io l'ho apt-gettato. Si passa ad un test in modalità testuale, senza X. L'ibernazione funziona, ma al riavvio kernel panic.
Basta decido di fare due kernel, uno con initrd e bootsplash, l'altro senza initrd e con swsusp2. Adesso ci siamo. Ibernazione senza problemi, ma alla riesumazione uhci-hcd provoca un errore di sistema, che diventa inutilizzabile.
Dopo una ricerca su google leggo che bisogna, prima di ibernare, scaricare tutti i moduli dell'usb. Ma come ? E secondo loro io perdo meno tempo a scaricare e ricaricare tutti sti moduli (a parte per dare i comandi, per quello basta uno script, ma quando li ricarichi ti fa lo scanning di tutte le porte usb del sistema e questo prende un sacco di tempo), che a riavviare il sistema???
Ma tant'è. Decido che voglio andare fino in fondo. Ricompilo il kernel mettendo come moduli le voci relative all'usb (e ancora na volta dpkg ti cancella gli append di menu.lst!). Adesso il kernel si riesuma: miracolo. Ho ibernato e riesumato il sistema. Riavvio e lancio windows, per vedere se il dual boot ancora funziona...... nisba. Winzozz non si avvia.
Riaccendo la macchina e rilancio il kernel appena ricompilato. Ma all'avvio di startx, scopro la magagna. Ricompilando il supporto all'usb come moduli, ANCHE SE TUTTI I MODULI SONO CARICATI, X non parte. Motivo: il sistema non trova il touchpad Synaptics che è settato come core device.
Insomma, ma io non posso perdere la mia vita così!!!! Nota sarcastica: sono cose che in windows xp funzionano perfettamente da quando è uscito, cioè ormai quasi 4 anni. Come è possibile che Linus ancora non ci faccia avere un'ibernazione stabile?
Obiettivo: Installare un kernel 2.6.11 con bootsplash e hibernate (swsusp2). Sembra impossibile.
Ma andiamo con ordine.
Sia bootsplash che swsusp2 richiedono una patch del kernel.
Prima giornata persa: nessuno me lo aveva detto ma queste patch NON sono compatibili con quelle applicate da debian ai propri kernel, dunque apt-gettare i sorgenti del kernel porta solo all'esaurimento nervoso.
Soluzione: scaricare i sorgenti "puliti" da kernel.org (nel mio caso 2.6.11-12).
Finalmente le patch si applicano senza Hunk, primo successo.
Adesso possiamo passare alla configurazione del kernel. Cominciamo da bootsplash: sul sito dicono che uno può mettere il supporto (necessariamente in built-in) al proprio framebuffer preferito. Non è vero. Se non si mette vesafb non si può neanche attivare il supporto a bootsplash. Se metti vesafb E radeonfb il bootsplash non partirà...
Io ho uno schermo 1400x1050, ma il framebuffer funziona SOLO a 1024x768. Ok, non è grave, ma almeno ditemi che devo mettere il supporto SOLO a VGA 8x16 in console, perché se metto ANCHE quello a 8x8 i caratteri risultano troppo grandi, e non ho capito come si fa poi a kernel avviato a cambiare configurazione dei caratteri in console (qualcuno lo sa?).
Il bootsplash richiede initrd, quindi bisogna attivarne il supporto nel kernel E non dimenticarsi di ricompilare con make-kpkg --initrd.
Ok, adesso il kernel è ricompilato. Bisogna installarlo. Io non so se sia un bug, ma di sicuro è MOLTO fastidioso: dpkg -i installa il kernel e SOVRASCRIVE il menu.lst di grub. Avete appena perso tutti i parametri di avvio dei vostri kernel, ed eventualmente anche windows. E vai di tastiera per modificare menu.lst (alla fine l'avrò fatto molte volte).
Ora si possono apt-gettare dei temi e tramite un
dpkg-reconfigure bootsplash
selezionare il proprio tema preferito da applicare al proprio initrd appena creato. Non sempre funziona. Passare da un tema all'altro è una lotteria, anche usando il comando splash. Può capitare che vi faccia l'avvio con un tema e lo shutdown con un altro!
Ultima osservazione, per avere il verbose in avvio altra soluzione non vi è che scrivere testualmente sulla riga del kernel in menu.lst
append="splash=verbose",
tanto al prossimo kernel che ricompilate dpkg vi cancella tutto...
Ma almeno, a parte caratteri enormi e/o illegibili, funziona...
Passiamo a swsusp2... Qui la cosa diventa complicatuccia... In primo luogo il rapporto tra swsusp2 e initrd non è dei migliori. Esiste uno script fatto da un debianista che va messo in /etc/mkinitrd/script, poi gli vanno cambiati il nome e i permessi, e poi... non funziona. Ovviamente dovete ricompilare l'initrd, pensate, ma non cambia nulla.
Bisogna poi procurarsi hibernate, io l'ho apt-gettato. Si passa ad un test in modalità testuale, senza X. L'ibernazione funziona, ma al riavvio kernel panic.
Basta decido di fare due kernel, uno con initrd e bootsplash, l'altro senza initrd e con swsusp2. Adesso ci siamo. Ibernazione senza problemi, ma alla riesumazione uhci-hcd provoca un errore di sistema, che diventa inutilizzabile.
Dopo una ricerca su google leggo che bisogna, prima di ibernare, scaricare tutti i moduli dell'usb. Ma come ? E secondo loro io perdo meno tempo a scaricare e ricaricare tutti sti moduli (a parte per dare i comandi, per quello basta uno script, ma quando li ricarichi ti fa lo scanning di tutte le porte usb del sistema e questo prende un sacco di tempo), che a riavviare il sistema???
Ma tant'è. Decido che voglio andare fino in fondo. Ricompilo il kernel mettendo come moduli le voci relative all'usb (e ancora na volta dpkg ti cancella gli append di menu.lst!). Adesso il kernel si riesuma: miracolo. Ho ibernato e riesumato il sistema. Riavvio e lancio windows, per vedere se il dual boot ancora funziona...... nisba. Winzozz non si avvia.
Riaccendo la macchina e rilancio il kernel appena ricompilato. Ma all'avvio di startx, scopro la magagna. Ricompilando il supporto all'usb come moduli, ANCHE SE TUTTI I MODULI SONO CARICATI, X non parte. Motivo: il sistema non trova il touchpad Synaptics che è settato come core device.
Insomma, ma io non posso perdere la mia vita così!!!! Nota sarcastica: sono cose che in windows xp funzionano perfettamente da quando è uscito, cioè ormai quasi 4 anni. Come è possibile che Linus ancora non ci faccia avere un'ibernazione stabile?