24.9.2000

Linux


Ich beziehe mich auf die Distribution "Debian Gnu Linux 2.0", Codename "Hamm", 4 CDs, Kernel 2.0.34, August 1998, bzw. auf "Debian Gnu Linux 2.1", Codename "Slink", 5 CDs, Kernel 2.0.36, April 1999 und "Debian Gnu Linux 2.2, Codename "Potato", 8 CDs (mit Sourcen), Kernel 2.2.10, September 2000.

Was mir an der neuen Version 2.2 ("Potato") als Erstes auffällt: Das Einspielen der neuen Version über eine existierende ältere Version ("Upgrade") ist viel komplizierter und fehlerträchtiger als eine Neuinstallation. Allein die Anleitung zum Upgrade umfaßt 12 Seiten (und enthält darüberhinaus einige dringende Empfehlungen, noch weitere Anleitungen zu lesen). Ich habe die Anleitung zum Upgrade so peinlich genau befolgt wie ich konnte, aber sie wurde trotzdem mit einer Fehlermeldung abgebrochen. Ich habe daraufhin alles gelöscht und "Potato" auf einen leeren Rechner installiert.

Und wieder sitze ich vor einem halbfertigen Linux und weiß nicht, wie ich den Rest zum Laufen kriege.

Als nächstes will ich versuchen, Linux "von Null an" selbst zu installieren, ohne Installationsprogramm. Vielleicht erwerbe ich dadurch das Grundwissen, das mir offensichtlich fehlt. (siehe "von Null an").

Alles weitere bezieht sich auf die Installation von Debian Linux:

Vergleich zwischen DOS/Windows und Linux:

Mit DOS und Windows bin ich ja einigermaßen fertiggeworden, aber vor Unix hatte ich immer einen Riesenrespekt. Das hat mich bisher immer davon abgehalten, auf Linux umzusteigen, aber nachdem sich mit Windows 95 der Ärger über eigensinnige und unlogische Programme und Systemteile und Abstürze immer mehr gehäuft haben, habe ich es doch mal gewagt.

Nach den allerersten Erfahrungen muß ich sagen: Mein Respekt vor Unix war gerechtfertigt. Linux ist sehr umfangreich und sehr schwierig gegenüber DOS und Windows. Andererseits ist Linux stabil wie ein Felsen. Es stürzt einfach nie ab, es kommt allerdings vor, daß man beim Installieren Fehler macht, so daß Linux nicht mehr startet.

Außerdem habe ich bei Linux viel mehr das Gefühl, daß das viele Lernen sich lohnt. Das ganze System ist viel durchdachter und strahlt etwas aus, als ob es wirklich von Meistern gemacht ist. (Dagegen nimmt Windows immer mehr die Attitüde von jungen Bankangestellten an. Es macht mir ständig irgendwelche Vorschriften und weiß grundsätzlich alles besser, aber wenn ich mal etwas möchte, stellt es sich dumm und versteht plötzlich überhaupt nichts mehr.)

Linux braucht zwar wenig Platz, viel weniger als Windows, aber Linux ist umfangreich. Wenn man noch gar keine Anwendungen installiert hat, hat man schon 2000 Kommandos zur Verfügung. DOS kommt mir dagegen winzig klein vor.

Bei Windows hatte ich immer das Gefühl, daß ich gegängelt und von jeder ernsthaften Information abgeschirmt werde. Bei Linux genieße ich das Gefühl von grenzenloser Freiheit. Dummerweise ist die Freiheit viel komplizierter als das Gefängnis. Wenn man zu seiner Freiheit auch die Kompetenz haben möchte, bekommt man mit Linux auf einen Schlag furchtbar viel Neues zu lernen.

Linux ist nicht gerade das, was man 'kinderleicht' nennt. Man muß auf Vieles verzichten, was man bei Windows inzwischen schon als selbstverständlich hingenommen hatte: Nichts funktioniert einfach nur so durch Anklicken. Man bekommt fast nie eine Auswahl angeboten, aus der man nur noch auswählen muß. Die Rückkehr zur Kommandozeilen-Oberfläche kommt mir vor, als ob ich plötzlich im Dunklen stehe und noch nicht einmal weiß, wonach ich jetzt eigentlich suchen soll.

Vergleich der verschiedenen Linux-Distributionen (so weit ich dazu in der Lage bin):

Debian Linux (http://www.debian.org/ , Lautschrift: ['debi:en]) wird von Freiwilligen betreut. Sie legen Wert auf Stabilität und darauf, daß alles aus freier Software (Open Source, GPL) besteht. Die nicht-freien Teile wie z.B. Netscape und KDE sind zwar mit dabei, aber immer "etwas weiter hinten" auf den CDs und "ohne die Debian-Testansprüche". Es wird darauf verzichtet, immer die aktuellsten Versionen von allem anzubieten. Dafür ist alles sehr gut und sehr lange getestet.

Das Installationsprogramm ist spartanisch, es wird kein Versuch unternommen, den Anfänger von irgendwelchen Schwierigkeiten abzuschirmen. Statt dessen sind zahlreiche Mechanismen (z.B. Skripten mit Namen wie xyz.config) vorhanden, mit denen sich "die Meister" wiederkehrende Arbeiten vereinfacht haben. Für einen Anfänger wie mich waren diese Mechanismen aber zunächst vollkommen unverständlich. Man braucht zumindest "gute PC-Kenntnisse", um überhaupt die Installation zu bewältigen.

Die weitere Einrichtung auf die eigenen Bedürfnisse ("Administrieren") ist - wegen der Debian-Spezial-Mechanismen - ebenfalls nicht einfach.

Dadurch daß die Debian-Paketverwaltung Abhängigkeiten zwischen den Paketen automatisch berücksichtigt, ist das Installieren von "Paketen" (Programmen) allerdings vergleichsweise recht einfach. 

Suse Linux (http://www.suse.de/) versucht mit seinem Setup- und Administrations-Tool "Yast", Linux für Anfänger zugänglicher zu machen. Leider sind die inneren Mechanismen von Yast für den Anfänger noch undurchschaubarer als die Konfigurations-Skripte und die sonstigen Spezial-Mechanismen von Debian. Alles was nicht innerhalb von Yast vorhanden und gut vorbereitet ist, ist deshalb noch schwieriger für Anfänger als in anderen Distributionen. Die Newsgroups sind voll mit Anfragen von Suse-Kunden, die mit bestimmten Problemen einfach nicht fertig werden. Jede Version von Suse-Linux hat in dieser Hinsicht ihre eigenen speziellen Probleme, an denen jeder Anfänger erstmal scheitert.

Suse hat allerdings eine hervorragende Support-Datenbank im Internet, die von keiner anderen Distribution übertroffen wird.

Das Installieren von Paketen funktioniert wie bei Redhat und ist nicht so narrensicher wie bei Debian.

Zu Redhat Linux (http://www.redhat.com/) und zu Caldera Linux  (http://www.caldera.com/) kann ich nicht viel sagen. Ich habe beide nur probeweise je einmal installiert. Die Installation war zunächst einfach, aber mit der dann folgenden Einrichtung fühlte ich mich wieder (wie auch bei Suse und Debian) ziemlich alleingelassen. Beide schienen keine oder wenige Spezial-Mechanismen eingebaut zu haben, und die meisten Bücher und die "HOWTOs" (Anleitungen) beziehen sich auf Redhat und Caldera. 

Vorbereitungen - Was man vorher noch unter Windows machen sollte

(Das steht auf einer Extra-Seite: Vorbereitung)

Installierung des Basis-Systems

  • Von der CD: Beim Booten der CD startet ein Installations-Programm im Textmodus. Nicht annähernd so professionell wie die gewohnten Windows-Installations-Programme. Manchmal kann man von da aus, wo man gerade ist, einen Schritt zurück gehen, und manchmal nicht. Jeder der im Installations-Menü aufgeführten Schritte muß einmal ausgeführt werden.
  • Von der Festplatte: Falls man ein besonderes CD-Laufwerk hat, z.B. eins das nicht an IDE, sondern an die Soundkarte angeschlossen ist, kopiert man unter Windows die folgenden 7 Dateien von der CD (aus /debian/dists/frozen/hamm/disks-i386/current) z.B. in einen Ordner 'debian' auf C: resc1440.bin, drv1440.bin, base2_0.tgz, root.bin, linux, loadlin.exe, install.bat. Dann Windows herunterfahren in den DOS-Modus und install.bat aufrufen.
  • 'Partition a Hard Disk': Man löscht die Partition, die fips eben abgeteilt hat, und richtet statt dessen eine Linux-Partition ein. Man wählt sie etwas kleiner (16 bis 128 MB), und richtet auf dem freien Platz noch eine Linux-Swap-Partition ein. Beide Partitionen sind primär. Für die Swap-Partition muß man den Typ auf 'Linux-Swap' (82) ändern.
  • 'Install Operating System...': Hier muß man sich merken (aufschreiben), wie die CD heißt, von der man installiert (z.B. /dev/hdc). Diese Information braucht man später wieder.
    Die 4 IDE-Kanäle heißen in Linux:
    /dev/hda = Primary Master (erster IDE-Kanal, Steckbrücke (Jumper) am Laufwerk auf "Master")
    /dev/hdb = Primary Slave
    /dev/hdc = Secondary Master
    /dev/hdd = Secondary Slave
    Falls man ein besonderes CD-Laufwerk hat (s.o.), gibt man hier 'harddisk' und z.B. '/dev/hda' (bei IDE-Platten) oder '/dev/sda' (bei SCSI) an.
  • 'Configure Device Drivers: Man muß alle Arten und alle Treiber einmal angesehen haben. Bei manchen Treibern denkt man gar nicht, daß man sie überhaupt braucht.
    • 'CD-ROM Drivers': Common Routines (plus spezifischer Treiber)
    • 'File Systems': Vfat, Windows95 Disk Sharing und Long Filenames
    • 'Misc': parallele und serielle Schnittstellen und die Maus
    • 'Net': NE2000 (vorher notierte E/A-Adresse und IRQ angeben), sowie PPP und SLIP
    • 'SCSI': Generic (sofern SCSI überhaupt vorhanden ist)
  • 'Configure the Network': Falls Sie mehr als einen Computer haben
    • 'IP-Address': 192.168.1.1 (der zweite Computer bekommt z.B. 192.168.1.2)
    • 'Netmask': 255.255.255.0 (d.h. die ersten drei Nummern gelten für das lokale Netz)
    • 'Broadcast': 192.168.1.255 
    • 'Gateway': Der Computer, an den das Modem angeschlossen ist, aber nur, wenn der Gateway nicht "dieser Computer" ist. Da meistens der Linux-Rechner der Gateway ist, wird man also sagen: "Kein Gateway".  
  • 'Configure the Base System': MET (= MEZ), Europe, Ihre Stadt, GMT: No
  • 'Make Linux bootable': Nehmen Sie LILO zunächst nur für Linux, nicht für die ganze Platte, sonst können Sie Ihr Windows nur noch booten, wenn Sie vorher /etc/lilo.conf angepaßt haben. 

Nach der Installation kopieren Sie am besten loadlin.exe und Ihr Linux-Kernel (/boot/vmlinuz-2.0.34, kopiert und umbenannt in 'linux') auf Ihre Windows95-Partition und booten Linux, indem Sie in den DOS-Modus herunterfahren und dann 'loadlin linux' eingeben. Das geht schneller, als wenn Sie einen Bootmanager oder LILO dazu benutzen.

Linux booten - mehrere Möglichkeiten

(Das steht auf einer Extra-Seite: Linux booten)

XWindows - die grafische Oberfläche von Linux

(läuft bei mir, aber die Beschreibung ist noch nicht fertig)

Drucken

Die Installation war mit der Debian Distribution überraschend einfach:

  • Parallelport-Unterstützung muß im Kernel einkompiliert sein
  • Was unter DOS/Windows LPT1 ist (0x378), ist unter Linux /dev/lp1. LPT2 (0x278) ist /dev/lp2. Der Anschluß auf dem Monochrom-Adapter (0x3BC) ist /dev/lp0. 
  • Man testet seine Hardware, indem man z.B. eintippt: cat \etc\fstab >/dev/lp0 (oder lp1 oder lp2). (Wenn nichts gedruckt wird, muß man das Kernel noch einmal kompilieren.)
  • Man installiert das Paket apsfilter. Die Frage nach dem Papierformat beantwortet man mit a4 (nicht A4) . Die Frage nach dem Drucker-Device mit /dev/lp0, /dev/lp1 oder /dev/lp2. Die Frage nach dem Drucker beantwortet man (meistens) mit 'other printer that does not support postscript'.
  • apsfilter verändert /etc/printcap. Es kommentiert alles Vorhandene aus (schreibt # an die Zeilenanfänge und setzt eigene Druckerdefinitionen hinen. (Wenn man hinterher neue Software installiert, muß man eventuell apsfilter einmal deinstallieren und wieder neu installieren.)
  • Wenn man mit apsfilter kein Glück hat, ist magicfilter eine Alternative. 

Falls der Drucker hinter jedem Druckjob ein überflüssiges leeres Blatt druckt:

  • /etc/apsfilterrc enthält eine Zeile "PRINT_RAW_SUPPRESS_FORMFEED=yes". Die muß man ent-kommentieren,
  • außerdem kann es nötig sein, daß man in /etc/printcap dem fraglichen Drucker die Option :sf: ("suppress formfeed", "unterdrücke Seitenvorschub") hinzufügt. 

Das eigentliche Drucken geht mit folgenden Befehlen:

  • lpr dateiname
    oder
    cat dateiname | lpr

    druckt eine Datei.
  • lpq
    zeigt die wartenden Einträge in der Drucker-Warteschlange
  • lprm
    entfernt Einträge aus der Warteschlange 

Scannen

(Das steht auf einer Extra-Seite: Scanner)

Internet-Verbindung über Modem mit T-Online und Compuserve

(Das steht auf einer Extra-Seite über PPP und diald)

Internet-Dienste: Netscape, E-Mail, Newsgroups

(Netscape läuft, aber die Beschreibung ist noch nicht fertig. E-Mail und News laufen noch nicht.)

Samba: Linux als Server für Windows95- und Windows 3.11-Rechner

Man bekommt zwei Möglichkeiten zur Auswahl angeboten: 1. "Samba läuft als Dämon", oder 2. "Samba wird von inetd" gestartet. Die zweite Möglichkeit wird "empfohlen", aber wenn ich es so mache, wird der Linux-Rechner auf den Windows-Rechnern im Netz erst angezeigt, wenn ich nach dem Linux-Rechner "suchen" lasse. Also wähle ich "als Dämon", und dann geht es.

Man muß auf jeden Fall /etc/smb.conf editieren und an seine Konfiguration anpassen.

Samba - und alle Windows-Rechner im Netz - brauchen eine Datei /etc/lmhosts bzw. c:\windows\lmhosts. (Sonst versucht Samba bzw. der Linux-Rechner ständig, einen Nameserver zu erreichen, um die Rechnernamen in IP-Adressen zu übersetzen.) Meine lmhosts-Dateien sehen so aus:

127.0.0.1 localhost
192.168.1.1 server
192.168.1.2 joern
192.168.1.3 online
192.168.1.4 abatz
127.0.0.99 workgroup

(Der letzte Eintrag ist ein Tip aus einer Newsgroup. Er soll verhindern, daß Windows für das Wort "workgroup"  einen Nameserver anruft. Ich weiß nicht, ob dieser Eintrag wirklich nötig ist.)  

Hinterher muß man Samba einmal beenden und neu starten:
/etc/init.d/samba stop
/etc/init.d/samba start

Fertig.  

Apache: Linux als Intranet-Server

(läuft bei mir, aber die Beschreibung ist noch nicht fertig)

Squid: Linux als Gateway ins Internet

(läuft bei mir, aber die Beschreibung ist noch nicht fertig)