# Gentoo/FreeBSD

## Hilefoks

Gentoo/FreeBSD

Bitte keine Diskussion über den Sinn und Unsinn eines Gentoo/*BSD in diesem Thread.

(mod-edit: sondern in diesem Thread --slick)

Aktuell

8. September 2006 inzwischen läuft nur noch GFBSD auf meinem Laptop und auch Java funktioniert nun.

16 Juni 2006 Gentoo/FreeBSD läuft auf meinem Laptop und ist für mich nahezu benutzbar. Einziges Problem ist Java, das ich leider für mein Studium benötige.

15 Juni 2006 erste Schritte mit Gentoo/FreeBSD in einer VMWare Installation. [/list]

Vorwort

Achtung: Dies ist keine Anleitung für Einsteiger. Um Gentoo/FreeBSD zu installieren, sollte man sich mit dem englischen Tastaturlayout, Grub, der Konsole, einem Editor (vi, ee, nano), Portage (maskieren, demaskieren, u.s.w.)  u.v.m. recht gut auskennen. Außerdem sollte viel Spieltrieb vorhanden sein. Gentoo/FreeBSD ist nicht besser, schöner, schneller oder cooler als Gentoo/Linux. Es gibt nur zwei Gründe es zu installieren. Einer ist um seinen eigenen Spieltrieb zu befriedigen, der andere um zu helfen Gentoo/FreeBSD besser zu machen. Idealerweise treffen aber beide Gründe zu.  :Wink: 

Gentoo/FreeBSD ist der (in meinen Augen erfolgreiche) Versuch, die Gentoo Designprinzipien auf den FreeBSD-Kernel zu portieren. Dabei wird gegenüber Gentoo/Linux nicht nur der Kernel ersetzt, sondern es werden auch Bibliotheken und Userland-Programme von FreeBSD übernommen. Der FreeBSD-Port ist inzwischen so weit gereift, dass er Einzug in den offiziellen Portage-Baum fand.

Gentoo/FreeBSD ist allerdings lange noch nicht stabil. Wer es einsetzt, wird sicher an der ein oder anderen Stelle Probleme bekommen, die es unter Gentoo/Linux nicht gibt. Nach meiner bisherigen Erfahrung sind diese Probleme zu lösen - garantieren werde ich das aber nicht. Wer Gentoo/FreeBSD einsetzen möchte, sollte dies neben seiner normalen Gentoo/Linux Installation, oder aber in einer VM, tun. 

Dennoch halte ich Gentoo/FreeBSD für mich, und für Leute mit besonders viel Spieltrieb, schon jetzt für benutzbar. So ziemlich alles, was ich bisher ausprobiert habe, funktionierte auch. Einzige bisherige Ausnahme ist natürlich Java.

Nichtssagende, aber immer wieder gern gesehene Screenshots meiner Installation findet ihr hier, hier und hier.

Vorbereitung

In Vorbereitung auf die Gentoo/FreeBSD Installation sollte folgendes vorhanden sein:VMWare, eine freie Festplatten-Partition oder ähnliches

wenn Gentoo/FreeBSD neben anderen Systemen installiert werden soll, ein Backup eurer gesamten Dateien(!)

eine auf mindestens FreeBSD 6.0 basierende FreeSBIE Live-CD (zur Zeit ist das die Entwicklerversion, zu beziehen unter http://torrent.freesbie.org)

eine Internet-Verbindung (DSL mit Router funktioniert. Alles andere konnte ich nicht testen)

Installieren

Info:  bei eventuellen Unklarheiten konsultiert bitte auch die englische original Installationsanleitung.

Wenn ihr Grub installiert habt, empfehle ich zunächst Grub zu booten und in der Grub-Shell "geometry (hdX)" auszuführen, wobei X natürlich für die Festplatte steht auf der ihr euer Gentoo/FreeBSD installieren wollt. In der ersten Zeile der Ausgabe steht dann etwa folgendes:

```
drive 0x80: C/H/S = 1023/255/63, The number of sectors = 78140160, LBA
```

Für die Installation könnten die drei durch / getrennten Zahlen hinter C/H/S = von Interesse sein. Sicherheitshalber sollten wir sie uns notieren. Wenn Grub nicht installiert ist, können wir dennoch fortfahren. Unter Umständen brauchen wir diese Angaben nämlich gar nicht. 

Jetzt können wir die FreeSBIE Live-CD booten. Den startenden X-Server können wir sofort wieder beenden und auf das zweite Terminal wechseln, um uns dort als root einzuloggen. Ein Passwort benötigen wir dafür nicht. Beachtet, daß das Tastaturlayout englisch ist. Als erstes sollten wir dafür sorgen, daß wir auch eine Netzwerkverbindung besitzen. Folgender Befehl öffnet die Netzwerkkonfigurieren von FreeSBIE:

```
sysinstall tcpMenuSelect
```

Nun muss die Festplatte vorbereitet werden. Dazu wird ein Slice angelegt und in diese hinein eine oder mehrere Disklabels. Ein Slice ist im Grunde eine Partition die unter BSD allerdings nochmals unterteilt wird, und zwar in die so genannten Disklabels. Wem das jetzt alles nichts sagt sollte einen Blick in das FreeBSD Handbuch werfen, zu finden unter http://www.freebsd.org/doc/de/books/handbook/install-steps.html.

Um nun einen Slice und daraufhin Disklabels anzulegen führen wir folgenden Befehl aus: 

```
sysinstall diskPartitionEditor diskPartitionWrite diskLabelEditor diskLabelCommit
```

Achtung: Wenn der diskPartitionEditor die Warnung

```
WARNING: A geometry of xxxxx/xx/xx for adX is incorrect. Using a more likely geometry. ...
```

ausgibt, bestätigen wir diese, drücken danach "g" (G= set Drive Geometry) und geben die aus Grub notierten Werte, mit / getrennt, ein. 

Nun können wir einen Slice anlegen (Taste c) und mit ESC beenden. Anschließend öffnet sich der diskLabelEditor und wir können DiskLabels erstellen. Der Einfachheit halber gehe ich davon aus, dass ihr nur ein root-Label und ev. ein Swap-Label angelegt habt. So dumm es auch klinkt: Wenn sysinstall im Verlauf einen Fehler meldet (z.B. nach dem Anlegen eines Slice) hilft ein reboot.

Da jetzt die Festplatte vorbereitet ist, können wir diese mounten. Dies bewerkstelligen wir durch den Befehl "mount /dev/adXsXa /mnt/ufs.1".

Wenn es beim Booten der FreeSBIE Live-CD bereits eine FreeBSD Partiton gegeben hat, oder ihr zwischendurch nochmals neu gebootet habt, hat FreeSBIE diese Partiton bereits gemountet. Allerdings nur read-only (zu erkennen an der Ausgabe von "mount"). Um dies zu ändern müsst ihr sie mit diesem Befehl remounten:

```
mount -u -o rw /mnt/ufs.1
```

Wenn das nicht funktioniert, schaut mal auf die erste Konsole. Dort gibt FreeSBIE u. U. Fehlermeldungen (Syslog-Ausgaben) aus, die einen Hinweis darauf geben, warum es nicht funktioniert. Bei mir funktionierte es z. B. einmal nicht weil FreeSBIE glaubte die Partition sei beschädigt. In diesem Fall hilft, wenn ihr sie unmountet, fsck auf die Partiton ausführt und sie dann mit mount /dev/adXsXa /mnt/ufs.1 wieder einhängt.

Ab jetzt wird es, bis auf die noch folgende Kernel-Konfiguration, sehr gentootypisch.

```

cd /mnt/ufs.1/

wget http://gentoo.osuosl.org/experimental/x86/freebsd/stages/gentoo-freebsd-6.1-stage-20060802.tar.bz2  

tar -jxvpf gentoo-freebsd-6.1-stage-20060802.tar.bz2  

rm gentoo-freebsd-6.1-stage-20060802.tar.bz2  

mount -t devfs none /mnt/ufs.1/dev/

cp /etc/resolv.conf /mnt/ufs1/etc

chroot /mnt/ufs.1/ /bin/bash

source /etc/profile

```

Willkommen in eurem Gentoo/FreeBSD.  :Wink: 

Als nächstes müssen wir den Portage-Baum beziehen, das profile setzen und unsere make.conf anpassen.

```

emerge --sync

ln -sf /usr/portage/profiles/default-bsd/fbsd/6.1/x86/ /etc/make.profile

ee /etc/make.conf # alternativ natürlich auch mit vi oder nano

(folgendes sollte in die make.conf eingetragen werden. Zusätzlich könnt ihr natürlich auch noch USE und CFLAGS angeben.)

CHOST="i686-gentoo-freebsd6.1"

ACCEPT_KEYWORDS="~x86-fbsd ~x86"

FEATURES="-sandbox collision-protect"

```

Der nächste Schritt. Ein Gentoo/FreeBSD braucht natürlich einen BSD-Kernel:

```
emerge freebsd-sources

cp /usr/src/sys/i386/conf/GENERIC.hints /boot/device.hints
```

Das Konfigurieren eines BSD-Kernels läuft völlig anders ab als bei einem Linux-System. Ich persönlich empfand es allerdings als recht einfach und logisch.

Wie man den Kernel erstellt, ist gut im FreeBSD-Handbuch im Kapitel 8 beschrieben. Wichtig zu wissen ist, dass es unter Gentoo/FreeBSD nur die "herkömmliche" Methode zum Bau eines Kernels gibt (wird im Handbuch ebenfalls beschrieben).

Jetzt ist es Zeit, die fstab einzurichten.

```

ee /etc/fstab

#(So ähnlich sollte die /etc/fstab aussehen)

/dev/adXsYb      none      swap      sw   0   0

/dev/adXsYa      /      ufs      rw   1   1

/dev/acdX      /mnt/cdrom      cd9660      ro,noauto   0   0
```

Desweiteren sollte der Hostname, der Domainname und das Netzwerk noch konfiguriert werden. Diese Konfiguration sieht genauso aus wie bei Gentoo/Linux, mit der Ausnahme, dass das Netzwerkdevice nicht ethX heißt, sondern in Abhängigkeit vom Netzwerkgerät einen Namen bekommt. Realtek Karten heißen z. B. rtX, mein Broadcom Chip erhielt den Namen bfeX. Ein dmesg | grep net außerhalb des chroots kann da aber weiterhelfen. Solltet ihr also eine Karte besitzen, die den Namen rt0 bekommen hat, so müsst ihr einen Symlink /etc/init.d/net.rt0 erstellen der auf /etc/init.d/net.lo0 zeigt und in /etc/conf.d/net das Device mit config_rt0=("") konfigurieren. DHCP machte bei mir leichte Probleme um die ich mich bisher noch nicht weiter gekümmert habe. Somit empfehle ich zunächst eine statische Adresse zu vergeben. Meine /etc/conf.d/net sieht dadurch etwa so aus:

```
config_bfe0=("192.168.0.22 netmask 255.255.255.0")

routes_bfe0=("default gw 192.168.0.1")
```

Bevor wir die Installation nun abschließen können, müssen wir noch den Bootloader boot0 installieren.

```
emerge boot0

exit

fdisk -B -b /mnt/ufs.1/boot/boot0 /dev/adX

chroot /mnt/ufs.1 /bin/bash

disklabel -B adXsY

```

Achtung: die oben genannten Befehle überschreiben den MBR mit dem Bootloader von FreeBSD. Es ist aber auch möglich, Gentoo/FreeBSD durch Grub oder Lilo booten zu lassen. Für weiterführende Informationen schaut wieder in das FreeBSD-Handbuch in Kapitel 12 oder benutzt eine Suchmaschine eures Vertrauens. Ich persönlich habe zunächst den FreeBSD-Bootloader installiert und später, über eine Gentoo/Linux LiveCD, meinen Grub-Loader wieder hergestellt.

Fertig! Noch schnell das root-Passwort vergeben, einen Benutzer anlegen und schon haben wir unsere erste Gentoo/FreeBSD Installation vollendet.

```
passwd

adduser

exit

reboot
```

Viel Spaß!

Lokalisation

Sicher möchtet ihr ein deutsches Tastatur-Layout. Leider befindet sich im aktuellem Baselayout kein Init-Script mehr dafür, und die unter Gentoo-Linux üblichen Konfigurationsdateien in /etc/conf.d (keymaps, consolenfont) werden nicht verarbeitet. Zur Lösung dieses Problems habe ich mir aus dem CVS das Init-Script "syscons" bezogen und leicht erweitert. Ladet es euch hier http://www.nachtnebelnelken.de/gentoo/fbsd/etc/init.d/syscons herunter, speichert es in /etc/init.d, macht es ausführbar und fügt es eurem runlevel hinzufügen. Anschließend müsst ihr in /etc/conf.d die Datei syscons erstellen. Der Inhalt sieht in etwa wie folgt aus:

```

KEYMAP="german.iso.acc"

VIDMODE="MODE_279"
```

Die VIDMODE Option stellt eine höhere Auflösung der Console ein. Gültige Optionen können mit "vidcontrol -i mode" erfragt werden. Wenn die Ausgabe keine genügend hohe Auflösung anzeigt, solltet ihr in der Kernel-Konfiguration folgende Optionen aktivieren/hinzufügen und den Kernel neubauen.

```

options VESA

options VGA_WIDTH90

options SC_PIXEL_MODE
```

Und jetzt?

Ihr könnt nun recht normal eure geliebten Programme emergen. Allerdings gibt es dabei gleich des öfteren Probleme. X wollte bei mir beispielsweise freeglut-2.4 emergen, was aber nicht compilierte. Nachdem ich die 2.4er maskierte, compilierte die Version 2.2 dann aber fehlerfrei durch. Anschließend wollte dann der xf86-video-i810 in der Version 1.6.0 nicht übersetzen. Also habe ich wiederum diese Version maskiert und die Version 1.4.1.3 compilierte dann fehlerfrei. Solche Probleme werdet ihr ganz sicher auch bekommen. Ihr solltet euch dann zu helfen wissen, Bug-Reports schreiben, oder am besten den Fehler selbst fixen. Meine oben aufgeführten, nichts sagenden Screenshots sagen aber eventuell doch etwas aus: Gentoo/FreeBSD kann man zusammen mit Xorg-7-0 und KDE-3.5.3 zum Laufen bekommen.

LinksDie Gentoo/FreeBSD Projektseite: http://www.gentoo.org/proj/en/gentoo-alt/bsd/fbsd/index.xml

A short guide to Gentoo/FreeBSD: http://www.gentoo.org/doc/en/gentoo-freebsd.xml

Die Projektseite zu FreeSBIE: http://www.freesbie.org

Das FreeBSD Handbuch.

Wikipedia Artikel zu Gentoo/FreeBSD auf  deutsch und englisch. (und der Aufruf von mir diese Artikel zu verbessern)

Ein Interview mit Diego Pettenò, einem der Gentoo/FreeBSD Entwickler: http://ezine.daemonnews.org/200604/gentoo-bsd_interview.html.

Gentoo/FreeBSD in der "Future Zone" des GWN vom 7.Februar 2005 in englisch bzw. in deutsch.

Eine ältere Installationsanleitung aus dem englischem Teil des Gentoo-Forums. Nicht mehr aktuell, aber eventuell immer noch informativ: https://forums.gentoo.org/viewtopic-t-324547-highlight-fbsd.html.

Viel Spaß nochmals,

HilefoksLast edited by Hilefoks on Fri Nov 10, 2006 12:25 am; edited 2 times in total

----------

## reyneke

Hi.

Danke für das Howto; FreeBSD hat mich schon lange mal interessiert. Ich wollte jedoch nicht von Gentoo lassen.

Drei kurze Fragen dazu:

Brauche ich zwingend ein FReeSBIE vom angegebenen Torrent-Mirror oder geht auch ein FreeSBIE-1.1?

Ist unionfs ausreichend stabil, um die unionfs-LiveCD zu Installation zu verwenden?

Kann ich neben Portage auch die FreeBSD-Ports und Packages verwenden?

Danke schonmal.

Gruß,

rey

----------

## Hilefoks

 *reyneke wrote:*   

> Brauche ich zwingend ein FReeSBIE vom angegebenen Torrent-Mirror oder geht auch ein FreeSBIE-1.1?

 

Ja, du benötigst eine FreeSBIE LiveCD die auf min. FreeBSD 6.0 basiert. FreeSBIE 1.1 basiert aber leider nur auf FreeBSD 5.3. Meine ersten Gehversuche scheiterten auch an diesem Umstand. 

 *reyneke wrote:*   

> Ist unionfs ausreichend stabil, um die unionfs-LiveCD zu Installation zu verwenden?

 

Ich hatte mit der Unionfs wenig bis keine Schwierigkeiten. Da aber sowohl Gentoo/FreeBSD als auch die FreeSBIE 2 noch lange nicht stable sind kann ich das natürlich nicht garantieren.  :Wink: 

 *reyneke wrote:*   

> Kann ich neben Portage auch die FreeBSD-Ports und Packages verwenden?

 

Out of the Box nicht. Probiert habe ich es selbst auch nicht und würde auch erst einmal behaupten das es nicht geht da das Gentoo/FreeBSD doch an vielen Stellen anders funktioniert als ein normales FreeBSD. Zudem benötigt man die FreeBSD-Ports sicher nicht wenn man Portage hat.  :Wink: 

Wenn dich Gentoo/FreeBSD interessiert würde ich dir sehr den Blog von Diego Pettenò (flameeyes) empfehlen. Er ist einer der aktivsten Gentoo/FreeBSD Entwickler und schreibt recht viel über Gentoo/FreeBSD in seinem Blog.

Zuletzt noch eine Warnung: Gentoo/FreeBSD ist lange noch nicht stabil! Wenn du einfach nur ein BSD möchtest würde ich dir eher FreeBSD empfehlen, wenn du einfach nur Gentoo möchtest eben Gentoo. Gentoo/FreeBSD läuft für mich zwar sehr stabil - es hat aber auch viel arbeit gekostet es so einzurichten wie ich es jetzt habe. Zudem kann sich dieser Zustand auch jeder Zeit, nach einem Update z.B., wieder ändern. Ein solches Update steht z.B. in kürze mit dem FreeBSD 6.2 Release ins Haus.

MfG,

Hilefoks

Edit: Es wär nett wenn du mich über deine Gentoo/FreeBSD Installation auf dem laufenden hälst (hier oder auch per PM) - so könnte ich u.U. auftretende Probleme in das HowTo mit aufnehmen und natürlich auch dir helfen. Danke!

----------

## treor

wow das klingt interessant. auf jeden fall so interessant das mein spieltrieb geweckt ist  :Wink: 

werd damit allerdings warten bis ich ne alte kiste die noch bei meinen eltern steht her geholt hab. dauert daher noch etwas (wahrscheinlich etwas länger)

----------

## reyneke

 *Hilefoks wrote:*   

> [...]Edit: Es wär nett wenn du mich über deine Gentoo/FreeBSD Installation auf dem laufenden hälst (hier oder auch per PM) - so könnte ich u.U. auftretende Probleme in das HowTo mit aufnehmen und natürlich auch dir helfen. Danke!

 

Erstmal danke, Hilefoks, für Deine Informationen und Tips. Ich werde mir das mit Gentoo/FreeBSD nochmal durch den Kopf gehen lassen, denke aber schon, daß ich es mal ausprobieren werde. Allerdings interessiert mich das Ports-System von FreeBSD grade im Vergleich zu Portage, dessen Vorbild es ja in weiten Teilen ist, schon sehr. Die Versuchung, ein reines FreeBSD aufzusetzen ist also auch sehr groß. 

Sollte ich mich für eine Alternative entscheiden, teile ich Dir das natürlich mit. Es kann zwar etwas dauern, da ich mich jetzt erstmal eine Woche in sonnigere Gefilde absetze, aber das Projekt steht auf jeden Fall auf meiner Todo-Liste.

In diesem Sinne grüßt

rey

----------

## Christoph Schnauß

 *Hilefoks wrote:*   

> 
> 
>  *reyneke wrote:*   Kann ich neben Portage auch die FreeBSD-Ports und Packages verwenden? 
> 
> Out of the Box nicht. Probiert habe ich es selbst auch nicht und würde auch erst einmal behaupten das es nicht geht da das Gentoo/FreeBSD doch an vielen Stellen anders funktioniert als ein normales FreeBSD. Zudem benötigt man die FreeBSD-Ports sicher nicht wenn man Portage hat.

 

Eine kleine, aber an dieser Stelle vielleicht angebrachte Ergänzung: ich habe beide Systeme im gleichen Rechner, allerdings auf unterschiedlichen Platten. Was in Zusammenhang mit portage und den ports gut funktioniert, ist die Auslagerung des distfiles-Verzeichnisses auf eine von beiden Systemen aus erreichbare Partition. Gemeinsame Nutzung von /tmp ist ebenfalls möglich.

----------

## slick

Diskussion zum Thema "Sinn und Unsinn eines Gentoo/*BSD" herausgelöst nach: https://forums.gentoo.org/viewtopic-t-514293.html

----------

## slick

 *Hilefoks wrote:*   

> Solltet ihr also eine Karte besitzen, die den Namen rt0 bekommen hat, so müsst ihr /etc/init.d/net.lo0 nach /etc/init.d/net.rt0 kopieren und in /etc/conf.d/net das Device mit config_rt0=("") konfigurieren.

 

Also ich kenne zwar nicht das BSD-Dateisystem, aber dort werden sicher Symlinks möglich sein, nehme ich an. Von daher würde ichs als sinnvoller empfinden das net.rt0 ein Symlink auf net.lo ist. Den Fehler mit dem kopieren ist unter Gentoo gern gemacht und nach einem Update des Baselayout wundert man sich womöglich warum das Netz nicht mehr läuft.

----------

## Christoph Schnauß

 *slick wrote:*   

> Also ich kenne zwar nicht das BSD-Dateisystem

 

Aber ich. Ich arbeite häufiger damit als mit Gentoo.

 *slick wrote:*   

> aber dort werden sicher Symlinks möglich sein

 

Selbstverständlich sind da Symlinks möglich.

 *slick wrote:*   

> Von daher würde ichs als sinnvoller empfinden das net.rt0 ein Symlink auf net.lo ist.

 

Das ist vermutlich richtig, sollte vielleicht aber weiter in https://forums.gentoo.org/viewtopic-t-514293.html diskutiert werden, da ja hier keine weitergehende Diskussion gewünscht ist - allenfalls vielleicht sachlich/fachliche Ergänzungen des Dargestellten stattfinden sollen.

----------

## slick

 *Christoph Schnauß wrote:*   

> allenfalls vielleicht sachlich/fachliche Ergänzungen des Dargestellten stattfinden sollen.

 

Genau das war es doch, oder?  :Wink: 

----------

## Hilefoks

 *slick wrote:*   

> Also ich kenne zwar nicht das BSD-Dateisystem, aber dort werden sicher Symlinks möglich sein, nehme ich an. ...

 

Natürlich - danke slick. Wurde soeben korrigiert.

----------

## doedel

Nur mal so am Rande:

http://www.golem.de/0701/49820.html

http://www.pro-linux.de/news/2007/10691.html

//edit:  *Quote:*   

> <hust> https://forums.gentoo.org/viewtopic-t-530634.html

 

oha tut mir leid, das kommt davon, wenn man voreilig postet.

(Bitte darum diesen Beitrag zu löschen)

----------

## b3cks

 *doedel wrote:*   

> Nur mal so am Rande:
> 
> http://www.golem.de/0701/49820.html
> 
> http://www.pro-linux.de/news/2007/10691.html

 

<hust> https://forums.gentoo.org/viewtopic-t-530634.html

----------

## Aldo

Nachdem ich schon lange mit BSD geliebäugelt habe und mir mal PC-BSD 1.4 auf meinen Laptop geklatscht hab will ich mal Gentto/BSD ausprobieren.

Hat auch soweit alles geklappt und ich bin für's Erste zufrieden.

Danke für das ausführliche HowTo!

Allerdings hab ich noch ein kleines Problem:

Die Lokalisierung funktioniert nicht richtig.   :Sad: 

Das syscons-Script runterzuladen ist nicht mehr nötig (Link ist eh' tot), das ist im aktuellen Stage-3-6.2-r1 schon dabei.

Das Problem ist nun aber, daß bei Angabe von

```
KEYMAP="german.iso.acc"
```

zwar Y und Z sowie die Sonderzeichen am richtigen Platz sind, aber die Umlaute nicht funktionieren. Statt ä, ü, ö, ß kommen seltsame Symbole.

Auch funktioniert "Lang=de_DE@euro" nicht, also alles ist und bleibt auf englisch.

Weiß jemand wie man das richtig einrichtet?

<edit>

KDE oder Gnome lässt sich auch nicht emergen.

Kollidiert mit pam.

</edit>

----------

## disi

Ich wollte einfach mal meine Erfahrungen loswerden mit Gentoo/FreeBSD und VirtualBox

Virtual Host:

- fuer das gesamte System mit X wuerde ich ca. 10GB Festplattenplatz empfehlen

Installation:

- der dhcp Client laeuft auf der LiveCD und bekommt auch eine IP, aber den falschen Nameserver. Einfach mal testen "ping 10.0.2.2" wenn es den gibt dann in /etc/resolf.conf aendern (e.g. "nameserver 10.0.2.2").  Ich habe verschiedene BSD-LiveCDs getestet und es scheint ein Problem mit VirtualBox und BSD zu sein. Dieses Problem tritt z.B. nicht mit Windows guests auf.

- fuer die Partitionierung: empfehlen wuerde ich einfach ein grosses Label fuer das System und eins fuer swap (also genau der Anleitung folgen), wenn man hier etwas kreativ sein moechte spielt BSD nicht wirklich mit (z.B. ext2 Support gibt es nicht wirklich waehrend der Installation). Ich wuerde auch noch kein Label fuer /usr oder /var anlegen, sonst hat man spaeter Probleme solche grossen Verzeichnisse auf andere Festplatten oder Partitionen/Slices auzulagern.

- Ich wuerde "mount -t devfs devfs /mnt/dev" benutzen vor dem chroot statt "none"

- um Netzwerk automatisch zu starten nach dem Neustart, sollte man sich einen Link anlegen im /etc/init.d und zum Runlevel hinzufuegen

- wer dhcp braucht im neuen System sollte dhcpcd vor dem Neustart installieren, es ist nicht Teil der stage3.

- um die Einstellungen in der /etc/conf.d/syscons (z.B. keymaps) beim Neustart bereits zu haben "rc-update add syscons boot"

Neustart:

- grub findet den kernel nicht "setup (hd0,0,d)" "kernel (hd0,0,d)/boot/loader" "boot"

- das System haengt und startet neu, das passiert weil wir ein non pnp OS haben aber die BIOS Einstellungen nicht aendern koennen. Einfach noch einmal booten bis es klappt, bei mir nie mehr als 3mal.

Nach dem Neustart:

- auch hier wieder das Problem mit dem nameserver, s.o.

- wer keinen dhcpcd installiert hat kann folgendes ausfuehren: "ifconfig pcn0 up 10.0.2.5/24" "route add 0.0.0.0 10.0.2.2" "echo 'nameserver 10.0.2.2' > /etc/resolf.conf"

- in die make.conf sollte man VIDEO_CARDS="vesa" aufnehmen, damit xorg ein modul installiert

Abschluss:

- es funktioniert, der Systemaufbau ist wirklich Gentoo getreu und man findet alles wo man es auch erwartet.

- die Konfiguration ist damit ein Kinderspiel (vielleicht sollte man noch diese Slice/Label Geschichte und ufs abschaffen   :Confused:  )

- auch der X Server und Xfce4 funktionieren einwandfrei

- Das System stuerzt hin und wieder beim Kompilieren ab (ich weiss nicht, ob das an Gentoo/FreeBSD liegt oder an der VBox), ich habe die GENERIC kernel Anleitung genommen.

- Diese Abstuerze gefallen mir nicht, denn es stuerzt nicht nur eine Anwendung oder ein Terminal ab, sondern immer das ganze System. Ich glaube allerdings dass das eher ein UNIX Feature ist   :Very Happy: 

----------

## Aldo

 *disi wrote:*   

> Neustart:
> 
> - grub findet den kernel nicht "setup (hd0,0,d)" "kernel (hd0,0,d)/boot/loader" "boot"

 

Das Problem hatte ich auch.

Läßt sich seltsamerweise dadurch lösen, daß man BSD ein 2. Mal installiert.

Keine Ahnung womit das zusammenhängt.

Hab das rumexperimentieren jedenfalls aufgegeben und mir ein natives FreeBSD 6.3 installiert.

(Also nicht Desktop-/PC-/TrueBSD oder so)

Nun kann ich beim Systemstart per Grub Linux oder BSD auswählen und starten.

Noch ein Tip: *BSD läßt sich nur mit einem internen CD-Rom installieren.

Mit einem externen USB-CDRom klappt es nicht!

----------

## Max Steel

wrum bitte in der Grubeinstellung root (hd0,0,d) ??

----------

## Aldo

 *Max Steel wrote:*   

> wrum bitte in der Grubeinstellung root (hd0,0,d) ??

 Oh, hab ich garnicht gesehen.

Ich hab bei mir root (hd1,3,a) stehen, also quasi das BSD-Slice ist sdb4, und dort ist /boot auf Partition 1.

(Weiß gerade nicht wie ich das anders erlären/beschreiben soll)

Der Teil der Grub.conf sieht also komplett so aus:

```
title=FreeBSD 6.3

root (hd1,3,a)

kernel /boot/loader

boot
```

----------

## jkoerner

Moin,

zum booten von *BSD verwendet man am sinnvollsten die chainloader-Option bei grub.

```
title   BSD

root   (hd0,0)

makeactive

chainloader +1
```

Bei Angabe des 'Slice' kann es auch zu unerwartetem Verhalten von grub kommen   :Wink: 

----------

## Aldo

 *jkoerner wrote:*   

> zum booten von *BSD verwendet man am sinnvollsten die chainloader-Option bei grub.
> 
> [...]
> 
> Bei Angabe des 'Slice' kann es auch zu unerwartetem Verhalten von grub kommen  

 

Das heißt?

Was für ein Verhalten meinst du?

Bei mir funktioniert das problemlos und stabil mit o.a. grub.conf.

Auch nach dem Wechsel auf FreeBSD7.0

----------

## jkoerner

Na, ganz einfach. Grub blieb hängen weil es das root-Verzeichnis nicht fand. Auch diverse Versuche über die grub-Befehlszeile blieben ohne Erfolg.

Mit dem chainloader ist das aber ganz einfach. Grub macht den loader von BSD aktiv und der übernimmt alles weitere.

----------

## disi

 *Max Steel wrote:*   

> wrum bitte in der Grubeinstellung root (hd0,0,d) ??

 

Ok, etwas spaet aber ich versuche mich gerade wieder daran. 

Es heisst in der Doku das disklabel automatisch eine d slice anlegt, wenn man als mountpoint nicht / nimmt.

dann soll man folgendes ausfuehren um es manuell vor dem mounten noch zu aendern:

```
disklabel ad0s1 | sed 's/^  d:/  a:/' | disklabel -R ad0s1 /dev/stdin
```

das hatte leider in der Virtualbox nie bei mir funktioniert.

Weiter unten in der Bootloader installation scheint die Doku aber dann sehr wohl davon auszugehen das d als root slice moeglich ist:

```
(Example using ad0s1d)

grub> root (hd0,0,d)
```

Bei meiner jetztigen Installation auf einem richtigen Rechner musste ich feststellen das aendern der Slice von d auf a ist moeglich indem ich den Befehl 2mal ausfuehre:

```
disklabel ad0s1 | sed 's/^  d:/  a:/' | disklabel -R ad0s1 /dev/stdin
```

er mountet die slice als /dev/ad0s1d

```
umount /mnt && swapoff /dev/ad0s1b
```

noch einmal den mountpoint setzen mit

```
sysinstall diskLabelEditor diskLabelCommit
```

und dann nochmal

```
disklabel ad0s1 | sed 's/^  d:/  a:/' | disklabel -R ad0s1 /dev/stdin
```

und siehe da es wird als /dev/ad0s1a eingebunden   :Very Happy: 

----------

## Max Steel

???

Viel weiter bringt mich das jetzt nicht, aber okay, belassen wir es dabei.

 :Shocked: 

----------

