Wenn die Standard Boot-von-CD Installation für Sie nicht funktioniert (oder Sie sie einfach nicht mögen), ist nun Hilfe verfügbar. Dieses Dokument soll eine Sammlung verschiedener alternativer Installationsmethoden bieten. Sollten Sie eine alternative Installationsmethode kennen, von der Sie meinen, dass sie auch für andere hilfreich sein könnte, zögern Sie bitte nicht, schreiben Sie es auf und posten Sie es auf Bugzilla.
2. Booten der Installations-CD mit Smart BootManager
Downloaden Sie den Smart BootManager von http://btmgr.sourceforge.net/download.html. Linux-Quellen oder Binärpakete sowie Windows .exe Versionen finden Sie dort genauso, wie viele Sprachpakete. Wie auch immer, in diesem Fall sollten Sie das Binärpaket herunterladen, da sich die Quellen nicht mit neueren Versionen von NASM kompilieren lassen.
Entweder kompilieren Sie das Paket aus den Quellen oder laden Sie nur das Binärpaket herunter. Es gibt verschiedene Optionen, die Sie während Erstellung der Boot Diskette benutzen können, wie Sie hier sehen können.
Befehlsauflistung 2.1: Smart BootManager Optionen |
sbminst [-t theme] [-d drv] [-b backup_file] [-u backup_file]
-t theme select the theme to be used, in which the theme could be:
us = English theme de = German theme
hu = Hungarian theme zh = Chinese theme
ru = Russian theme cz = Czech theme
es = Spanish theme fr = French theme
pt = Portuguese theme
-d drv set the drive that you want to install Smart BootManager on;
for Linux:
/dev/fd0 is the first floppy driver,
/dev/hda is the first IDE harddisk driver.
/dev/sda is the first SCSI harddisk driver.
for DOS:
0 is the first floppy drive
128 is the first hard drive;
-c disable CD-ROM booting feature;
-b backup_file backup the data that will be overwritten for
future uninstallation;
-u backup_file uninstall Smart BootManager, should be used alone;
-y do not ask any question or warning.
|
Befehlsauflistung 2.2: Benutzen von sbminst um die Bootdiskette zu erstellen |
# sbminst -t us -d /dev/fd0
|
Notiz: Ersetzen Sie fd0 mit dem Namen ihres Diskettenlaufwerks, sollte es anders heißen. |
Schieben sie die Diskette nun in das Diskettenlaufwerk des Computer auf dem Sie die Installations-CD starten möchten. Vergessen Sie nicht die Installations-CD einzulegen und starten Sie den Rechner.
Sie werden vom Smart BootManager mit einem Dialog begrüßt. Wählen Sie Ihr CD-ROM Laufwerk aus und drücken Sie ENTER zum starten der Installations-CD. Nachdem Sie gebootet haben, können Sie mit der Standardinstallationsanleitung fortfahren.
Weitere Informationen zum Smart BootManager, finden Sie hier: http://btmgr.sourceforge.net/.
Notiz: Knoppix ist nur für x86 Benutzer verfügbar. |
Booten von der Knoppix LiveCD ist ein Weg ein voll funktionales System während des kompilierens von Gentoo zur Verfügung zu haben. Tux Racer wird Ihnen helfen, die Zeit totzuschlagen und sie können OpenOffice zum Arbeiten verwenden.
Warnung: Sein Sie sich im klaren, dass wenn Sie irgendetwas im Home Verzeichnis von Knoppix speichern, während Sie Gentoo installieren, dies nicht verfügbar sein wird, sowie Sie neustarten in Ihr Gentoo System. Stellen Sie sicher, dass Sie wichtige Dateien auf der Festplatte oder einem anderen Computer speichern! |
Booten Sie die Knoppix CD. Wenn sie Knoppix 3.6-3.8.2 haben, müssen Sie knoppix26 als Bootoption angeben um einen 2.6 Kernel zu laden. Wenn Sie vergessen dies zu tun, erhalten Sie eine Fehlermeldung beim chroot, die Ihnen mitteilt, dass Ihr Kernel zu alt ist. Wenn Sie jedoch Knoppix 3.9+ haben ist dieser Schritt überflüssig, denn dort ist der 2.6 Kernel Standard.
Standardmäßig startet Knoppix einen KDE Desktop. Öffnen Sie eine konsole und geben Sie su - ein, damit Sie Ihr Passwort ändern können. Dies ermöglicht es Ihnen das root-Passwort für Knoppix zu setzen. Sie können nun sshd, wenn Sie wünschen, für einen remote Login konfigurieren.
Befehlsauflistung 3.1: Erstellen des /mnt/gentoo Mountpunkt |
# mkdir /mnt/gentoo
|
An diser Stelle können Sie mit der Standardinstallation in Abschnitt 4 fortfahren. Jedoch sollten Sie, wenn Sie aufgefordert werden das proc-System zu mounten, folgenden Befehl stattdessen ausführen:
Befehlsauflistung 3.2: Mounten benötigter Dateisysteme |
# mount -o bind /proc /mnt/gentoo/proc
|
Beachten Sie bitte auch, dass einige von Portages FEATURES nicht unter Knoppix funktionieren werden. Sein Sie besonders wachsam bei userpriv und usersandbox. Wenn Sie Fehler erhalten sollten, ist es möglicherweise ratsam einige oder alle der optionalen Funktionen zu deaktivieren.
4. Installation ohne Disks mit PXE Boot
Sie benötigen am Client eine Netzwerkkarte die das PXE Protokol zum booten benutzt, wie zum Beispiel viele 3COM Karten. Außerdem benötigen sie ein BIOS, dass das booten von PXE unterstützt.
Erstellen Sie die Verzeichnisse, in dem Sie das plattenlose System ablegen wollen. Erstellen Sie ein Verzeichnis namens /diskless, das ein Verzeichnis pro Client beinhaltet. Für den Rest dieses HowTo arbeiten wir mit dem Client "eta".
Befehlsauflistung 4.1: Verzeichnisse anlegen |
# mkdir /diskless # mkdir /diskless/eta # mkdir /diskless/eta/boot |
DHCP und TFTP Setup: Der Client bekommt die Boot Informationen per DHCP und lädt alle benötigten Datein mit TFTP.
Für dhcpd, führen Sie einfach emerge dhcp (oder irgendeinen anderen DHCP Server Ihrer Wahl) aus. Stellen Sie sicher, dass das korrekte Interface in /etc/conf.d/dhcpd ausgewählt ist, und konfigurieren Sie es für Ihre grundlegenden Anforderungen. Fügen Sie dann Folgendes zu der /etc/dhcp/dhcpd.conf hinzu.
Notiz: Dies gibt dem Client eine statische IP Adresse und den Pfad eines PXE Bootimage, hier pxegrub. Sie müssen die MAC-Addresse der Ethernet-Karte des Clients und das Verzeichnis, in dem die Client-Dateien liegen, anpassen. |
Befehlsauflistung 4.2: dhcpd.conf |
option option-150 code 150 = text ;
ddns-update-style none ;
host eta {
hardware ethernet 00:00:00:00:00:00;
fixed-address ip.add.re.ss;
option option-150 "/eta/boot/grub.lst";
filename "/eta/boot/pxegrub";
}
|
Als Nächstes müssen Sie Ihre Schnittstelle in /etc/conf.d/net so konfigurieren, dass sie beim nächsten Booten nicht gelöscht wird. In /etc/conf.d/net.example finden Sie weitere Informationen.
Befehlsauflistung 4.3: /etc/conf.d/net |
(Ersetzen Sie eth0 durch die korrekte Schnittstelle)
config_eth0=( "noop" )
|
Für TFTP, emerge app-admin/tftp-hpa. In /etc/conf.d/in.tftpd, tragen Sie folgendes ein:
Befehlsauflistung 4.4: in.tftpd |
INTFTPD_PATH="/diskless"
INTFTPD_USER="nobody"
INTFTPD_OPTS="-u ${INTFTPD_USER} -l -vvvvvv -p -c -s ${INTFTPD_PATH}"
|
Setup GRUB: Zum PXE Booten benutze ich GRUB mit aktiviertem netboot USE Flag. Nachdem GRUB kompiliert ist, kopieren Sie den PXE-Schnappschuss in das Boot-Verzeichnis des Clients. Passen Sie nun die entsprechende grub.lst-Konfiguration an.
Befehlsauflistung 4.5: Grub Setup |
# echo "sys-boot/grub netboot" >> /etc/portage/package.use # emerge -av grub # cp /usr/lib/grub/pxegrub /diskless/eta/boot/pxegrub # nano -w /diskless/eta/boot/grub.lst |
Befehlsauflistung 4.6: grub.lst |
default 0 timeout 30 title=Diskless Gentoo root (nd) kernel /eta/bzImage ip=dhcp root=/dev/nfs nfsroot=ip.add.re.ss:/diskless/eta #Für die nfsroot Option geben Sie die IP Adresse des Servers an das Verzeichnis wo die Daten des Plattenlosen Client liegen (auf dem Server). |
NFS einrichten: NFS ist ziemlich einfach zu konfigurieren. Sie müssen nur die Konfiguration in /etc/exports anpassen:
Befehlsauflistung 4.7: /etc/exports |
# nano -w /etc/exports
# /etc/exports: NFS file systems being exported. See exports(5).
/diskless/eta eta(rw,sync,no_root_squash)
|
Aktualisieren Sie Ihre Host Datei: Ein wichtiger Schritt ist nun, ihre /etc/hosts Datei an Ihre Bedürfnisse anzupassen.
Befehlsauflistung 4.8: /etc/hosts |
127.0.0.1 localhost 192.168.1.10 eta.example.com eta 192.168.1.20 sigma.example.com sigma |
Erstellen des Systems auf dem Server
Es ist keine schlechte Idee den Server mit einer Gentoo Installations-CD zu booten, aber Sie können auch sofort fortfahren, wenn Sie mit den Gentoo Installationsanweisungen für existierende Installationen vertraut sind. Folgen Sie der Standardprozedur zur Installation, wie im Gentoo Handbuch beschrieben, ABER mit den folgenden Änderungen: Wenn Sie das Dateisystem mounten, führen Sie folgendes aus (wobei hdaX die Partition ist, auf der Sie das /diskless Verzeichnis erstellen). Sie brauchen keine weiteren Dateisysteme zu mounten, da alle Dateien in das /diskless/eta Verzeichnis kommen.
Befehlsauflistung 4.9: Mounten des Dateisystems |
# mount /dev/hdaX /mnt/gentoo
|
Stage Tarball und chroot: Dieses Beispiel benutzt einen Stage 3 Tarball. Mounten Sie /proc in Ihr diskless Verzeichnis und chrooten Sie in dieses, um mit der Installation fortzufahren. Folgen Sie den Anweisungen in der Installations Anleitung bis zur Kernel Konfiguration.
Warnung: Seien Sie mit dem entpacken des Stage Tarball besonders vorsichtig. Sie wollen Ihn nicht über Ihre existierende Installation kopieren. |
Befehlsauflistung 4.10: Entpacken des Stage-Tarballs |
# cd /mnt/gentoo/diskless/eta/ # tar -xvjpf /mnt/cdrom/gentoo/stage3-*.tar.bz2 # mount -t proc /proc /mnt/gentoo/diskless/eta/proc # cp /etc/resolv.conf /mnt/gentoo/diskless/eta/etc/resolv.conf # chroot /mnt/gentoo/diskless/eta/ /bin/bash # env-update # source /etc/profile |
Konfiguration des Kernels: Wenn Sie make menuconfig zur Kernelkonfiguration ausführen, vergessen Sie nicht die folgenden Optionen zusätzlich zu den anderen empfohlenen zu aktivieren:
Befehlsauflistung 4.11: menuconfig Optionen |
- Your network card device support
(Im Kernel, *nicht* als Modul!)
- Under "Networking options" :
[*] TCP/IP networking
[*] IP: kernel level autoconfiguration
[*] IP: DHCP support
[*] IP: BOOTP support
- Under "File systems --> Network File Systems" :
<*> NFS file system support
[*] Provide NFSv3 client support
[*] Root file system on NFS
|
Speichern Sie den Kernel in Ihrem chroot / (nicht in /boot), wie nach den pxegrub Einstellungen vorher definiert. Als nächstes konfigurieren Sie die /etc/fstab des diskless-Clients
Befehlsauflistung 4.12: /etc/fstab |
# nano -w /etc/fstab
/dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0
proc /proc proc defaults 0 0
tmpfs /dev/shm tmpfs nodev,nosuid,noexec 0 0
|
Sie müssen auch verhindern, dass der Client eine Überprüfung des Dateisystems vornimmt:
Befehlsauflistung 4.13: Verhindern, dass der Client das Dateisystem checkt |
# touch /fastboot # echo "touch /fastboot" >> /etc/conf.d/local.start |
Installieren Sie nfs-utils, da Ihr Client sich darauf stark stützen wird.
Befehlsauflistung 4.14: Installation von nfs-utils |
# emerge nfs-utils
|
Bootloader: Installieren Sie keinen weiteren Bootloader, wir haben bereits einen: pxegrub. Beenden sie die Installation und starten Sie den Server neu. Starten Sie die Dienste, die Sie zum booten des neuen Client benötigen: DHCP, TFTPD und NFS.
Befehlsauflistung 4.15: Starten benötigter Dienste |
# /etc/init.d/dhcp start # /etc/init.d/in.tftpd start # /etc/init.d/nfs start |
Um den neuen Client problemlos zu booten, müssen Sie das BIOS und die Netzwerkkarte so konfigurieren, dass PXE als erste Bootmethode genutzt wird und nicht das booten von CD-ROM oder einer Diskette. Sollten Sie dazu Hilfe benötigen, schauen Sie in die Bedienungsanleitung oder auf die Webseite des Herstellers. Die Netzwerk Karte sollte mittels DHCP eine IP Adresse bekommen und das GRUB PXE Image per TFTP laden. Dann sollten Sie einen nettes schwarz-weißes GRUB-Menü sehen, wo Sie den zu bootenden Kernel auswählen und ENTER drücken. Wenn alles in Ordnung ist sollte der Kernel booten, das root-Dateisystem per NFS gemountet und ein Login-Prompt bereitstellt werden.
5. Gentoo Installation aus einer existierenden Linux Distribution heraus
Um Gentoo aus Ihrer existierenden Linux Distribution zu installieren benötigen Sie den chroot Befehl sowie eine Kopie eines beliebigen Stage Tarballs oder ein CD Image, dass Sie installieren möchten. Eine Verbindung ins Internet ist empfehlenswert, wenn Sie mehr installieren möchten, als in Ihrem Tarball enthalten ist (nebenbei: Ein Tarball ist eine Datei, die auf .tbz oder .tar.gz endet). Der Autor benutzt RedHat Linux 7.3 als das "Host" System, aber das weniger wichtig. Also fangen wir an!
Zunächst werden wir Gentoo eine Partition zuweisen, indem wir eine existierende Linuxpartition erweitern, die Partition mounten, den Tarball auf der gemounteten Partition entpacken, in das "Pseudo-System" chrooten und das Bauen von Gentoo starten. Nach dem Bootstrap-Prozess werden wir einige Konfigurationen machen, um sicherzustellen, dass es bootet. Dann sind wir bereit zum Reboot und können Gentoo nutzen.
Wie kann ich Platz für Gentoo schaffen?
Die Root-Partition ist das Dateisystem, das als / gemountet wird. Ein kurzer Blick auf mount zeigt, wovon ich rede. Wir werden außerdem df (disk free) benutzen, um zu sehen wie viel Platz uns bleibt. Beachten Sie, dass es nicht zwinged notwendig ist, die Größe der root-Partition zu ändern. Sie können auch die Größe anderer Partitionen ändern, darüber reden wir später.
Befehlsauflistung 5.1: Informationen zu bestehenden Dateisystemen |
# mount /dev/hdb2 on / type ext3 (rw) none on /proc type proc (rw) none on /dev/pts type devpts (rw,gid=5,mode=620) none on /dev/shm type tmpfs (rw,nodev,nosuid,noexec) # df -h Filesystem Size Used Avail Use% Mounted on /dev/hdb2 4.0G 1.9G 2.4G 82% / none 38M 0 38M 0% /dev/shm |
Wie wir sehen hat die Partition /dev/hdb2, die als / gemounted ist, noch 2.4 GB frei. In meinem Fall, werde ich die Partition verkleinern, so dass nachher noch 400 MB freier Platz und 2 GB für Gentoo verfügbar sind. Nicht schlecht, da kann man schon ein bisschen was installieren. Für die meisten Benutzer sollte 1 GB ausreichen.
Installation von parted zum Verändern der Partition(en)
Parted ist ein Werkzeug, dass von der GNU Foundation bereitgestellt wird, ein altes und respektables großes Projekt dessen Software Sie in diesem Moment nutzen. Es gibt ein Tool, das uns in diesem Moment sehr hilfreich sein wird. Es heißt parted, 'Partition Editor'. Sie können es von http://www.gnu.org/software/parted/ herunterladen.
Notiz: Es gibt andere Tools, die genau dasselbe tun können, der Autor ist aber unsicher/uninteressiert ob auch PartitionMagic(tm) oder andere Software dieser Art für diesen Zweck geeignet ist. Es ist im Zweifelsfall Ihre Aufgabe dies herauszufinden. |
Schauen Sie auf der Webseite von parted, ob das Dateisystem, dessen Größe Sie ändern möchten, von parted unterstützt wird oder nicht. Wenn nicht haben Sie Pech und müssen Ihre Partitionen platt machen und ihr System neu installieren. Wenn Ihr Dateisystem von parted unterstützt wird, fahren Sie mit dem Download von parted fort. Nun haben wir ein Problem, wir wollen die Größe unserer root-Partition ändern, also müssen wir ein Mini-Linux von Diskette oder CD-ROM starten und parted auf eine Diskette kopieren.
Wichtig: Stellen Sie sicher, dass das, was Sie mit Ihrer Partition anstellen wollen, auch von parted unterstützt wird. |
Holen Sie sich die mininux Boot/Root-Diskette (eine 2.4-basierende Mini-Linux-Distribution) von http://mininux.free.fr/uk/. Erstellen Sie eine Diskette wie in der Dokumentation des Softwarepaketes erklärt und legen Sie eine neue Diskette für den nächsten Schritt ins Laufwerk.
Notiz: Beachten Sie, dass Linux ein Synomyn für "Es gibt mehrere Wege dies zu tun" ist. Ihr Ziel ist es parted auf einer nicht gemounteten Partition auszuführen, damit es seine Arbeit erledigen kann. Sie könnten auch andere Boot/Root-Disketten als mininux verwenden. Möglicherweise müssen Sie diesen Schritt gar nicht durchführen, das heißt Sie müssen nur das Dateisystem, welches Sie repartitionieren wollen, umounten und parted auf es ausführen. Vielleicht haben Sie ja auch noch Platz auf ihrer Festplatte frei, den Sie für Gentoo verwenden können. |
Befehlsauflistung 5.2: Erstellen der Werkzeug-Diskette |
# mkfs.minix /dev/fd0
480 inodes
1440 blocks
Firstdatazone=19 (19)
Zonesize=1024
Maxsize=268966912
|
Wir werden nun parted bauen. Wenn Sie die Quellen noch heruntergeladen und entpackt haben ist nun ein guter Zeitpunkt dafür. Wechseln Sie in das parted-Quellen Verzeichnis und führen Sie den folgende Befehl aus, um parted zu kompilieren und auf die Diskette zu kopieren.
Befehlsauflistung 5.3: Bauen der Werkzeug-Diskette |
# mkdir /floppy; mount -t minix /dev/fd0 /floppy &&
export CFLAGS="-O3 -pipe -fomit-frame-pointer -static" && ./configure
&& make && cp parted/parted /floppy && umount /floppy
|
Gratulation, Sie sind nun soweit und können neustarten und die Größe der Partition ändern, nachdem Sie einen kurzen Blick auf die parted Dokumentation geworfen haben. Das resizen sollte auch auf größeren Festplatten nicht länger als 30 Minuten dauern, haben Sie Geduld. Starten Sie Ihr System erneut nun mit der mininux Bootdiskette (legen Sie diese einfach ein) und sowie Sie eingeloggt sind, wechseln Sie die Diskette mit der Werkzeug-Diskette, die Sie gerade erstellet haben, aus und tippen mount /dev/fd0 /floppy ein um parted unter /floppy zu haben. Sowie dieser langwierige Vorgang abgeschlossen ist, kommen wir zu den Sachen die wirklich Spaß machen, die Installation von Gentoo. Rebooten Sie nun in Ihr altes Linux System zurück. Die Festplatte, die Sie bearbeiten möchten, ist die, welche die Partition enthält, von der wir die Größe ändern wollen. Zum Beispiel, wenn wir die Größe von /dev/hda3 ändern wollen, ist das Laufwerk /dev/hda.
Befehlsauflistung 5.4: Befehle, die Sie ausführen müssen nachdem Sie das mininux gestartet haben |
# mount /dev/fd0 /floppy # cd /floppy; ./parted [drive you wish to operate on] (parted) print Disk geometry for /dev/hdb: 0.000-9787.148 megabytes Disk label type: msdos Minor Start End Type Filesystem Flags 1 0.031 2953.125 primary ntfs 3 2953.125 3133.265 primary linux-swap 2 3133.266 5633.085 primary ext3 4 5633.086 9787.148 extended 5 5633.117 6633.210 logical 6 6633.242 9787.148 logical ext3 (parted) help resize resize MINOR START END resize filesystem on partition MINOR MINOR is the partition number used by Linux. On msdos disk labels, the primary partitions number from 1-4, and logical partitions are 5 onwards. START and END are in megabytes (parted) resize 2 3133.266 4000.000 |
Wichtig: Seien Sie geduldig! Ihr Computer arbeitet. Werfen Sie einen Blick auf die Festplatten LEDs Ihres Gehäuses; Sie werden sehen, dass ihr Computer wirklich arbeitet. Dies sollte zwischen 2 und 30 Minuten dauern. |
Nachdem sie Platz für Gentoo geschaffen haben rebooten Sie in Ihr altes Linux System. Gehen Sie nun zu Gentoo Handbuch: Vorbereitung der Festplatten und folgen den Instruktionen. Beim chrooten benutzen Sie folgenden Befehl:
Befehlsauflistung 5.5: Leeren der Umgebung während des chroot |
# env -i HOME=$HOME TERM=$TERM chroot /mnt/gentoo /bin/bash # /usr/sbin/env-update # source /etc/profile |
Viel Spaß!
Die Inhalte dieses Dokuments sind unter der Creative Commons - Namensnennung / Weitergabe Lizenz lizenziert.