<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>The Linux+FreeBSD mini-HOWTO: Condividere l'area di swap fra Linux e FreeBSD</TITLE> <LINK HREF="Linux+FreeBSD-4.html" REL=next> <LINK HREF="Linux+FreeBSD-2.html" REL=previous> <LINK HREF="Linux+FreeBSD.html#toc3" REL=contents> </HEAD> <BODY> <A HREF="Linux+FreeBSD-4.html">Avanti</A> <A HREF="Linux+FreeBSD-2.html">Indietro</A> <A HREF="Linux+FreeBSD.html#toc3">Indice</A> <HR> <H2><A NAME="s3">3. Condividere l'area di swap fra Linux e FreeBSD</A><!--FreeBSD dualboot!swap space, sharing--></H2> <P>Questa sezione descrive come ho ottenuto che Linux e FreeBSD condividessero una partizione di swap. Ci possono essere altri modi di ottenere lo stesso risultato. Potete installare FreeBSD prima di Linux se volete prestare attenzione all'ordine delle partizioni nella slice FreeBSD. <P> <H2><A NAME="installlinux"></A> <A NAME="ss3.1">3.1 Installare e preparare Linux</A> <!--FreeBSD dualboot!Linux, installing--></H2> <P>Il primo passo è quello di installare Linux normalmente. Dovete lasciare spazio per la slice FreeBSD nel vostro disco. Non dovete creare una partizione Linux di swap, ma se ne volete una, mettetela nello spazio che volete allocare per FreeBSD. In questo modo potrete cancellare la partizione di swap Linux in seguito e usare lo spazio per FreeBSD. <P>Quando avrete installato Linux dovrete compilare un nuovo kernel. Leggete <B>The Linux Kernel HOWTO</B> se questa è una cosa nuova per voi. <EM>Dovete</EM> includere sia <B>UFS filesystem support (read only)</B> sia <B>BSD disklabel (FreeBSD partition tables) support</B>: <PRE> UFS filesystem support (read only) (CONFIG_UFS_FS) [N/y/m/?] y BSD disklabel (FreeBSD partition tables) support (CONFIG_BSD_DISKLABEL) [N/y/?] (NEW) y </PRE> <P>Installate il nuovo kernel e riavviate. Rimuovete qualsiasi riga che include la parola <EM>swap</EM> dal vostro file <CODE>/etc/fstab</CODE> se avete creato una partizione Linux di swap. <EM>Accertatevi di avere un floppy di boot di Linux funzionante con il nuovo kernel</EM>. Ora siete pronti per installare FreeBSD. <P> <H2><A NAME="ss3.2">3.2 Installare FreeBSD</A> <!--FreeBSD dualboot!FreeBSD, installing--></H2> <P>Installate FreeBSD come descritto nella documentazione di FreeBSD. Rimuovete la partizione Linux di swap se ne avete creata una (potete usare il programma <CODE>fdisk</CODE> di FreeBSD). Prestate attenzione all'ordine delle partizioni nello slice FreeBSD. Se usate l'etichettatura predefinita, la seconda partizione sarà la partizione di swap. Completate l'installazione di FreeBSD e riavviate in Linux <EM>usando il nuovo floppy di boot di Linux</EM>. <P> <H2><A NAME="ss3.3">3.3 Impostare la partizione di swap di FreeBSD in Linux</A> <!--FreeBSD dualboot!FreeBSD swap partition configuration--></H2> <P>Lanciate <CODE>dmesg</CODE> quando avete riavviato in Linux. Nell'output dovreste vedere qualcosa del genere: <PRE> Partition check: hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 hda8 > </PRE> <P>Questo significa che <CODE>/dev/hda4</CODE> è la vostra slice FreeBSD, mentre <CODE>/dev/hda5</CODE>, <CODE>/dev/hda6</CODE>, <CODE>/dev/hda7</CODE> e <CODE>/dev/hda8</CODE> sono le partizioni FreeBSD. Se la vostra partizione di swap è la seconda partizione nello slice, questa sarà <CODE>/dev/hda6</CODE>. <P>Dovete inserire le linee seguenti nel vostro file <CODE>/etc/fstab</CODE> di Linux per abilitare la partizione di swap: <PRE> /dev/hda6 none swap sw 0 0 </PRE> <P>Mentre FreeBSD può usare qualsiasi tipo di partizione come area di swap, Linux necessita di un tipo di marcatura particolare per la partizione di swap. Questa marcatura si ottiene con <CODE>mkswap</CODE>. FreeBSD rovina questa marcatura quando usa la partizione di swap condivisa, quindi dovete lanciare <CODE>mkswap</CODE> ogni volta che avviate con Linux. Per fare questo automaticamente dovete trovare lo script che lancia <CODE>swapon</CODE> al momento del boot. In Red Hat Linux questo è <CODE>/etc/rc.d/rc.sysinit</CODE>. Inserite la riga seguente in questo file appena <EM>prima di</EM> <CODE>swapon -a</CODE>: <PRE> awk -- '/swap/ && ($1 !~ /#/) { system("mkswap "$1"") }' /etc/fstab </PRE> Questo lancerà <CODE>mkswap</CODE> su qualsiasi partizione di swap in <CODE>/etc/fstab</CODE> ogni volta che avviate eccetto se queste sono commentate (aventi ``#'' come primo carattere della riga). <P>Lanciate <CODE>free</CODE> per controllare le dimensioni della partizione di swap quando avrete riavviato in Linux. Dovreste anche riavviare in FreeBSD per accertarvi che tutto funzioni come ci si aspetta. Se non funziona, avete probabilmente usato una partizione sbagliata come partizione di swap. L'unica soluzione a questo problema è di reinstallare FreeBSD e riprovare ancora. L'esperienza è una grande maestra. :-) <P> <HR> <A HREF="Linux+FreeBSD-4.html">Avanti</A> <A HREF="Linux+FreeBSD-2.html">Indietro</A> <A HREF="Linux+FreeBSD.html#toc3">Indice</A> </BODY> </HTML>