Slackware, Debian & Lilo

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
tom
Packager
Packager
Messaggi: 407
Iscritto il: dom 1 nov 2009, 12:53
Nome Cognome: Tommaso D'Anna
Slackware: 13.37
Kernel: 2.6.37.6
Desktop: xfce

Re: Slackware, Debian & Lilo

Messaggio da tom »

414N ha scritto:
tasodan ha scritto:@414N: la partizione di debian viene montata su deb5 dal sistema operativo slackware, cioè solo dopo che quest'ultimo è stato avviato. All'accensione del computer, quando nessun SO è avviato e gli unici protagonisti sono il bios ed il bootloader, NESSUNA partizione è montata da nessuna parte.
Certo. Ma quando lanci lilo (da qualunque sistema operativo), esso installa/copia l'immagine in modo da non doverla andare a cercare in una partizione all'avvio della macchina. Percui quel che dici è sbagliato.
Già, peccato che quell'immagine di cui parli lilo non l'ha mai vista, visto che debian non è stato mai bootato, e quindi non l'ha mai copiata, quindi ciò che dici tu imho è sbagliato :p

PS: spero tu non ti stia arrabbiando, ovviamente ti faccio le mie scuse in anticipo se fortea mi dà torto :D

fortea
Linux 0.x
Linux 0.x
Messaggi: 24
Iscritto il: gio 15 lug 2010, 14:00
Slackware: 13.0
Kernel: 2.6.29.6
Desktop: fluxbox

Re: Slackware, Debian & Lilo

Messaggio da fortea »

adesso proverò, solo una cosa non capisco, anche se sicuramente è giusta perchè lo dicono tutti anche in giro per i vari blog: perchè bisogna ridare il comando lilo -v?

Avatar utente
matzu
Linux 2.x
Linux 2.x
Messaggi: 217
Iscritto il: dom 20 set 2009, 2:26
Nome Cognome: Franco
Slackware: 64-13.37 13.1
Kernel: generic
Desktop: kde

Re: Slackware, Debian & Lilo

Messaggio da matzu »

Scusate, ma se installo lilo o grub in un sistema multiboot linux, il file di configurazione (grub.cfg per grub2, menu.lst per grub legacy o lilo.conf per lilo) dev'essere lo stesso indipendentemente dal fatto che installi il boot loader da uno qualsiasi dei sistemi presenti sulla macchina. Nella fattispecie lilo.conf deve essere lo stesso sia che installi lilo da debian sia che lo installi da slackware, e dunque non deve contenere condizioni di compatibilità specifiche del filesystem del sistema slackware (per esempio) da cui lo installo eccetto, ovviamente, che per il blocco di istruzioni che serve ad avviare slackware.

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2923
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Slackware, Debian & Lilo

Messaggio da 414N »

tasodan ha scritto: Già, peccato che quell'immagine di cui parli lilo non l'ha mai vista, visto che debian non è stato mai bootato, e quindi non l'ha mai copiata, quindi ciò che dici tu imho è sbagliato :p
Non vedo cosa cambi dal punto di vista di lilo il fatto che Debian sia stato mai avviato o meno. Ripeto: quando lanci lilo (indipendentemente dalla distribuzione ospite), l'importante è che tutte le immagini indicate nel file /etc/lilo.conf (o nel file indicato con l'opzione -C) siano effettivamente accessibili, pena errori vari di lilo, che non porterà a termine l'installazione delle immagini e non modificherà il MBR.
Tempo fa avevo installati nel mio sistema sia Slackware64 13.0 che Slamd64 12.2, ovviamente in due partizioni diverse. Nel lilo.conf di Slackware64 13.0, puntavo all'immagine del kernel Slamd64 tramite una riga del tipo:

Codice: Seleziona tutto

image = /mnt/Slamd/boot/vmlinuz
mentre da Slamd64 puntavo ai kernel di Slackware64 tramite righe del tipo:

Codice: Seleziona tutto

image = /mnt/Slack13/boot/vmlinuz
Ovviamente, le due partizioni dovevano essere montate in quei mount point perché lilo si installasse correttamente in entrambi i casi. Questo significa che, se si adotta lilo e non si ricorre ad una partizione /boot univoca per tutti i sistemi *NIX installati, ogni sistema avrà un lilo.conf leggermente diverso dagli altri per quanto concerne dove trovare le varie immagini, che saranno disponibili su mount point differenti a seconda del sistema avviato.
tasodan ha scritto: PS: spero tu non ti stia arrabbiando, ovviamente ti faccio le mie scuse in anticipo se fortea mi dà torto :D
Ce ne vuole per farmi arrabbiare :p
Non preoccuparti.

tom
Packager
Packager
Messaggi: 407
Iscritto il: dom 1 nov 2009, 12:53
Nome Cognome: Tommaso D'Anna
Slackware: 13.37
Kernel: 2.6.37.6
Desktop: xfce

Re: Slackware, Debian & Lilo

Messaggio da tom »

allora, mi spiego subito: /deb5 è una directory che sta dentro /dev/sda1 e non /dev/sda2. Tutto qui. Quindi poichè 'lilo -v' è stato lanciato con i parametri sbagliati

Codice: Seleziona tutto

image = /deb5/vmlinuz
root = /dev/sda2
Non ha mai trovato /deb5/vmlinuz (che come dicevo prima, si trova dentro /dev/sda1).
Dunque la modifica da fare al lilo.conf è questa

Codice: Seleziona tutto

image = /vmlinuz
root = /dev/sda2
oppure quest'altra

Codice: Seleziona tutto

image = /deb5/vmlinuz
root = /dev/sda1
Io ho suggerito la prima delle due perché mi pare più pulita (andava bene anche l'altra), ma una qualche modifica deve esser fatta.

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2923
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Slackware, Debian & Lilo

Messaggio da 414N »

matzu ha scritto:Scusate, ma se installo lilo o grub in un sistema multiboot linux, il file di configurazione (grub.cfg per grub2, menu.lst per grub legacy o lilo.conf per lilo) dev'essere lo stesso indipendentemente dal fatto che installi il boot loader da uno qualsiasi dei sistemi presenti sulla macchina. Nella fattispecie lilo.conf deve essere lo stesso sia che installi lilo da debian sia che lo installi da slackware, e dunque non deve contenere condizioni di compatibilità specifiche del filesystem del sistema slackware (per esempio) da cui lo installo eccetto, ovviamente, che per il blocco di istruzioni che serve ad avviare slackware.
Non è possibile, a meno di non avere una partizione /boot separata che tutti i sistemi montino in /boot. In questo caso, i vari file di configurazione saranno identici da una distro all'altra.
tasodan ha scritto:allora, mi spiego subito: /deb5 è una directory che sta dentro /dev/sda1 e non /dev/sda2. Tutto qui. Quindi poichè 'lilo -v' è stato lanciato con i parametri sbagliati

Codice: Seleziona tutto

image = /deb5/vmlinuz
root = /dev/sda2
Non ha mai trovato /deb5/vmlinuz (che come dicevo prima, si trova dentro /dev/sda1).
Dunque la modifica da fare al lilo.conf è questa

Codice: Seleziona tutto

image = /vmlinuz
root = /dev/sda2
oppure quest'altra

Codice: Seleziona tutto

image = /deb5/vmlinuz
root = /dev/sda1
Io ho suggerito la prima delle due perché mi pare più pulita (andava bene anche l'altra), ma una qualche modifica deve esser fatta.
Quindi, se non ho capito male da quest'ultimo intervento, secondo te lilo va a cercare un'immagine nel percorso [root]/[image], indicando con [root] ed [image] i contenuti dei due parametri omonimi nel file di configurazione?
Non funziona così.
Nel parametro image deve essere specificato il percorso attuale del file contenente l'immagine del kernel. Nel parametro root, deve essere indicata la partizione che il sistema deve montare come /. Non c'entra nulla con la ricerca dell'immagine da parte di lilo. Lo puoi anche verificare al volo: prova a cambiare il parametro root nella sezione di lilo.conf che avvia il tuo kernel di default e a lanciare lilo. Non ti darà nessun errore (sempre che la partizione indicata esista), ma, se provi ad avviare il sistema, ti renderai conto che ha scelto come / la root che gli hai indicato nel file di configurazione, giusta o sbagliata che sia. Il parametro root può essere anche specificato a mano nella riga di comando del kernel all'avvio, in modo da "riparare" al volo ad errori del genere o, tanto per dirne un'altra, per permetterti di far partire il tuo sistema installato dal disco di installazione di Slackware nel caso qualcosa vada storto con lilo.

Avatar utente
matzu
Linux 2.x
Linux 2.x
Messaggi: 217
Iscritto il: dom 20 set 2009, 2:26
Nome Cognome: Franco
Slackware: 64-13.37 13.1
Kernel: generic
Desktop: kde

Re: Slackware, Debian & Lilo

Messaggio da matzu »

414N ha scritto:Non è possibile
L'ho appena fatto, con grub (non so se sia diverso con lilo ma sarebbe strano **). Due installazioni slack 13.1 su /dev/sda2 e /dev/sda3, lo stesso menu.lst copiato pari pari in /boot/grub di entrambe le installazioni. Il bootloader funziona correttamente dopo aver eseguito 'grub-install /dev/sda' sia da un sistema che dall'altro.

** edit: in effetti per lilo.conf il discorso è diverso quantomeno nello specificare il device d'installazione del bootloader, cosa che viene fatta nella riga di comando all'esecuzione di 'grub-install' ma non di 'lilo' (dunque sarà specificato nel conf)

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2923
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Slackware, Debian & Lilo

Messaggio da 414N »

matzu ha scritto:
414N ha scritto:Non è possibile
L'ho appena fatto, con grub (non so se sia diverso con lilo ma sarebbe strano **). Due installazioni slack 13.1 su /dev/sda2 e /dev/sda3, lo stesso menu.lst copiato pari pari in /boot/grub di entrambe le installazioni. Il bootloader funziona correttamente dopo aver eseguito 'grub-install /dev/sda' sia da un sistema che dall'altro.
Beh, con due sistemi "gemelli" per forza funziona. Anche se avvi la Slackware su sda3 col kernel della sda2 o viceversa (cosa che succede fisiologicamente se usi lo stesso file per entrambe le distro), non te ne rendi conto. Prova a compilare ed installare un kernel diverso da quello presente in entrambe le partizioni su una di esse (poniamo sda2) ed aggiorna grub sempre dalla Slackware 13.1 su sda2. Vedrai le differenze.
@fortea: ti chiedo scusa, ma mi sono accorto solo ora rileggendo tutto il thread del messaggio che avevi riportato nel tuo primo post, ovvero quello riguardante l'errore "sputato" dal kernel Debian all'avvio: "Unable to mount root partition". Non avendolo notato in prima battuta, pensavo che lilo ti desse un'errore.
Probabilmente, il kernel che hai installato di Debian è simile al generic di Slackware, cioè non ha built-in la stragrande maggioranza di moduli necessari all'avvio del sistema, ma, piuttosto, necessita di una initrd contenente i moduli da caricare all'avvio.
Per saperlo, analizza il file di configurazione di grub su Debian (sempre che il processo di installazione lo abbia popolato) . Se lavori da Slackware (come presumo), lo dovresti trovare in /deb5/boot/grub/menu.lst. Guarda se la voce inerente Debian riporta un'opzione initrd.
In caso affermativo, non ti resta che aggiungere una riga equivalente al lilo.conf di Slackware (avendo premura di aggiustare il percorso della initrd in modo che lilo la trovi) e rilanciare lilo. Al riavvio successivo, Debian dovrebbe partirti.

fortea
Linux 0.x
Linux 0.x
Messaggi: 24
Iscritto il: gio 15 lug 2010, 14:00
Slackware: 13.0
Kernel: 2.6.29.6
Desktop: fluxbox

Re: Slackware, Debian & Lilo

Messaggio da fortea »

innanzitutto, scusate la mia assenza, sono stato piuttosto impegnato. Comunque lilo -v mi da il seguente output

Codice: Seleziona tutto

LILO version 22.8, Copyright (C) 1992-1998 Werner Almesberger
Development beyond version 21 Copyright (C) 1999-2006 John Coffman
Released 19-Feb-2007 and compiled at 12:48:48 on Feb 27 2009.

Reading boot sector from /dev/sda
Using MENU secondary loader
Calling map_insert_data
Mapping message file /boot/boot_message.txt
Calling map_insert_file

Boot image: /boot/vmlinuz -> vmlinuz-huge-2.6.29.6
Added S13.0 *

Boot image: /deb5/boot/vmlinuz-2.6.26-2-amd64
Added Deb5

Writing boot sector.
/boot/boot.0800 exists - no boot sector backup copy made.
Ho cambiato, ma solo per scrupolo, il link al kernel e indirizzato Lilo direttamente al kernel, ooviamente non cambia nulla.
Potrebbe essere che il file boot.0800 esistesse già quando Lilo era configurato per slack 13.0 e slack 12.2 e che dunque, anche facendo girare il Lilo (che io ho sempre lanciato senza l'opzione verbose e quindi non mi sono mai accorto di questo), il file non sia stato riscritto? Magari sembra una cavolata, ma non capisco cosa sia di preciso quel file... contiene l'immagine dei settori bootabili?
414N ha scritto: Per saperlo, analizza il file di configurazione di grub su Debian (sempre che il processo di installazione lo abbia popolato) . Se lavori da Slackware (come presumo), lo dovresti trovare in /deb5/boot/grub/menu.lst. Guarda se la voce inerente Debian riporta un'opzione initrd.
In caso affermativo, non ti resta che aggiungere una riga equivalente al lilo.conf di Slackware (avendo premura di aggiustare il percorso della initrd in modo che lilo la trovi) e rilanciare lilo. Al riavvio successivo, Debian dovrebbe partirti.
per puntualizzare, l'unico file che ho trovato (usando find) è in /deb5/usr/share/doc/grub/examples/menu.lst.
In ogni caso, l'unica riga contenente "initrd"è sotto "For booting GNU/Linux" e dice:

Codice: Seleziona tutto

$ grep initrd menu.lst 
#initrd /initrd.img
Però, appunto, è commentata. Che faccio,la utilizzo lo stesso?

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2923
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Slackware, Debian & Lilo

Messaggio da 414N »

fortea ha scritto: Potrebbe essere che il file boot.0800 esistesse già quando Lilo era configurato per slack 13.0 e slack 12.2 e che dunque, anche facendo girare il Lilo (che io ho sempre lanciato senza l'opzione verbose e quindi non mi sono mai accorto di questo), il file non sia stato riscritto? Magari sembra una cavolata, ma non capisco cosa sia di preciso quel file... contiene l'immagine dei settori bootabili?
Ho fatto una veloce ricerca al volo e sembra che il file boot.0800 sia il backup del boot sector. Ha senso che se lilo ne trovi già uno, non lo sovrascriva.
fortea ha scritto: per puntualizzare, l'unico file che ho trovato (usando find) è in /deb5/usr/share/doc/grub/examples/menu.lst.
Come si può capire dal path, quello è solo un file di esempio per grub.
Dato che non sono molto dimestico di grub, controlla se c'è una initrd in /deb5/boot, che facciamo prima ;)
Se sì, aggiungila alla voce di lilo riguardante Debian come ti ho scritto nel precedente post.

Avatar utente
matzu
Linux 2.x
Linux 2.x
Messaggi: 217
Iscritto il: dom 20 set 2009, 2:26
Nome Cognome: Franco
Slackware: 64-13.37 13.1
Kernel: generic
Desktop: kde

Re: Slackware, Debian & Lilo

Messaggio da matzu »

Sempre solo su grub, ho provato con Slackware 11 (con kernel standard vmlinuz-ide-2.4.33.3) su partizione 1 e Debian 5 sulla 2. Il menu.lst per entrambe, copiato da una all'altra, è questo:

Codice: Seleziona tutto

title Slackware 11
root (hd0,0)
kernel /boot/vmlinuz root=/dev/hda1 ro vga=788 

title Debian 5
root (hd0,1)
kernel /boot/vmlinuz-2.6.26-2-686 root=UUID=400af743-641c-43af-bd29-faf503342a34 ro vga=788  
initrd /boot/initrd.img-2.6.26-2-686
Da entrambe ho eseguito 'grub-install /dev/hda' e poi avviato e loggato in ciascuno dei due sistemi.

Un mancato funzionamento al primo tentativo quando installavo grub da Slackware (senza messaggi di errore). Avviavo Slackware ma non Debian. Il messaggio era:

Error 2 : bad file or directory type

La partizione 2 era formattata ext3 dall'installer di Debian (l'ultima attuale release stable). L'ho riformattata da Slackware, sempre ext3, e reinstallato Debian su quella formattazione, ed è andato tutto a posto. Avevo anche provato Debian 5 con Mandrake 9, e anche lì errore, di altro tipo. Perciò ho provato almeno con due distro che avessero la stessa versione di grub, anche se non sono certo che quella fosse la causa.

Sicuramente non è utilizzabile come regola (senza conoscere tutti i motivi dei fallimenti) quello che dicevo inizialmente. Comunque il metodo che ha funzionato ha due distro diverse con kernel 2.4.x e 2.6.x, dove la situazione non è come con Slackware 13.1 in ambo le partizioni.

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2923
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Slackware, Debian & Lilo

Messaggio da 414N »

@matzu: adesso ho capito. Tramite un piccolo abuso di notazione (il parametro root(hdX,Y) sarebbe destinato al solo file grub.conf) è possibile fare in GRUB quello che tasodan sostiene si faccia anche col parametro root in LILO, ovvero puntare direttamente ad una partizione senza che sia necessariamente montata.

fortea
Linux 0.x
Linux 0.x
Messaggi: 24
Iscritto il: gio 15 lug 2010, 14:00
Slackware: 13.0
Kernel: 2.6.29.6
Desktop: fluxbox

Re: Slackware, Debian & Lilo

Messaggio da fortea »

Ho aggiunto il comando initrd a lilo.conf. Ora appare così:

Codice: Seleziona tutto

image = /deb5/vmlinuz
root = /dev/sda2
initrd=/deb5/initrd.img
label = Deb5
read-only
Non è cambiato quasi nulla. L'unica cosa, se può essere utile, è che Lilo impiega più tempo per caricare Debian, cioè compaiono più puntini al momento del loading.
Comunque penso che siamo sulla strada giusta perchè lanciando Debian uno degli errori dati è "RAMDISK: Couldn´t find valid RAM disk image starting at 0"

Provo a rigenerare il file initrd usando mkinitrd? ma si può fare per un kernel presente su un'altra partizione?

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2923
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Slackware, Debian & Lilo

Messaggio da 414N »

Ma quel file initrd indicato (/deb5/initrd) esiste o te lo sei inventato sul momento? Lilo che cosa dice al momento di dare lilo -v?
L'errore del sistema al boot sembra proprio riguardare un initrd non trovato...
Per la storia dei puntini, prova a decommentare l'opzione compact che trovi all'inizio del lilo.conf.
Per quanto riguarda la generazione di un initrd: no, non lo puoi fare su Slackware se usa un kernel diverso da Debian.

fortea
Linux 0.x
Linux 0.x
Messaggi: 24
Iscritto il: gio 15 lug 2010, 14:00
Slackware: 13.0
Kernel: 2.6.29.6
Desktop: fluxbox

Re: Slackware, Debian & Lilo

Messaggio da fortea »

Ringrazio tutti per l'aiuto, in particolare 414N.

Visto che il problema non c'entra con Slackware, sposto la discussione su un forum più consono. Per chi fosse interessato, questo è il link alla pagina.

Rispondi