# installare gentoo da gentoo (Risolto)

## ficofico

Ciao a tutti, dopo aver installato e configurato di tutto e di piu' sulla mia gentoo amd64, ho deciso che ne voglio un'altra.... ahahah

prima un po' di dati

fstab

/dev/sda1		/boot		ext2		noauto,noatime	1 2

/dev/sda3		/		ext3		noatime		0 1

/dev/sda2		none		swap		sw		0 0

/dev/sdb2               /               xfs             noatime         0 1

/dev/hdc		/mnt/cdrom	auto		noauto,users	0 0

/dev/fd0		/mnt/floppy	auto		noauto		0 0

Ho due dischi, su uno c'e' installato gentoo con boot, swap e root (sda) , mentre sull'altro (sdb) c'era solo winxp e adesso tramite gparted ho creato una partizione da 15 giga filesystem xfs che ho impostato come potete vedere in fstab come root

la mia idea e' chiaramente quella di sfruttare boot e swap del disco sda e la root del disco sdb per avere la mia nuova gentoo su filesystem xfs ( questa volta prova la versione i686)......... vorrei fare tutto lasciando il pc acceso sulla mia attuale gentoo, e tramite chroot lavorare in una shell e creare il mio nuovo sistema.............. chiaramente pero' c'e qualcosa che non va' perche' se provo ad accedere alla sdb2 e a montarla mi dice che root e' gia' montata su sdb3 ovviamente, chiedo lumi, cosa devo fare?

Forse da qualche parte ho letto che non e' possibile fare chroot da un sistema a 64 bit in uno a 32 bit......... confermate che invece si tratta del contrario?

Il kernel che uso sulla gentoo abituale e' configurato per il filesystem xfs, e gparted tramite xfsprogs ha creato tranquillamente la partizione xfs sul secondo disco...Last edited by ficofico on Mon Sep 22, 2008 6:46 pm; edited 1 time in total

----------

## cloc3

 *ficofico wrote:*   

> 
> 
> Forse da qualche parte ho letto che non e' possibile fare chroot da un sistema a 64 bit in uno a 32 bit......... confermate che invece si tratta del contrario?
> 
> 

 

certo che confermiamo.

per fare chroot da 64 a 32 è raccomandabile l'uso dell'istruzione linux32 (vedi guida ufficiale), ma ciò non basta a spiegare il tuo fenomeno.

probabilmente è meglio se accompagni la descrizione del tuo problema con un taglia incolla di un mount e del comando esatto che ti blocca, con l'output di errore.

----------

## ficofico

 *Quote:*   

> The partition could not be unmounted from the following mountpoints:
> 
> /
> 
> Most likely other partitions are also mounted on these mountpoints. You are advised to unmount them manually.

 Questo e' un errore di gparted , ora devo scappare

----------

## Onip

monta sdb2 da un'altra parte che non sia / e poi fai il chroot. E' la stessa cosa che si fa durante l'installazione 'normale' si monta la futura root in /mnt/gentoo e si chroota lì.

----------

## ficofico

Ok ho capito, pero' ho bisogno di piu' info, vi spiego quello che vorrei...

Vorrei un sistema operativo bootabile nel piu' breve tempo possibile e piu' scattante di quello che ho attualmente ( non che non mi vada bene quello che ho adesso, pero' diciamo che voglio perseguire questo obiettivo), per questo ho scelto xfs come filesystem, pero' mi sta' venendo in mente che dovrei posizionare il kernel nella root a questo punto, e non nella boot che e' formattata ext2.

quindi dovrei far coesistere un grub che possa 

prendere dalla boot in sda1 il kernel per gentoo amd64 

prendere dalla sdb2 il kernel per la gentoo i686 veloce

prendere dalla sdb1 winxp

Quindi a questo punto farei un schema fstab di questo tipo.... 

/dev/sda1 /boot ext2 noauto,noatime 1 2 

/dev/sda3 / ext3 noatime 0 1 

/dev/sda2 none swap sw 0 0 

/dev/sdb2 /mnt/gentoo_i686 xfs noatime 0 1 

/dev/hdc /mnt/cdrom auto noauto,users 0 0 

/dev/fd0 /mnt/floppy auto noauto 0 0

monterei la partizione e poi seguirei dal punto 5 dell'handbook

mount /dev/sdb2 /mnt/gentoo_i686

cd  /mnt/gentoo_i686

Tutto giusto? pero' non posso farlo perche' sto usando una versione amd64? oppure si puo' con qualche stratagemma?

Sono un po' nubbio in queste cose, se c'e' qualcosa di sbagliato potreste indicarmi a punti cosa dovrei fare per favore, se no non me la cavo piu'... ahahahah...... 

Oltretutto io sono un mago nell'usare genkernel, e so' compilare il kernel solo cosi', so che sposta automaticamente i file nella boot, pero' io non voglio che vadano nella boot, ma voglio che vadano nella sdb2 aka /men/gentoo_i686( la futura root), come devo comportarmi?

qui c'e' il mio menu.lst di grub

title=Gentoo Linux (2.6.26-gentoo-r1)

root (hd0,0)

kernel /boot/kernel-genkernel-x86_64-2.6.26-gentoo-r1 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3 udev 1280x1024-16@60 vga=0x31A splash=silent,theme:prof console=tty1 quiet

initrd /boot/initramfs-genkernel-x86_64-2.6.26-gentoo-r1

title=Gentoo Linux (2.6.25.4)

root (hd0,0)

kernel /boot/kernel-genkernel-x86_64-2.6.25.4 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3 udev 1280x1024-16@60 vga=0x31A splash=silent,theme:prof console=tty1 quiet

initrd /boot/initramfs-genkernel-x86_64-2.6.25.4

title Windows

map (hd0) (hd1)

map (hd1) (hd0)

chainloader (hd1,0)+1

GRAZIE.

----------

## Onip

non credo che tu abbia afferrato bene.

Il mount in una dir che non sia / ti serve nel sistema a 64 per montare la partizione e fare chroot, fine. Puoi addirittura non mettere niente in fstab a riguardo, tanto una volta finita l'installazione non ti servirà più.

Fatta l'installazione (segui l'handbook) basta mettere nel menu di grub due voci in modo che il kernel a 64 abbia la voce real_root che punti alla partizione del sistema a 64, mentre per il sistema a 32 punti a sdb2.

Infine il posto dov'è il kernel non cambia le prestazioni per niente, tanto quello viene caricato (in memoria) all'avvio e poi più. sul mio sistema la partizione di boot è addirittura smontata e funziona tutto benissimo.

L'unico dubbio che ho è se grub ( o lilo) possano far partire kernel per architetture differenti, ma qui devi sentire il parere di qualcuno più esperto

----------

## ficofico

Purtroppo genkernel non riesce a compilare un kernel a 32 bit sfruttando il chroot da un sistema a 64 bit, quindi sto facendo da slax......... , quindi mi dici che non cambia niente posizionare il kernel in un file system piuttosti di un altro, quindi penso propenderò per la boot in sda1....... Oltre a  baselayout-2.0 e disattivare il full hid nel kernel, che accorgimenti potrei fare per rendere ancora più veloce l'avvio del sistema? Non voglio aggiungere ne dbus ne hald ad esempio, proprio il sistema più minimale possibile

----------

## cloc3

 *ficofico wrote:*   

> Purtroppo genkernel non riesce a compilare un kernel a 32 bit sfruttando il chroot da un sistema a 64 bit

 

 :Question: 

se ti piace slax, va benissimo.

ma genkernel, che colpa ne ha?

hai montato correttamente la /proc ed hai usato il comando linux32 ?

----------

## ficofico

mmm no, forse è per quello quindi che non riuscivo a creare il kernel.......... cmq ho un problema, ho creato il kernel che mi ha messo in :

/etc/kernels/kernel-config-x86-2.6.26-gentoo-r1

il problema è che di solito genkernel mi crea l'initramfs, il kernel e il system.map, che mette automaticamente nella boot ( sda1), e questa volta invece non li ha creati, io posso indirizzare tranquillamente in root (hd 0,1) così da accedere al secondo disco, però come initrd cosa metto?

----------

## djinnZ

/etc/kernels/kernel-config-x86-2.6.26-gentoo-r1 è solo la configurazione che genkernel si è salvato, il kernel e l'initrd sono in /boot.

Sulla 64 non ci lavoro quindi vado a memoria (notoriamente scarsa) ma se non ricordo male per compilare un kernel a 32 bit da un chroot a 64 si doveva impostare una variabile ambiente, altrimenti il make pretende sempre di essere su un sistema a 64b bit.

----------

## ficofico

ma nel boot non ci sono, non è che devo creare per forza una partizione di boot nel secondo disco, quello che contiene la nuova installazione di gentoo?

----------

## cloc3

 *ficofico wrote:*   

> ma nel boot non ci sono, non è che devo creare per forza una partizione di boot nel secondo disco, quello che contiene la nuova installazione di gentoo?

 

la cosa migliore è riferirsi a un manuale specifico.

questa è la guida ufficiale.

e questi - due sono topic specifici sul tuo problema, presenti nella documentazione del forum. ti assicuro che sono ottimi.

----------

## ficofico

Ok grazie mille, sto tirando su piano piano il nuovo sistema

----------

## ficofico

Un dubbio:

Ho montato la mia sdb2 sotto /mnt/gentoo_i686 

Usando genkernel ho compilato il mio bel kernel a 32 bit con supporto ad xfs e ext2, ora posso mettere il kernel, initramsf e system.map sia sotto 

/mnt/gentoo_i686/boot

oppure sotto /boot come tutti gli altri miei kernel a 64 bit.... pero' c'e' un problema ovviamente... non riesco a far partire il kernel

se imposto cosi' il menu.lst

title=Gentoo Linux (2.6.26-gentoo-r1)

root (hd0,0)

kernel /boot/kernel-genkernel-x86_64-2.6.26-gentoo-r1 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3 udev 1280x1024-16@60 vga=0x31A splash=silent,theme:prof console=tty1 quiet

initrd /boot/initramfs-genkernel-x86_64-2.6.26-gentoo-r1

title=Gentoo Linux (2.6.25.4)

root (hd0,0)

kernel /boot/kernel-genkernel-x86_64-2.6.25.4 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3 udev 1280x1024-16@60 vga=0x31A splash=silent,theme:prof console=tty1 quiet

initrd /boot/initramfs-genkernel-x86_64-2.6.25.4

title=Gentoo Linux (32-bit)

root (hd0,0)

kernel /boot/kernel-genkernel-x86-2.6.26.gentoo-r1 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sdb2 udev 1280x1024-16@60 vga=0x31A 

initrd /boot/initramfs-genkernel-x86-2.6.26-gentoo-r1

dice che non trova i file anche se ci sono

se invece lascio i file in mnt/gentoo_i686/boot e imposto cosi'

title=Gentoo Linux (2.6.26-gentoo-r1)

root (hd0,0)

kernel /boot/kernel-genkernel-x86_64-2.6.26-gentoo-r1 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3 udev 1280x1024-16@60 vga=0x31A splash=silent,theme:prof console=tty1 quiet

initrd /boot/initramfs-genkernel-x86_64-2.6.26-gentoo-r1

title=Gentoo Linux (2.6.25.4)

root (hd0,0)

kernel /boot/kernel-genkernel-x86_64-2.6.25.4 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sda3 udev 1280x1024-16@60 vga=0x31A splash=silent,theme:prof console=tty1 quiet

initrd /boot/initramfs-genkernel-x86_64-2.6.25.4

title=Gentoo Linux (32-bit)

root (hd0,1)

kernel /mnt/gentoo_i686/boot/kernel-genkernel-x86-2.6.26.gentoo-r1 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sdb2 udev 1280x1024-16@60 vga=0x31A 

initrd /mnt/gentoo_i686/boot/initramfs-genkernel-x86-2.6.26-gentoo-r1

dice che non riconosce il filesystem............... e' possibile mettere il kernel in una partizione xfs?

cosa c'e' di sbagliato in questo?

----------

## cloc3

 *ficofico wrote:*   

> 
> 
> Ho montato la mia sdb2 sotto /mnt/gentoo_i686 
> 
> Usando genkernel ho compilato il mio bel kernel a 32 bit con supporto ad xfs e ext2, ora posso mettere il kernel, initramsf e system.map sia sotto 
> ...

 

sì, la puoi mettere dove vuoi. il file system xfs è supportato da boot. l'unica cosa che potrebbe non andare è il raid (ma non mi pare il tuo caso).

non ho letto attentamente le tue impostazioni (manco scritte con il bbcode), ma gli errori di filesystem non trovato indicano solitamente che è sbagliata la root.

in questi casi, al boot, prima che grub lanci la ricerca del kernel si utilizzano i tasti e oppure c che permettono di lanciare alcuni comandi in linea di grub o di editare delle istruzioni nuove di zecca. si può dare una root(hdx,y) fino a quando non si trova quella giusta e si può anche usare cat con l'autocompletamento per veriifcare i file disponibili. info grub per approfondimenti.

----------

## nikko96

 *ficofico wrote:*   

> Un dubbio:
> 
> ............  cut  .....................
> 
> title=Gentoo Linux (32-bit)
> ...

 

dovrebbe essere

```
title=Gentoo Linux (32-bit)

root (hd1,1)

kernel (hd1,1)/boot/kernel-genkernel-x86-2.6.26.gentoo-r1 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/sdb2 udev 1280x1024-16@60 vga=0x31A

initrd (hd1,1)/boot/initramfs-genkernel-x86-2.6.26-gentoo-r1
```

per il sistema 32 bit, dato che la partizione di boot è nella / di quel sistema, giusto?

Ciao

----------

## ficofico

Guarda purtroppo devo dire che questa configurazione non funziona. Ho provato a risolvere in chat e alla fine l'unica soluzione che ha funzionato al primo colpo e' stata quella di eliminare grub ed installare lilo. La sintassi con cui mi hai suggerito di editare menu.lst e' corretta, probabilmente e' un problema di grub.

p.s. Approfitto di questo mio topic per una domanda. Ho fatto una super cavolata, non riuscendo a far funzionare la rete sulla nuova gentoo a 32 bit ( mancava solo da aggiungere net.ppp0 al default   :Embarassed: ) ho copiato bellamente netmount, net.ppp0 e altri due file da /etc/init.d/ dalla gentoo a 64 bit verso la 32, col risultato di essermene pentito immediatamente, ma sopratutto col risultato di pagine e pagine di warning al successivo reboot.

Ho provato a riprendere i file da uno stage3 ma non ha funzionato, allora ho deciso di tagliare la testa al toro e di cancellarli proprio. Adesso sto provando a dare un bel emerge -e system, dite che risolvera' il problema, oppure oramai i file sono persi per sempre? Devo reinstallare da capo?

----------

## djinnZ

qfile /etc/init.d/netmount restituisce baselayout come proprietario; ergo emerge -1 baselayout e dovrebbe tornare a posto.

"Q" è tuo amico, non infastidisce a sproposito, non ti fa perder tempo anzi te ne fa guadagnare a differenza dell'omonimo in start trek.

Basta un emerge portage-utils per averlo, è pure gratis...  :Twisted Evil: 

----------

