[[!toc ]] [[Workshop]] # Tag 2. Basissytem Also zunächst mal hatten wir das Prob, das keiner eine Boot-CD dabei hatte und das letzte mal die Installation von Grub gescheitert ist, also ein totes System Andreas hat sich also der Erstellung eines bootfähigen USB-Sticks mit DSL gewidmet, Marcus inzwischen den Rechner aufgebaut und nach einigen USB-Versuchen eine Knoppix-CD ausgegraben und damit mal weitergemacht. ## raid device assembling Nach dem Booten hat das Knoppix natürlich keine Raid-Partitionen gefunden daher mussten die partitionen neu eingelesen werden zunächst das kernelmodul für raid1 laden **modprobe raid1** anschliessend die raidpartitionen neu generieren **mdadm --assemble /dev/md1 /dev/hda1 /dev/hdb1** **mdadm --assemble /dev/md2 /dev/hda2 /dev/hdb2** **mdadm --assemble /dev/md3 /dev/hda3 /dev/hdb3** ## vorbereiten des chroot Zunächst die Root-Partition mounten, etwa nach /mnt/root **mkdir /mnt/root** **mount /dev/md1 /mnt/root** das /dev und /proc-Verzeichnis ist in dem root der installation natürlich nicht vorhanden, probleme nach dem chroot sind vorprogrammiert, das also folgendermassen korrigieren **mount --bind /dev /mnt/root/dev** **mount --bind /proc /mnt/root/proc** Nun kann man in den Chroot springen **chroot /mnt/root** ## grub installieren wir haben ja ein RAID1 und wollen daher ja auch nach einem Ausfall einer Platte booten können. Das setzt vorraus, dass auf beiden Platten der MBR geschrieben wird . Das grub-install script lassen wir dafür mal aussen vor und starten direkt in die Grub-Shell **grub --no-floppy** Nun erzeugen wir den GRUB-MBR mittels folgender Kommandos auf der ersten Festplatte **device (hd0) /dev/hda** **root (hd0,1)** **setup (hd0)** Sollte die erste Festplatte am Bus ausfallen dann verschieben sich ausserdem die Plattennummern und die vormals zweite Platte wird zur ersten Die erste Zeile teilt grub mit, dass er die zweite Platte als hd0 verwenden soll, die zweite und dritte Zeile sind ident wie bei der ersten Platte **device (hd0) /dev/hdb** **root (hd0,1)** **setup (hd0)** ## erzeugen der Datei /etc/raidtab Öffnet/Erstellt die Datei mit einem Editor eurer Wahl, VIM, nano, joe, ... In unserem Fall sieht die Datei so aus, eigentlich ist das ganze selbsterklärend... **raiddev /dev/md1** ** raid-level 1** ** nr-raid-disks 2** ** nr-spare-disks 0** ** persistent-superblock 1** ** device /dev/hda1** ** raid-disk 0** ** device /dev/hdb1** ** raid-disk 1** **raiddev /dev/md2** ** raid-level 1** ** nr-raid-disks 2** ** nr-spare-disks 0** ** persistent-superblock 1** ** device /dev/hda2** ** raid-disk 0** ** device /dev/hdb2** ** raid-disk 1** **raiddev /dev/md3** ** raid-level 1** ** nr-raid-disks 2** ** nr-spare-disks 0** ** persistent-superblock 1** ** device /dev/hda3** ** raid-disk 0** ** device /dev/hdb3** ** raid-disk 1** ## Boottest Also Grub hat diesmal funktioniert, das nun auftretende Prob ist, das der Kernel mit **root=/dev/md2** nix anfangen kann ... warum ... hmm ... ## Neuer Kernel Wir haben uns also entschlossen, einen neuen Kernel zu basteln, und dem gleich ein paar Module mitzugeben Zunächst einmal die Kernel-Sourcen von [[http://kernel.org|http://kernel.org]] runterladen und entpacken Dann die **config** des installierten Standardkernels aus **/boot** in das Kernel-Verzeichnis als **.config** kopieren **make menuconfig** erlaubt das auswählen von Modulen und Kernelbestandteilen in einem ncurses-Menü auf der Console wir haben RAID1, tun/tap-support und ein paar andere Dinge nicht als Module markiert, sondern direkt in das Kernel-Image inkludiert ... mittels **make && make install && make modules_install ** den Kernel übersetzen und installieren ob das funktioniert hat werden wir erst nächstes mal feststellen, da das kompilieren noch nicht abgeschlossen war, als wir abgerauscht sind ## Softwareinstallation Und damit der Krücke nicht fad wird haben wir gleich noch ein paar Pakete installiert **aptitude install bridge-utils iptables tcng gnome vserver**