Ubuntu 7.04 (PPC) und InitNG – Installation

Die Installation von InitNG brachte mir immerhin einen Geschwindigkeitsvorteil beim Booten von gut 15 Sekunden. Mein iBook G4 brauchte vor der Installation von InitNG 1min 10sek vom boot Prompt bis zur Anmeldung in gdm und jetzt nach der Installation nur noch 55 Sekunden. Das ist doch ein merkbarer Unterschied.

Also doch noch mein Tutorial zur Installation:

WARNUNG: Die Installation von InitNG ist mehr als experimentell. Ich mußte während ich installiert habe sogar einmal von der Ubuntu CD booten um den Bootloader Yaboot wieder richtig zu konfigurieren. Auch ist darauf hinzuweisen, dass es wenn der powernowd aus irgendeinem Grund nicht startet, und daher die Lüfterregelung beim Laptop nicht anspringt zu Schäden am Prozessor durch Überhitzung kommen kann. Ich übernehme also mit diesem Tutorial keinerlei Verantwortung für irgendwelche Schäden oder sonstige Nachteile, welche die Installation von InitNG mit sich bringt. Bei mir hat es zwar dahingehen keine Probleme gegeben, aber man kann ja nie wissen.

Herunterladen und Kompilieren der Sourcen

InitNG besteht aus zwei Packeten: initng-ifiles und initng selbst. Es ist anzuraten sich immer die neuesten Sourcen von http://download.initng.org/ zu holen. Als ich dieses Tutorial geschrieben habe waren das die Versionen 0.1.3 von initng-ifiles und 0.6.10.1 von initng. Sollte jemand Probleme mit einer neueren Version haben kann er es mit diesen versuchen. Prinzipiell sollten aber in neueren Versionen immer weniger Bugs enthalten sein.

Zum Kompilieren entpackt man die beiden Packete mit:
tar --bzip2 -xvf initng-0.6.10.1.tar.bz2
bzw. tar --bzip2 -xvf initng-ifiles-0.1.3.tar.bz2

Anschließend führt man mit beiden Packeten folgende Schritte aus:

1. Wechsel ins jeweilige Unterverzeichnis
2. Erstellen eines neuen Verzeichnisses „build“
3. Wechsel ins build-Verzeichnis
4. „cmake ..“
5. „make“
6. „sudo make install“

Wenn alles gutgegangen ist sollten jetzt die beiden Packete installiert sein. Wenn sich initng-ifiles beim Kompilieren über ein fehlendes File „initng-paths.h“ beschweren nimmt man dieses aus dem Verzeichnis „build“ des initng Packets und kopiert es in den build Ordner von initng-ifiles. Danach nochmal obige Schritte ausführen.

Wenn beide Packete installiert sind startet man ein sudo genrunlevel --all um den default Runlevel zu generieren.

Anpassungen an Ubuntu 7.04

Zuerst öffnet man mit sudo vim /sbin/ng-update einen Editor und bessert dort die erste Zeile auf #!/bin/bash aus. Warum auch immer, aber auf meinem Rechner funktioniert das Script mit „sh“ nicht. Mit der Bash gibt es zwar auch Fehlermeldungen beim Hinzufügen oder Löschen eines Dienstes, aber es funktioniert trotzdem. Wichtig ist immer nur das Wort „success“. Es sollte bei Änderungen immer auftauchen, sonst hat man sich beim Dienst verschrieben.

Jetzt fügt man mit sudo ng-update add daemon/gdm den grafischen Login Manager zum default Runlevel hinzu.

Mit sudo ng-update del ifupdown-debian löscht man das auf Debian Linux angepasste ifupdown Script.

Damit ALSA funktioniert legt man 2 Symbolische Links an:
sudo ln -s /sbin/alsactl /usr/sbin/alsactl
sudo ln -s /sbin/modprobe /usr/sbin/modprobe

Fehlt nur noch das networking-Script von Ubuntu. Achtung: Wer stattdessen den Network Manager verwenden will muss die Anleitung auf der Ubuntu Seite die diesem Tutorial zugrunde liegt befolgen.

Zuerst erstellen wir mit
sudo cp /etc/initng/service/init.i /etc/initng/service/networking.i
ein Skript welches uns dann das normale init-Netzwerkscript starten soll. Danach öffnen wir „networking.i“ im Editor löschen alles und fügen folgenden Inhalt ein:

#!/sbin/itype
 # This is a i file, used by initng parsed by install_service
# NAME:
 # DESCRIPTION:
 # WWW:
service service/networking {
 need = system/bootmisc;
 env RCDIR = /etc/init.d;
 exec start = /etc/init.d/networking start;
 exec stop = /etc/init.d/networking stop;
 }

Jetzt fügen wir den neuen Service mit sudo ng-update add service/networking zum default Runlevel hinzu.

yaboot.conf editieren

Hier gleich am Anfang nochmals eine Warnung: Sollte man in diesem File irgendetwas falsch machen kann es sein, dass Ubuntu nicht mehr startet. Zuerst sollte man mit „sudo cp /etc/yaboot.conf /etc/yaboot.conf.bak“ ein Backup anlegen, um dieses im Notfall wieder mit einer Rettungs-BootCD zurückzuspielen. Nicht vergessen, ohne ybin aufzurufen, ändert sich am Bootvorgang nichts. Sollte initng nicht richtig starten kann man auch am Bootprompt mit
Linux init=/sbin/init ins normale Init booten.

Jetzt wo das gesagt ist können wir loslegen:
Um InitNG zu verwenden fügt man einfach unter „append=“ den String „init=/sbin/initng“ hinzu. Die Zeile sollte dann in etwa so aussehen:
append="quiet splash init=/sbin/initng"

Mit sudo ybin schreibt man die Änderungen auf die Festplatte und startet den Computer neu. Wenn alles gut gegangen ist sollte der Bootvorgang mit InitNG ca. 1/3 weniger Zeit in Anspruch nehmen.

Dieses Tutorial baut auf dem Ubuntu InitNG Turorial auf. Dort kann man auch sehen wie man den Network Manager und einige andere Sachen aktiviert.

Wenn jemand Verbesserungsvorschläge hat soll er/sie diese bitte einfach als Kommentar hinterlassen. Ich habe nicht alle Befehle jetzt noch einmal nachvollzogen, also verzeiht bitte wenn sie den ein oder anderen kleinen Syntaxfehler enthalten. Der Grundgedanke sollte aber immer nachvollziehbar sein.

Sollte es Probleme geben, dann habe ich wahrscheinlich irgendeinen Schritt den ich gemacht habe vergessen. Auch hier bin ich für Kommentare dankbar.

Advertisements

No comments yet

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: