meolus.de

Installation (Stage 2)

Manuell von einer Gentoo 2008.0 LiveCD aus

Einleitung

Diese Installationsanleitung, auf Basis eines x86-Systems (Intel- und AMD-Systeme), leitet den geneigten Leser an, ein lauffähiges Gentoo-Linux bis hin zur von der Festplatte startbaren Kommandozeile zu installieren. Die Anleitung basiert auf dem offiziellen Installationsleitpfaden aus dem "Gentoo Linux Handbuch" von www.gentoo.org, ist jedoch insgesamt verkürzt und um persönliche Notizen und Schritte ergänzt worden. So fehlen z.B. die "Netzwerkterminologie verstehen" Passage und noch weitere Erklärungen, wie etwa zu den Stages und zum Kernel. Den Lesern, die hier Erklärungen bedürfen, kann ich nur den offiziellen Installationsleitpfaden ans Herz legen und empfehlen diese Anleitung höchstens noch nebenbei zu verwenden.
Doch keine Angst vor der Länge und scheinbaren Komplexität einer Gentooinstallation. Wenn man es ersteinmal gemacht hat, hat man einiges mehr von Linux verstanden und zudem ein sehr haltbares, schnelles und leicht zu pflegendes System auf seinem Rechner.

Zunächst benötigt man eine Gentoo 2008.0 CD LiveCD von einem der Mirrors unter http://www.gentoo.org/main/en/mirrors.xml. Nach der Wahl der Architektur - ich benutze hier noch "x86" (32-bit) - (./releases/x86/2008.0/livecd/), weil manche closed-source Pakete für "amd64" (64-bit) häufig erst später oder gar nicht zur Verfügung stehen - kann man sich zwischen einer etwa 80 MB großen minimalen und einer fast 700 MB großen LiveCD entscheiden, wobei ich in letzter Zeit dank DSL lieber die große LiveCD nehme, da man dann während der Installation eine graphische Oberfläche hat, wo man während der Installation, diese Anleitung lesen, im Gentoo-Forum stöbern oder einfach im Internet surfen kann.
Spiele sind leider auf der LiveCD nicht enthalten, so dass man dafür eine Installation von einer Knoppix-LiveCD oder ähnlichen abwägen sollte. Die folgende Anleitung arbeitet komplett auf der Konsole, so dass kein Unterschied hierfür zwischen der großen und kleinen LiveCD besteht.
Weiter benötigt man am Besten die ganze Installation eine zur Verfügung stehende Internetverbindung, denn Gentoo lädt Alles benötigte direkt aus dem Internet herunter. Erfahrungsgemäß dauert diese hier beschriebene Installation etwa 6 Stunden auf einem 1,5 GHz Rechner, wobei dieser Wert nach oben und unten Varieren kann, abhängig davon, wie schnell die Internetverbindung und wie schnell das System ist.
Ersteres, weil gut 450 MB runtergeladen werden müssen und letzteres, weil bei der hier beschriebenen Stage 2-Installation so gut, wie alles auf dem Rechner kompiliert werden muss. Viel CPU-Power und viel RAM werden hier also mal richtig ausgenutzt.
Zudem sollten möglichst ausgewählte Geräte in dem Rechner stecken, da für einige Geräte wie z.B. USB-WLAN-Karten die Treibersuche problematisch werden könnte. Und letztlich sollte man die Hardware bzw. die verwendeten Chipsätze kennen, da man diese während der Installation fast alle manuell angeben muss um diese ans Laufen zu bekommen. Generell gilt unter Gentoo, dass das System nur das kann und macht, was man dem System aufgibt zu tun bzw. ihm beibringt.

Falls man eine parallele Installation von Windows XP/Vista und Linux vor hat, dann ist es am einfachsten unter Linux zu Partitionieren und die Linux-Dateisysteme zu formatieren (Schritt 2 + 3) und dann das Windows-Setup auszuführen. Denn so kommt man sich nicht mit den Bootmanagern ins Gehege - GRUB muss nach Windows installiert werden, da er sonst unweigerlich vom Windows-Installations-Programm überschrieben wird! Zudem wird nach der Formatierung der Linux Dateisystem die erste NTFS-Partition korrekt als C: erkannt. Sonst kann auch die unpartitionierte 32 MB-Partition in dem hier verwendeten Partitionierungsschema C: sein und die eigentliche Windows-Partition D: oder E:, was zumindest einigen Ästheten Kopfzerbrechen bereiten dürfte, da man im Nachhinein den Laufwerksbuchstaben der Windows-System-Partition nicht mehr so einfach ändern kann.

Falls Probleme bei der Installation auftauchen, dann lohnt sich immer ein Blick ins Forum, da dort bereits fast alle erdenklichen Probleme gelöst wurden. Oder auch in das von Gentoo gepflegte Gentoo Linux Handbuch, in dem die Installation ebenfalls beschrieben wird.


1. LiveCD-Booten

  1. Boote von der Gentoo-2008.0-LiveCD und drücke <Enter>; die Gentoo LiveCD bootet...
    Falls irgendwelche Treiber nicht geladen können helfen die Parameter "acpi=off" und "noapic" meistens weiter. Konkret ist mir dieses Problem vom "sata_nv"-Treiber auf nForce4-Boards bekannt.
  2. Folge den Anweisungen, bis man eine Root-Konsole (minimale LiveCD) oder automatisch in XFCE (große LiveCD) eingeloggt wurde. Dann ist der Bootvorgang abgeschlossen.
  3. [nur graphische Oberfläche] Root-Konsole erzeugen:
    # sudo su -
  4. [optional] Root-Passwort des LiveCD-Systems setzen:
    # passwd
    Das Root-Passwort ist ein Zufallswert und wird i.d.R. nicht benötigt, wenn man auf der lokalen Root-Konsole arbeitet.
  5. [optional] screen benutzen (virtuelle Konsole):
    # screen
    Ctrl-A, dann d (screen verlassen), "# screen -r" (screen wieder aufrufen), Ctrl-D (screen beenden)
  6. [optional] IDE-Festplatte optimieren:
    # hdparm -d1c1u1m16 /dev/sda
  7. Wenn man einen Router mit DHCP-Server und keine exotische Netzwerkkarte besitzt, dann sollte das Netzwerk bereits funktionieren und braucht sich nicht mehr darum zum kümmern. (Testen mit: "# ping heise.de -c5")
    Netzwerk manuell einrichten (mit Abfragen):
    # net-setup eth0
    Direkt angeschlossenes DSL-Modem; Verwendung von rp-pppoe:
    # adsl-setup
    # adsl-start
  8. [optional] ssh starten:
    # /etc/init.d/sshd start

2. Partitionieren

  1. fdisk starten:
    # fdisk /dev/sda
    Die erste SCSI oder SATA Festplatten heißt "sda", das zweite IDE-Geräte "hdb".
  2. Boot-Partition erstellen (erste primäre Partition; 32 MB):
    Drücke "n", dann "p", gefolgt von "1", <keine Eingabe> (erster Zylinder) und "+32M" (letzter Zylinder).
  3. SWAP-Partition erstellen (zweite primäre Partition; hier: 512MB (sollte min. so groß wie RAM sein)):
    Drücke "n", dann "p", gefolgt von "2", <keine Eingabe> (erster Zylinder) und "+512M" (letzter Zylinder).
    Anschließend "t" (Partitionstyp), dann "2", dann "82" (Partitionstyp "Linux Swap").

    Für ein System mit Linux alleine:
    d) Root-Partition erstellen (dritte primäre Partition; Rest der Festplatte (für richtige Workstation sollten es min. 8 GB sein - ich empfehle 10 GB oder mehr (exklusive Benutzer Daten!)):
    Drücke "n", dann "p", gefolgt von "3", <keine Eingabe> (erster Zylinder) und <keine Eingabe> (letzter Zylinder).

    Für ein DualBoot-System mit Linux und Windows 2000/XP/Vista:
    Die Festplatte sollte insgesamt min. 30 GB haben um auch noch eine Datenaustauschpartition (FAT32) darauf zu bekommen.
    d) Windows-Partition erstellen (dritte primäre Partition; 10 GB):
    Drücke "n", dann "p", gefolgt von "3", <keine Eingabe> (erster Zylinder) und "+10240M" (letzter Zylinder).
    Anschließend "t" (Partitionstyp), dann "3", dann "7" (Partitionstyp "HPFS/NTFS").
    Die Windows 2000/XP-Boot-Partition muss unterhalb von 8 GB beginnen und eine Primäre Parition sein!
    e) Erweiterte Partition erstellen (Rest der Festplatte):
    Drücke "n", dann "e", gefolgt von <keine Eingabe> (erster Zylinder) und <keine Eingabe> (letzter Zylinder).
    f) Root-Partition erstellen: (erste logische Partition; 10 GB):
    Drücke "n", gefolgt von <keine Eingabe> (erster Zylinder) und "+10240M" (letzter Zylinder).
    g) Daten-Partitionen erstellen: (soviele, wie man möchte; so groß, wie man möchte):
    Drücke "n", gefolgt von <keine Eingabe> (erster Zylinder) und "+<Größe>M" (letzter Zylinder).
    FAT32 zum Austausch zwischen Linux und Windows (b); NTFS für Windows (7); EXT3 (Linux) für Linux (83). Umstellung des Typs mit "t".

    Mit "p" kann man sich nochmal übersichtlich anzeigen lassen, wie die Festplatte nun partitioniert wird. Außerhalb von fdisk auch per "fdisk -l".
  4. Änderungen Speichern:
    Drücke "w".
    In der Anleitung wird nun fortsetzend von einem System mit Linux alleine ausgegangen! Beachte dies bei den nächsten Schritten, da ggf. die Partitionen verschieden sind. Einen Überblick über die eigene Partitionierung bekommt man in fdisk mit "p". fdisk kann man dann mit "q" verlassen, ohne die Einstellungen zu speichern.

3. Formatieren & Mounten

  1. Boot-Partition mit ext2 formatieren:
    # mke2fs /dev/sda1
  2. Root-Partition mit ext3 formatieren:
    # mke2fs -j /dev/sda3
  3. Swap-Partition erstellen:
    # mkswap /dev/sda2
    An dieser Stelle wäre es nun sinnvoll ggf. Windows zu installieren! Denn die erste NTFS-Partition wird ab hier als C: erkannt.
  4. Swap-Partition aktivieren:
    # swapon /dev/sda2
  5. Root-Partition mouten:
    # mount /dev/sda3 /mnt/gentoo
  6. Boot-Mountverzeichnis erstellen:
    # mkdir /mnt/gentoo/boot
  7. Boot-Partition mouten:
    # mount /dev/sda1 /mnt/gentoo/boot

4. Installations-Dateien vorbereiten:

  1. Datum und Zeit überprüfen:
    # date
  2. [optional] Datum und Zeit korrigieren:
    # date 042516212005 (für Sun Apr 25 16:21:18 CEST 2005)
  3. In das Installations-Verzeichnis wechseln:
    # cd /mnt/gentoo
  4. Mirror für Stage2-Archiv mit links2 wählen und herunterladen:
    # links2 http://www.gentoo.org/main/en/mirrors2.xml
  5. Wechsel auf dem Mirror nach releases/<Rechnerarchitektur>/<Gentoo Version>/stages/
    Dort findet man nach Rechnertypen sortiert die verfügbaren Stagearchive. Starte den Download des Stage2-tar.bz2-Archivs mit "D". Schließe Links2 danach mit "Q".
    Wenn der Download verifiziert werden soll, dann muss man auch noch die *.md5-Datei des Stage2-Archivs runtergeladen werden.
  6. [optional] Stage-Archive verifizieren:
    # md5sum -c stage2-x86-2005.0.tar.bz2.md5
  7. Stage-Archiv entpacken:
    # tar -xvjpf stage?-*.tar.bz2
    x = extract, v = verbose, j = Dekompr. mit bzip2, p = preserve permissions, f = Datei auspacken ohne die Standardeingabe zu nutzen.

5. Konfiguration der Compiler Optionen (/etc/make.conf)

  1. Öffnen von /etc/make.conf:
    # nano -w /mnt/gentoo/etc/make.conf
  2. Kompilierprozessanzahl hinzufügen:
    MAKEOPTS="-j2"
    CPU-Anzahl + 1
  3. Download Server Zeile hinzufügen:
    GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror"
    Automatisch geht's per "mirrorselect -a -s4 -o | grep 'GENTOO_MIRRORS=' >> /mnt/gentoo/etc/make.conf", was jedoch sehr lange dauert!
  4. CFLAGS ergänzen um:
    -O2
    Ein großes O (!), keine Null. Mögliche Klassen sind s (size-optimized), 0 (keine Optimierung), 1, 2 oder 3 für auf höhere Geschwindigkeit optimierte Flags (jede Klasse erbt die Flags der kleineren, zuzüglich ein paar Extras.
    -pipe
    Gerne benutztes Optimierungsflag, welches Pipes statt temporärer Dateien für die Kommunikation zwischen den verschiedenen Stufen des Übersetzungsvorganges benutzt.
  5. USE-Flag Zeile hinzufügen:
    USE="-gtk -gnome -3dfx qt kde dvd alsa cdr ssl avi crypt cups dvdr dvdread divx4linux flash ftp gif icq ieee1394 imap java javascript jpeg mmx mozilla mp3 mpeg ogg opengl pcmcia pdflib quicktime samba scanner tiff usb v4l vcd xmms xprint xvid X"
    Eigene Auswahl treffen! Alle verfügbaren USE-Flags kann man sich mit "# less /usr/portage/profiles/use.desc" anschauen. Gibt an, wofür Unterstütztungen compiliert werden sollen.

6. Installation des Gentoo Basis System

  1. Kopieren der DNS Informationen:
    # cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
  2. Mounten von /proc:
    # mount -t proc none /mnt/gentoo/proc
  3. [optional] Mounten von /dev:
    # mount -o bind /dev /mnt/gentoo/dev
    Manche Off-Board IDE-Controller machen Probleme mit Grub.
  4. Mit Chroot in die neue Umgebung wechseln:
    # chroot /mnt/gentoo /bin/bash
    # env-update && source /etc/profile
  5. Portage Tree updaten:
    # emerge --sync
    XP 2200+/DSL1000 = ca. 34 min; PIII-M 1000/DSL4000 = ca. 14 min; PIII 600/DSL4000 = ca. 25 min
    Ab 2005.0 soll ein "# emerge --metadata" den Vorgang beschleunigen, jedoch konnte ich dies bisher mangels Funktion nicht nachvollziehen!
  6. Downloaden der grundlegenden Systemprogramme:
    # emerge system --fetchonly
    Achtung: Bei einer Stage3-Installation wird dieser Schritt nicht benötigt!
  7. Kompilieren der grundlegenden Systemprogramme:
    # emerge system
    XP 2200+ = 1-4h; nach 45min 29von75; PIII-M 1000 (85 Pakete) = ca. 3 Std 55 min
    Achtung: Bei einer Stage3-Installation wird dieser Schritt nicht benötigt!
  8. Aktualisieren der Konfigurationsdateien:
    # etc-update
    "-5" im Programm eingeben.
    Achtung: Bei einer Stage3-Installation wird dieser Schritt nicht benötigt!

7. Konfiguration des Kernels

  1. Setzen der Zeitzone:
    # ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
    Bsp. für Berlin; weitere mit # ls /usr/share/zoneinfo
  2. Installation einer der Kernel-Quellen:
    # emerge gentoo-sources
    XP 2200+ = 10 min; PIII-M 1000 = 2 min --> ca. 37MB Download inklusive
  3. Link zur Kernelquelle überprüfen:
    # ls -l /usr/src/linux
    Korrektur mit: "# rm /usr/src/linux && ln -s /usr/src/linux-2.6.12-r6 /usr/src/linux"
  4. Menuconfig starten:
    # cd /usr/src/linux
    # make menuconfig
  5. Umbedingt experimenteller/n Codes/Treiber auswählen:
    Code maturity level options --->   [*] Prompt for development and/or incomplete code/driver
  6. Umbeding Dateisystem (NICHT als Modul) einbinden:
    General setup --->
      [*] Support for hot-pluggable devices
    File systems --->
      Pseudo Filesystems --->
        [*] /proc file system support
        [*] /dev file system support (OBSOLETE)
        [ ] Automatically mount at boot
        [*] /dev/pts Extended Attributes
        [*] Virtual memory file system support (former shm fs)
    etc.

    optional: PPPoE Treiber:
    Device Drivers --->
      Networking support --->
        <*> PPP (point-to-point protocol) support
        <*>   PPP support for async serial ports
        <*>   PPP support for sync tty ports
  7. Kernel kompilieren:
    # make && make modules_install
    XP 2200+ = 10 min; PIII-M 1000 = 15 min
  8. Installieren des Kernels:
    # cp arch/i386/boot/bzImage /boot/kernel-2.6.12-gentoo-r6
    # cp System.map /boot/System.map-2.6.12-gentoo-r6
  9. Backup der Kernelkonfiguration erstellen:
    # cp .config /boot/config-2.6.12-gentoo-r6
  10. /etc/modules.conf aktualisieren:
    # modules-update
  11. Updaten von udev, hotplug und coldplug und beim Systemstart starten:
    # emerge udev hotplug coldplug
    # rc-update add coldplug boot
    # rc-update add hotplug default
    PIII-M 1000 = 2 min

8. System konfigurieren:

  1. Die statischen Dateisysteme Informationen konfigurieren:
    # nano -w /etc/fstab
    /dev/sda1           /boot       ext2    noauto,noatime  1 2
    /dev/sda2           none        swap    sw              0 0
    /dev/sda3           /           ext3    noatime         0 1
    /dev/cdroms/cdrom0  /mnt/cdrom  iso9660 noauto,ro       0 0
    /dev/fd0            /mnt/floppy auto    noauto          0 0

    none                /proc       proc    defaults        0 0

    none                /dev/shm    tmpfs   nodev,nosuid,noexec 0 0
    Wer noch mehr Laufwerke/Partitionen hat sollte diese hier einbinden. Es müssen jedoch alle Mountpoints müssen existieren!
    /dev/sda6  /mnt/ntfs  ntfs    noatime,user,ro,uid=1000  0 0
    /dev/sda7   /mnt/fat vfat   noatime,user,rw    0 0
  2. Konfigurieren des Hostnamens:
    # nano -w /etc/conf.d/hostname
    HOSTNAME="MyHostName"
  3. Konfigurieren des Domainnamens:
    # nano -w /etc/conf.d/domainname
    DNSDOMAIN="arbeitsgruppe"
    # rc-update add domainname default
  4. [optional] Konfigurieren der Systemuhr für Dualbootsysteme:
    # nano -w /etc/conf.d/clock
    CLOCK="local"
  5. Konfigurieren des Gentoo RC Systems:
    # nano -w /etc/conf.d/rc
    RC_NET_STRICT_CHECKING="no"
    RC_DEVICES="udev"
    RC_DEVICE_TARBALL="no"
  6. Konfigurieren des Netzwerkkarte(n):
    # nano -w /etc/conf.d/net
    Bei Verwendung von DHCP muss noch "# emerge dhcp" ausgeführt werden, da sonst kein DHCP-Client zur Verfügung steht! Bei Verwendung mehrerer Netzwerkkarten müssen die entsprechenden Passagen ggf. angefügt werden! ("config_eth0","routes_eth0", ...)
    ACHTUNG: Falls ifconfig nicht durch Abhängigkeiten mitinstalliert wurde, kann man dies manuell mit "emerge sys-apps/net-tools" nachholen.
  7. Netzwerkkarte beim Systemstart aktivieren:
    # rc-update add net.eth0 default
    [optional] Bei mehreren Netzwerkkarten muss das Init-Script dupliziert und jeweils explizit aktiviert werden:
    # ln -s /etc/init.d/net.eth0 /etc/init.d/net.eth1
    # rc-update add net.eth1 default
  8. [optional] /etc/hosts aktualisieren:
    # nano -w /etc/hosts
  9. System Logger installieren und beim Systemstart starten lassen:
    # emerge metalog
    # rc-update add metalog default
  10. Cron installieren und beim Systemstart starten lassen:
    # emerge cron
    # rc-update add vixie-cron default
  11. NTP installieren und beim Systemstart starten lassen:
    # emerge ntp
    # rc-update add ntp-client default
  12. ACPId installieren und beim Systemstart starten lassen:
    # emerge acpid
    # rc-update add acpid default
  13. hdparm konfigurieren und beim Booten starten lassen:
    # nano -w /etc/conf.d/hdparm
    disc0_args="-d1c1u1m16"
    cdrom0_args="-d1c1u1"
    # rc-update add hdparm boot

9. Grub installieren

  1. Grub installieren:
    # emerge grub
    PIII-M 1000 = 2 min
  2. Grub konfigurieren:
    # nano -w /boot/grub/grub.conf
    default 0
    timeout 5
    splashimage=(hd0,0)/grub/splash.xpm.gz

    title Gentoo Linux 2.6.12-r6
      root (hd0,0)
      kernel (hd0,0)/kernel-2.6.12-gentoo-r6 root=/dev/sda3 gentoo=nodevfs
    [optional] Bootmanagereintrag für Windows 2000/XP anlegen:
    title Windows 2000/XP
      rootnoverify (hd0,2)
      makeactive
      chainloader +1
  3. /etc/mtab aktualisieren:
    # cp /proc/mounts /etc/mtab
  4. Grub im Masterbootrecord eintragen:
    # grub-install --root-directory=/boot /dev/sda
    Wenn man kein Diskettenlaufwerk hat, dann sollte man die entsprechende Zeile "fd(0,0)" in der /boot/grub/device.map entfernen, da sonst die Installation mangels Diskettenlaufwerk nicht ausgeführt werden kann!
    Alternative Grub Installationsmöglichkeit:
    # grub
    grub> root (hd0,0)
    grub> setup (hd0)
    grub> quit

10. Reboot:

  1. Root-Passwort des zu installierenden Systems setzen:
    # passwd
  2. Arbeitsaccount anlegen; Auffoderderung das Passwort einzugeben kommt sofort:
    # useradd -m -G users,wheel,audio,cdrom,cdrw,usb,video -s /bin/bash meolus
  3. Verlassen der chroot-Umgebung:
    # exit
  4. Unmounten aller Partitionen und Rebooten:
    livecd ~# cd
    livecd /# umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo
    livecd /# reboot

Erstellt am 06.08.2005 von Marcel Gehrmann
Letzte Änderung 07.09.2008

zurück zur Übersicht