Login
Newsletter
Werbung

Mo, 8. Dezember 2003, 00:00

ROCK Linux 1.4.0 Distributionstest

ROCK Linux ist mit weniger als 300 Paketen eine relativ kleine Distribution. Man kann einige Skripte von der ROCK Linux-Website herunterladen und damit alle Pakete aus dem Quellcode erstellen lassen.

Was ist ROCK Linux?

ROCK Linux ist mit weniger als 300 Paketen eine relativ kleine Distribution. Man kann einige Skripte von der ROCK Linux-Website herunterladen und damit alle Pakete aus dem Quellcode erstellen lassen. Wenn man die Entwicklungsversion verwendet, ist man somit stets auf einem sehr aktuellen Stand. Außerdem konnte die Distribution dadurch innerhalb von 3 Tagen auf die PPC-Architektur portiert werden. Hier wurde jedoch die auf eine CD-ROM gebrannte stabile Version 1.4.0 für die Intel-Architektur getestet, die auf dem LinuxTag verteilt wurde. Das Erstellen aus den Quellcode-Paketen ist nicht Inhalt dieses Artikels.

ROCK Linux zeichnet sich unter anderem durch die Verwendung von devfs aus. Bei devfs handelt es sich um ein virtuelles Dateisystem, ähnlich wie /proc. Es sind wegen devfs nur Gerätedateien im Verzeichnis /dev, für die tatsächlich passende Geräte vorhanden sind. Außerdem sind die Dateien ordentlich in verschiedene Verzeichnisse aufgeteilt. Durch symbolische Links, die durch das beim Systemstart ausgeführte Skript /etc/conf/devfs erstellt werden, kann hier natürlich Kompatibilität zu bestehender Software (und bestehenden Gewohnheiten) hergestellt werden.

Die Distribution verwendet alle Pakete ohne Patches, soweit dies sinnvoll ist, d.h. Sicherheitskorrekturen werden durchaus angewendet. Sicherheit in der Standardkonfiguration ist ohnehin eine Sache, die das ROCK Linux Team ernst nimmt, so werden z.B. per Voreinstellung keine unnötigen Daemonen gestartet.

Es steht zwar das Programm rpm zur Verfügung, doch verwendet ROCK ein eigenes Paketsystem. Die Pakete liegen als *.tar.bz2-Archive vor und können mit install-pkg / paketname.tar.bz2 installiert werden.

Installation

Ich habe diesen Test auf einem Pentium 133 mit 16 MB RAM durchgeführt, also sehr alter Hardware. Deshalb mußte ich eine Boot- und eine Root-Diskette erstellen, um in die Installation zu kommen. Die CD ist sehr übersichtlich aufgebaut und man findet die Disketten-Images darauf ebenso wie die Dokumentation oder die Pakete sehr schnell.

Nachdem man von den Disketten gebootet hat, wird man aufgefordert, alle Terminals zu nennen, die man verwenden möchte, wobei die Voreinstellung vc/1 bis vc/6 ist, also 6 gewöhnliche virtuelle Konsolen. Auch serielle Konsolen können angegeben werden (z.B. tts/0).

Entsprechend enthält man nun auf allen genannten Terminals eine Rootshell. Leider mit englischer Tastaturbelegung. Das ist besonders unschön, weil sehr viele Tastatureingaben während der Installation nötig sind.

Nun hat man also ein paar Shells. Von hier an ist man mehr oder weniger auf sich alleine gestellt. Man mountet also zunächst die CD-ROM als Quellmedium (etwa per mount -t iso9660 /dev/cdroms/cdrom0 /src) und öffnet am besten schonmal die Installationsanleitung (/src/Documentation/INSTALL). Natürlich kann man auch eine Installation per NFS durchführen, wozu man das Netz konfigurieren und ein Dateisystem per NFS nach /src mounten muß. Die erwähnte Installationsanleitung beschreibt sehr knapp - fast schon stichwortartig - was der Reihe nach zu tun ist, um ein lauffähiges System zu bekommen. Wer ein wenig Erfahrung im Umgang mit Unix-Shells hat und schonmal ein wenig an seinem System rumgebastelt hat, der sollte aber damit problemlos klarkommen.

Zunächst soll man die Festplatten und Dateisysteme einrichten. Die Installationsanleitung bietet hier eine Kurzbeschreibung der Syntax und Funktion von fdisk, mke2fs, mkswap und swapon/swapoff. Nun mountet man noch die erstellten Dateisysteme nach /trg und aktiviert das Swap. Ich verwendete z.B.:

mount /dev/discs/disc0/part2 /trg
mount /dev/discs/disc0/part1 /trg/boot
mount /dev/discs/disc0/part3 /trg/usr
swapon /dev/discs/disc0/part4

Nun startet man die "ROCK Linux Install Shell" durch den Befehl "Install" (großes "i"). Es handelt sich um eine Kommandozeile, die Befehle zum An- und Abwählen von Paketen bereitstellt. Die Pakete sind dabei in Kategorien sortiert. Um einfach alles auszuwählen, kann man select */* verwenden. Da die Festplatte auf meinem Rechner nicht sehr groß ist, lasse ich mir mit list-cat erst einmal die Kategorien anzeigen und schaue dann mit list base/* nach, was hier alles bereits ausgewählt ist. Mit der Vorauswahl bin ich hier recht zufrieden, nur in in anderen Kategorien räume ich mit Kommandos wie unsel net/* und select net/netkit-* etwas auf. Mit diesen Kommandos kommt man recht flott zum Ziel, zumal das Vervollständigen per Tabulator-Taste so funktioniert, wie man es erwartet. Zuletzt startet man das Kopieren per install. Es werden nun die *.tar.bz2-Pakete entpackt.

Anschließend wird man gefragt, ob man nun die Setup-Skripte ausführen möchte. Alternativ könnte man auch alles von Hand machen. Die Setup-Skripte fragen einen nach Dingen wie dem zukünftigen root-Passwort, der Zeitzone, Tastatureinstellung und ähnlichem. Außerdem wird LILO eingerichtet, wobei ich die erstellte lilo.conf noch etwas korrigieren muss. Nebenbei bessere ich in /etc/fstab noch etwas nach, denn meine Partitionen wurden dort noch nicht eingetragen. Nun kann man entweder einen Reboot durchführen oder einige Dinge konfigurieren (oder auch gleich einen neuen Kernel compilieren). Ich wechsle in eine Shell mit Wurzelverzeichnis /trg (wie in der Anleitung beschrieben per cd /trg && chroot . /bin/bash --login).

Ich beschränke mich zunächst auf die Konfiguration der Runlevels. Dies kann mit dem Programm runlvedit durchgeführt werden. Dabei handelt es sich um ein Perl-Skript, das in diesem Fall eine Textdatei erstellt und im vi öffnet, in der die Konfiguration übersichtlich dargestellt wird und recht schnell angepaßt werden kann. Eine typische Zeile darin sieht etwa so aus:

cron 15 -23-- daemon to execute scheduled commands

Diese Zeile würde bedeuten, daß cron in den Runlevels 2 und 3 mit Priorität 15 gestartet wird. Daraus werden dann wiederum die entsprechenden Symlinks in den Verzeichnissen wie /etc/init.d/rc2.d erstellt. Anschließend boote ich in das neue System, was auch problemlos funktioniert.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung