Kurs: Linux (2)

Der Vorteil eines mehrteiligen Linux-Berichtes hat sich schnell gezeigt: Der Artikel hat sich in den vergangenen Wochen der schnellen Entwicklung anpassen können - doch lesen Sie selbst.

ABSTRACT:

Kaum sind zwei Monate ins Land gegangen, gibt es schon wieder einiges Neues aus der Weit des Linux/68k zu berichten. Einige Hardwareprobleme die im ersten Teil beschrieben wurden, gehören nun der Vergangenheit an.

Überschrift?

Seit einigen Tagen ist nun die Kernelversion 0.9.13 bzw. 1.2.13 p13 aktuell. Mit diesen Versionen ist nun auch ein Betrieb der Festplattenserie DSAS von IBM möglich. Der Atari DMA-Sound-Treiber wurde verbessert und die Unterstützung der BlowUp FX-Ramcard für den Falcon wurde eingebaut. Im Floppytreiber wurden umfangreiche Änderungen vorgenommen und u.a. die ersten Schritte zur Formatierung von Disketten unter Linux/68k eingebaut. Wichtige Verbesserungen sind insbesondere bei der Unterstützung der Medusa T40 durch Linux/68k erfolgt, hierzu aber weiteres im unten folgenden Abschnitt zur Medusa. Als Zusatz zum Kernel 0.9.13 ist derzeit ein Treiber für Ethernetkarten von Riebl von Roman Hodek freigegeben worden. Für ausführlichere Informationen sei auf die Ankündigungen (Announcements) zu den neuen Kernelversionen verwiesen.

Bei einem Treffen der Linux/68k Entwickler in Solingen vom 13. bis 15. Oktober wurde im allgemeinen Einvernehmen vereinbart, die beiden Kernelbäume 0.9.x und 1.2.x wieder zu vereinigen. Daher ist davon auszugehen, das mit dem erfolgten Erscheinen der 0.9.13er Version dieser Baum eingestellt wird, evtl. wird noch ein Bugfix auf diesem Baum ausgeführt. Dieses Entwicklertreffen von 16 Personen war für die Weiterentwicklung des Linux/68k ein wichtiger Meilenstein. Es bestand endlich die Möglichkeit sich persönlich kennenzulernen und Probleme erheblich schneller zu besprechen. Wichtige Erweiterungen des 0.9.13er Kernels wurden hierbei besprochen und realisiert, ebenso wie ein temporäres, heterogenes Netzwerk aus vier Amiga- Rechnern, zwei Atari-TTs und je einem Falcon und Linux-PC-Notebook aufgebaut wurde. Die Vernetzung der einzelnen Rechner erfolgte zum Teil über Ethernet und zum Teil über serielle Schnittstellen. Hierbei konnte man sich von der Netzwerktauglichkeit des Linux/68k überzeugen. An dieser Stelle möchte ich mich bei allen Beteiligten für die Teilnahme bedanken und insbesonders meiner Frau Claudia danken, die nicht nur die sehr gute Verpflegung sichergestellt hat, sondern auch sehr viel Toleranz für die ganzen "Computerfreaks" aufgebracht hat.

Das Installationsprogramm der ALD (Fortsetzung)

Nach dem wir uns im ersten Teil bis zu den Einstellungen der Hostparameter vorgearbeitet haben, erwartet uns nun die Auswahl des Installationsumfanges unter dem Punkt 4 "Paketauswahl". [Bild 1, Die ALD besteht aus insgesamt 8 Paketen die sich folgendermaßen zusammensetzen: - BA ist das Grundsystem, weiches unbedingt für den Betrieb von Linux erforderlich ist. - EX erweitert das Grundsystem um optionale Funktionen, die oftmals nützlich sind.

Die genaue Zusammensetzung der einzelnen Pakete kann man den Bildern 1 bis 8 entnehmen, ebenso wie den ungefähr erforderlichen Platzbedarf auf der Festplatte nach der Installation.

Durch Anklicken des Punktes "Paketauswahl" im Hauptfenster öffnet sich das Fenster mit der Überschrift Gruppenauswahl. Durch Anklicken der Checkboxen in diesem Fenster wird das entsprechende Paket in die Liste der zu installierenden Pakete aufgenommen. Führt man einen Doppelklick auf eine Beschreibung des Gruppeninhaltes aus, so öffnet sich ein weiteres Fenster mit dem genauen Inhalt dieser Gruppe, wobei man nun wieder einzelne Pakete selektieren bzw. deselektieren kann [Bilder 2 bis 8].

Kritikpunkte hierbei sind die Beschriftungen in unterschiedlichen Sprachen in den einzelnen Fenstern, ebenso wie die schon angesprochenen Schwächen bei der Aktualität einzelner Pakete. Diese Situation wird durch den auf der CDR befindlichen Updateordner etwas verbessert. Nachteilig ist hierbei die fehlende Unterstützung durch das GEM-Installationsprogramm, wobei jedoch ein mit Erklärungen versehenes Shellscript die Installation des Updates einfach gestaltet. Dieses Updatepaket sei insbesondere den Anwendern ans Herz gelegt, die mit ihrem Linux/68k Rechner eine Vernetzung mit dem Internet anstreben, da erst mit dem Updatepaket wichtige Programme zur Verfügung gestellt werden, genannt sei hier PPP und der WWW- Browser CHIMERA. Die gesamten Binaries der derzeitigen ALD sind im a.out-Format kompiliert und es wurde weitgehend versucht, bei der Verteilung der Pakete auf das Linux-Dateisystem dem in der Entwicklung befindlichen Dateisystemstandard (FSSTND) zu folgen. Zusammenfassend bleibt zu sagen, dass insgesamt die Zusammenstellung der Pakete ein gutes Grundsystem für Linux ergibt, jedoch eine grundlegende Überarbeitung der Pakete in nächster Zeit erforderlich ist.

An dieser Stelle möchte ich einen Blick hinter die Kulissen werfen und die geplante weitere Entwicklung der ALD kurz skizzieren. Die im Aufbau befindliche ALD 2.0 wird vollständig auf das aktuellere ELF-Format umgestellt, das bisher enthaltene TeX-Paket wird durch ein neues TeX-Paket, basierend auf te-TeX von Thomas Esser, umgestellt. Der Umfang aller anderen Pakete wird erweitert und an die Debian-Linux-Distribution angelehnt. Das SR-Paket wird erheblich erweitert, so dass bei der ALD 2.0 alle Quelltexte der beiliegenden Linux/68k-Programme, die der GPL unterliegen, auf der CD-R erhältlich sind und wahlweise installiert werden können. Bedingt durch den Umstieg auf das ELF-Format und die umfangreiche Reorganisation der ALD wird voraussichtlich ein Umstieg auf die Version 2 von Version 1.x mit einer kompletten Neuinstallation bei den Usern einhergehen. Dies ist alleine aus der Umstellung des Formates des Linux/68k ext2-Dateisystems angebracht. Ein Erscheinungstermin für die ALD 2.0 kann nicht genannt werden, da dies zum einen von der Vereinigung der beiden Kernelbäume 1.2 und 0.9 abhängt und zum anderen vom Zeitaufwand für die Kompilation der einzelnen Quelltexte.

Kommen wir zurück zum GEM-Installationsprogramm der ALD. Nach der Paketauswahl folgt die Sicherung der bisher eingestellten Daten. Hierzu werden verschiedene ASCII-Dateien im Installationsordner geschrieben, weshalb dieser auch auf eine TOS-Partition der Festplatte kopiert werden muss. In der Datei "bootargs" werden die Parameter gesichert, die das Linux/68k- Startprogramm "bootstra.ttp" an den Kernel "vmlinux" übergibt. Exemplarisch sei hier mein Inhalt der bootargs-Datei gezeigt, der die Medusa mit ET4000 Grafikkarte in 256 Farben bootet:

root=/dev/hda4 ro atavideo=externa[: 1024;768;8; p ; 0x7f000000; 0 x 7f300000; 8

Die Datei beginnt mit dem Schlüsselwort "root" gefolgt mit der Angabe der Partition in Linuxnotation, auf welcher das root-Filesystem installiert wurde. Das folgende "ro" weist den Kernel an, dieses Dateisystem erst einmal read-only zu mounten, damit ein Dateisystemcheck auf diesem Dateisystem möglich ist. Anschließend folgen die Parameter zur Einstellung des Grafikmodus, hier bei Verwendung einer Grafikkarte.

In der Datei "confvars" werden die Daten aus dem unteren Teil des Hostparameterfensters des Installationsprogrammes gesichert und sollten selbsterklärend sein, ebenso der Inhalt der Datei "pkgaddcm", die die Auswahl des Installationsumfanges der einzelnen Pakete beschreibt.

Das File "filesys" enthält die Angaben über die ermittelten Festplattenpartionen und dient später dazu, die Linuxdatei "fstab" zu erstel]en. Sollten Probleme bei der Installation des Linux/68k- Systems im Zusammenhang mit Festplatten auftreten, so empfiehlt sich, die entsprechenden Einträge in dieser Datei zu löschen. Insbesondere seien hier minix-V2-Dateisysteme genannt. Wünschenswert wäre, wenn das Installationsprogramm vor dem Schreiben dieser Datei eine Konfiguration ermöglichte. So bleibt nur die manuelle Bearbeitung mit einem Editor. Hierbei sind zwei Punkte zu beachten: In die Steuerdateien darf der Editor keine Steuerzeichen einfügen und wenn die Dateien editiert wurden, darf der Punkt 5 "Konfiguration sichern" im Instal- lationsprogramm nicht mehr angewählt werden, da dann die Dateien neu geschrieben werden und die Veränderungen verloren gehen.

Unverständlicherweise werden von dem Installationsprogramm alle Daten nicht nur in den gerade beschriebenen ASCII-Files gesichert, sondern auch noch zusätzlich in einer "Binärdatei" mit dem Namen "LINUXINS.INF". Diese wird aber ausschließlich von dem GEM- Installationsprogramm bei einem erneuten Start verwendet und hat keinen Einfluß auf die eigentliche Installation unter Linux/68k.

Unter Punkt 6 gibt es die Möglichkeit, ein Ladeprogramm zum Start von Linux/68k im AUTO- Ordner zu installieren [Bild 9]. Von einer Installation an diesem Punkt sei jedoch abgeraten, man kann dies später noch nachholen. Das ALILO-Programm (Atari-Linux-Loader) wird automatisch an den physikalischen Anfang des AUTO-Ordners kopiert und verhindert dadurch z.B. die erforderliche korrekte Initialisierung einer evtl. vorhandenen Grafikkarte beim Start von Linux/68k. Entsprechende Warnhinweise beim Ausführen dieses Punktes wären sicherlichsinnvoll.

Bild 10 zeigt den vorletzten Punkt des lnstallationsprogrammes, in dem optionale Parameter an den Kernel bzw. an das bootstra.ttp übergeben werden können. Interessant ist hierbei der Punkt "TT-Ram ignorieren" für Falconbesitzer, die ihren Falcon 030 sowohl mit TTRam als auch mit einer SCSI-Platte die unter Linux verwendet wird, ausgestattet haben. Wie schon im ersten Teil genannt ist diese Kombination unter Linux/68k absturzgefährdet und hier besteht nun die Möglichkeit, das TT-Ram für Linux/68k auszublenden. Auch TT-BEsitzer können aus dieser Möglichkeit nutzen ziehen, wenn sie Probleme mit ihrer Ramerweiterungskarte haben und gelegentliche unmotivierte Abstürze oder ungewollte Veränderungen von Daten unter Linux bemerken.

Hat man die ersten sieben Punkte des Installationsprogrammes nun durchlaufen, geht es an die eigentliche Installation von Linux/68k. Wählt man "Start der Linux-Installation" so erscheint ein Bild ungefähr wie Bild 11. Wichtig ist hierbei, dass die GEM-Partitionskennung mit der Linux/68k- Partitionsbezeichnung in der jeweiligen Notation übereinstimmt. Sollte dies nicht übereinstimmen, so kann man dies hier noch korrigieren. Nach Kontrolle und evtl. Korrektur kommt man mit "Ok" zu Bild 12. Wählt man hier ebenfalls "Ok" unter Beachtung der Warnhinweise wird nun automatisch das "bootstra.ttp" gestartet, welches wiederum den Linux/68k-Kernel nachlädt.

Das erste Mal

Nach einigen Ausgaben des bootstra.ttp wird der Bildschirm schwarz und es folgen die ersten Ausgaben mit weißer Schrift. Diese Ausgaben beziehen sich auf die im jeweiligen Rechner befindliche Hardware. Anschließend wird die Geschwindigkeit des Rechners anhand sogenannter Bogomipse ermittelt (Hinweis: Bogomipse sind nicht als Benchmark geeignet und sollten nicht mit Rechnern anderer Prozessorarchitektur verglichen werden!). Nun folgen einige Ausgaben des eingesetzten Kernels über einkompilierte Treiber, Versionsnummer des Kernels (wichtig bei Fehlermeldungen) und die Ermittlung der angeschlossenen Festplatten, CD-ROMs etc. über SCSI, ACSI und abschließend IDE und Floppylaufwerke.

Ist der Kernel erfolgreich gebootet, wird nun automatisch die Installationsramdisk gemountet (install.ram im Installationsornder) und mit der Bearbeitung des Installationskripts begonnen. Hierzu werden nun die erforderlichen ext2-Linuxfilesysteme auf der oder den Partitionen eingerichtet, ebenso wie die evtl. Aktivierung des swap-Bereiches. Wurden diese Hürden überwunden, startet automatisch das Programm "pkgadd" mit der Installation der ausgewählten Pakete. Eine komplette Installation aller Pakete von CD benötigt auf dem TT ungefähr 2 Stunden, auf der Medusa T40 ungefähr 45 Minuten.

Wurde die Installation der ausgewählten Pa kete abgeschlossen, wird man aufgefordert den Rechner zu rebooten und Linux neu zu starten.

Das zweite Mal

Nach der Installation und dem anschließenden Bootvorgang kann man durch starten des bootstra.ttp im Installationsordner ohne Ubergabe weiterer Parameter Linux booten. Nun wird erstmalig von der Festplatte Linux/68k gestartet. Es wiederholen sich die oben genannten Ereignisse bis zu dem Punkt, wo die Dateisysteme eingerichtet werden, dafür erscheinen nun eini- ge andere Ausgaben und schließlich die Aufforderung zum login. Dies geschieht mit dem Usernamen "root" und man kann nun die ersten Schritte in Linux unternehmen. Als erstes sollte man nun einmal den Befehl "Idconfig" eingeben, da es manchmal zu Problemen bei der Installation kommen kann. Hat man das XW-Paket installiert, ist es nun auch möglich X11R6 mit dem Befehl "startx" zu starten, hierzu muss aber zuerst der selection-Dämon mit "selection - k" beendet werden, wenn eine Atarimaus verwendet wird. Ein Verlassen von X11 ist mit der drei Tastenkombination CONTROL-ALTERNATE-BACKSPACE möglich. Auch ist es alsbald angebracht, das Update von der CD zu installieren, was mit dem beiliegenden README und dem Shellscript keine großen Probleme bereiten sollte.

Auch ist es nun möglich, bisher nicht installierte Pakete oder Teilpakete mittels des Befehls "pk- gadd" nach zu installieren. Eine genauere Erklärung erhält man mit "man pkgadd". Überhaupt empfiehlt es sich die man-Pages bei Problemen zu konsultieren. Eine einfache Möglichkeit eine relativ komplette Befehlsübersicht des installierten Linux/68k Systems zu erhalten, besteht darin, einfach die TAB-Taste auf einer leeren Eingabezeile zu bedienen. Auch ist es möglich, einen begonnenen Befehlsnamen oder eine Pfadangabe mit der TAB-Taste zu komplettieren.

Einer der nächsten Schritte ist ein Neukompilation des Linux/68kKernels nach den eigenen persönlichen Bedürfnissen. Z.B. werden Falcon-Besitzer nicht die Unterstützung von ACSI- Geräten benötigen und können diesen Treiber aus dem Kernel "herauslassen".

Schnellkursus Kernelkompilierung

Grundlagen sind eine Installation der Kernelsourcen und des C-Paketes. Im Vereichniss /usr/src befindet sich der installierte Kernelbaum unter linux. Man wechselt in dieses Verzeichniss und tippt nun make config" ein. Nun werden eine Reihe von Fragen gestellt, die man sinnvoll beantworten sollte. Im Zweifelsfall ist es sicher, die voreingestellte Antwort mit RETURN zu übernehmen. Genauere Angaben über den Sinn dieser Fragen kann man auch der Dokumentation zum PC-Linux übernehmen. Wurde der Fragenmarathon beendet, ist der nächste Befehl "make dep", der die Abhängigkeiten der verschiedenen Kernelquelltexte ermittelt. Dies dauert seine Zeit. Aber man kann ja z.B. mit ALT-F2 in eine weitere Konsole umschalten und dort weiterarbeiten. Wurde der "make dep" Lauf beendet, folgt ein "make clean" zum Entfernen alter Objectfiles aus dem Kernelbaum. Dies geht schnell und man kann dann mit der Kompilierung des Kernels mittels des Kommandos "make" starten. Auch dies dauert seine Zeit. Es kann vorkommen, dass das eine oder andere Makekommando nicht erfolgreich beendet wurde, in diesem Fall sollte man sich die Fehlerstelle merken und einen erneuten Makebefehl absetzen, meistens geht nun die Kompilierung weiter. Am Ende findet man im Verzeichniss /usr/src/linux den neuen Kernel vmlinux und muss ihn noch in den TOS-Installationsordner kopieren, hierbei ist zu beachten, dass zuerst der alte Kernel gesichert werden sollte, damit ein auf jeden Fall funktionsfähiger Kernel erhalten bleibt. Der neue Kernel ist ausschließlich über einen reboot (= Kommandoname zum beenden) zu aktivieren.

MEDUSA T40 & Linux/68k

Die Medusa ist derzeit eigentlich der ideale TOS-Rechner zum Betrieb von Linux/68k, da er über eine ausreichende Systemperformance verfügt. Bedingt durch einige Fehler der Medusa, die im normalen Betrieb unter GEM nicht auffallen, war es bisher schwierig, ein lauffähiges Linux/68k auf diesen Maschinen zu installieren. Dank der Mitarbeit des Vaters der Medusa Fredi Aschwanden konnten diese Probleme beseitigt werden, jedoch ist ein Austausch zweier ICs erforderlich um die Medusa Linux fest zu machen. Zum einen ist es das IC F auf der SCSI- Platine, welches die Bezeichnung Fl tragen sollte und das IC A auf der ST-I/O-Platine, welches die Versionsnummer A7 tragen sollte. Mit älteren Versionen dieser ICs ist kein Betrieb von SCSI-Platten unter Linux/68k fehlerfrei möglich. Auch das zur Medusa gehörende Steueraccessory sollte die Bezeichnung MT46.ACC tragen, da alle älteren Versionen Fehler bei der Erkennung der Festplatten beim Starten des ALD-GEM-Installationsprogrammes ergeben. Ein ähnliches Problem ist übrigens das Einrichten von Minix-Dateisystemen unter Mint bei installiertem MT40.ACC. Auch die Version des Linux/68k-Kernels spielt eine entscheidende Rolle, empfohlen werden kann derzeit nur der 0.9.13er Kerne[. Erst mit diesem Kernel ist ein Betrieb von Floppylaufwerken und von SCSI-Platten mit ext2-Filesystem möglich, wobei das Medusafloppylaufwerk noch nicht Disketten unter Linux formatieren kann. Es steht derzeit nicht gesichert fest, ob die bisherigen Schwierigkeiten mit ext2-Filesystemen auf SCSI-Platten der Medusa endgültig beseitigt sind, da das Verhalten evtl. von der verwendeten Platte abhängt. Bisher problemlos sind Quantum Lightning 54OS, Quantum PD2lOS, DEC DSP3053L und ein Syquest Wechselplattenlaufwerk 88 MB.

Ansonsten sind derzeit keine weiteren Besonderheiten die Medusa T40 betreffend bekannt, ausgenommen noch das Resetproblem. Bei einem Reboot aus Linux heraus, wird das TOS nicht erneut gestartet, daher ist ein Griff zum Resetschalter erforderlich.

Informationen, Quellen, Probleme

Über die aktuellen Entwicklungen zu Linux/68k kann man sich im MausNet oder im Internet informieren. Genannt sei hier die Mausgruppe Linux-68k und die von Benjamin Lorenz betreute englischsprachige Mailingliste.

Aktuelle Kernelversionen und neue Programme sind auf folgenden anonymous-ftp-Servern erhältlich: tsx-11.mit.edu in pub/linux/680x0. Dieser Dateibaum wird von Benjamin Lorenz in Saarbrücken gespiegelt und zugleich um weitere Beiträge ergänzt, die Adresse lautet: ftp.phil.uni-sb.de, Linux/68k relevante Dateien findet man unter pub/atari/linux. Ergänzungen zur ALD, neue Atarikernel etc. findet man auf dem von mir betreuten ftp-Server wctc6.chemie.uni-wuppertal.de und in der per Modern zugänglichen Maus Wuppertal im öffentlichen Gruppenprogrammteil Linux-68k.

Informationen über den eigentlichen Betrieb von Linux/68k kann man der zahlreich existierenden Literatur zum PC-Linux entnehmen oder auch die entsprechenden HOWTOs konsultieren. Die ALD auf CD-R ist bei delta labs media erhältlich.

Bei Problemen mit der ALD und bei Hardwareproblemen ist Roman Hodek unter der E- Mailadresse zu erreichen. Ich bin bei Problemen mit der ALD oder der Medusa per E-Mail zu erreichen.

Für die Unterstützung bei der Erstellung dieser Artikelserie und den Korrekturen danke ich herzlich Roman Hodek.


Thorsten Flöck
Aus: Atari Inside 01 / 1996, Seite 17

Links

Copyright-Bestimmungen: siehe Über diese Seite