Installare Debian GNU/kFreeBSD step by step

 

 

Questa guida può essere utile a chi vuole provare Debian GNU/kFreeBSD, ovvero "un port che consiste di uno spazio utente GNU che usa la libreria C GNU e un kernel FreeBSD sottostante, abbinati con il normale insieme di pacchetti Debian". Sinceramente ho fatto molte prove d'installazione, sia su VirtualBox che su hard disk, e dopo molteplici tentativi sono riuscito ad avere una box con DebianGNU/kFreeBSD funzionante. I problemi principalmente derivano dal debian-installer che nel mio caso falliva spesso e volentieri, poi con la mini.iso del 20100210-11:20 è andato tutto ok, di seguito i link per il download   kfreebsd-amd64 e kfreebsd-i386. Di seguito indicherò solamente i passi secondo me importanti, dato che comunque il debian-installer è semplice ed intuitivo.

Installazione:

Una volta avviata l'installazione ci appare questa immagine:

premere Go Back, per tornare alla pagina principale e selezioniamo Change debconf priority

e selezioniamo medium:

a questo punto proseguiamo con l'installazione, e quindi con la configurazione della rete non facendo caso alla voce em0 (eth0) interfaccia sconosciuta, poichè la riconosce, e quando ci chiede di scegliere un mirror, scegliamo Sid:

l'installazione prosegue fino a quando ci chiede quale kernel installare, e naturalmente scegliamo quello più recente. Se tutto è andato a buon fine si arriva all'installazione di Grub, e qui bisogna fare alcune considerazioni, a secondo di quale strada scegliamo, o meglio di quale versione di Grub abbiamo gia installato nel nostro sistema. Nel mio caso avendo Debian Sid la versione è Grub-pc_1.98~20100128-1.1_i386 e quindi va benissimo, per chi usa un altra distribuzione che ha la versione di Grub inferiore, gli conviene aggiornare in quanto in un dual boot, non riesce a volte ad avviare il kernel freebsd (a me è successo questo). Chiaramente quanto scritto sopra è valido se il debian-installer non riesce ad installare Grub, oppure nell'eventualità che bisogna ripristinarlo da un livecd., quindi di conseguenza la versione di Grub è quella precedente. Comunque manualmente  per un dual boot da inserire sulla propria Distro in /etc/grub.d/40_custom la seguente stringa seguita da un update-grub:

menuentry "Debian GNU/kFreeBSD" {
    insmod ufs2
    set root=(hd0,8)
    echo            Loading kernel of FreeBSD 8.0-1-686 ...
    kfreebsd        /boot/kfreebsd-8.0-1-686.gz
    set kFreeBSD.vfs.root.mountfrom=ufs:/dev/ad0s8
    set kFreeBSD.vfs.root.mountfrom.options=rw
}

considerando che la mia installazione e  nella partizione /dev/sda8.

Una volta avviato il sistema non dovrebbero esserci problemi, ma nel caso non funzionasse il mouse, premere Ctrl-alt-F1:

cd /root

X -configure

e poi:

cp xorg.conf.new /etc/X11/xorg.conf

Per montare il filesystem ufs da linux:

mount -t ufs -o ro,ufstype=ufs2,nodev,nosuid /dev/sda8 /mnt

stringa eventualmente da inserire in /etc/fstab:

/dev/sda8 /mnt      ufs auto,ro,ufstype=ufs2,nodev,nosuid   0 0

 

Installazione su VirtualBox:

Per quanto riguarda l'installazione su VirtualBox non ci sono problemi, l'unica cosa a cui bisogna prestare attenzione è su un paio di cosette. Nella creazione di una nuova macchina virtuale scegliamo come sistema operativo BSD e come versione FreeBSD. Nella configurazione della rete scegliamo come scheda la Intel PRO/1000 MT Desktop o la  PCnet-FAST III connessa con bridge. Durante l'installazione scegliere come kernel il 486.

Guida in continuo aggiornamento 🙂

  1. update

Super GRUB2 Disk 1.30

E' stato rilasciato Super Grub2 Disk 1.30 il tool che permette con facilità di avviare la nostra Linuxbox in caso di problemi con Grub2. Le novità rispetto alla versione precedente sono le seguenti:

* Updated for the latest stable grub release, 1.97.2
* Option to find and load grub.cfg
* Option to find and load a grub2 installation ( works even with clobbered mbr )
* Options to enable grub's lvm and raid support
* Option to switch to serial terminal for easier debugging / logging of output
* Miscellaneous bug fixes

Per il downolad dell'iso o del codice sorgente fare riferimento a questa pagina.

Grub2 menu personalizzato

 

Per chi ha diversi O.S installati risulta comodo mettere ordine al menu di Grub2. I passi a proprio rischio e pericolo 🙂 sono i seguenti:

sudo update-grub

editare grub.cfg:

sudo gedit /boot/grub/grub.cfg

a questo punto individuare e copiare solamente i menu che si desidera vedere al boot di Grub2:

Esempio: ( partendo da menuentry e finendo con } )

menuentry "Ubuntu, Linux 2.6.31-17-generic" {
        recordfail=1
        if [ -n ${have_grubenv} ]; then save_env recordfail; fi
    set quiet=1
    insmod ext2
    set root=(hd0,9)
    search –no-floppy –fs-uuid –set eb27469e-03f8-4aa2-9a13-faa3f7689a2e
    linux    /boot/vmlinuz-2.6.31-17-generic root=UUID=eb27469e-03f8-4aa2-9a13-faa3f7689a2e ro   quiet splash
    initrd    /boot/initrd.img-2.6.31-17-generic
}

menuentry "Debian GNU/Linux, con Linux 2.6.32-trunk-686 (on /dev/sda5)" {
    insmod ext2
    set root=(hd0,5)
    search –no-floppy –fs-uuid –set 7bae8193-a97e-44df-86f2-2e9a1c59ff4d
    linux /boot/vmlinuz-2.6.32-trunk-686 root=UUID=7bae8193-a97e-44df-86f2-2e9a1c59ff4d ro quiet
    initrd /boot/initrd.img-2.6.32-trunk-686
}
menuentry "BackTrack 4, kernel 2.6.29.4 (on /dev/sda8)" {
    insmod ext2
    set root=(hd0,8)
    search –no-floppy –fs-uuid –set 2eb5129f-6bca-4e65-a667-52a1e16a44f4
    linux /boot/vmlinuz-2.6.29.4 root=UUID=2eb5129f-6bca-4e65-a667-52a1e16a44f4 ro quiet splash
    initrd /boot/initrd.img-2.6.29.4
}

poi:

sudo chmod -x /etc/grub.d/10_linux /etc/grub.d/20_memtest86+ /etc/grub.d/30_os-prober

a questo punto:

sudo nano /etc/grub.d/40_custom

ed incollare dentro i menu degli O.S preparati precedentemente.

OBBLIGATORIAMENTE

sudo update-grub

Io personalmente ho eliminato tutti e tre i file in

/etc/grub.d/10_linux /etc/grub.d/20_memtest86+ /etc/grub.d/30_os-prober

ma questa è una scelta mia personale che porta ad inserire a manina di volta in volta i nuovi kernel. Magari mi pentirò di questa scelta, ma lo scoprirò solo vivendola.