Kapitel 4. Installation weiterer Pakete

Inhaltsverzeichnis
Organisation der Pakete
dselect
Apt
task-Pakete
Weitere wichtige Pakete
Menüs
Installation von fremden Paketen
alien

Um weitere Pakete auf einem Debian GNU/Linux-System zu installieren, stehen mehrere Programme zur Verfügung. dselect ist das älteste von diesen. dselect stellt ein überaus mächtiges Programm mit vielen Möglichkeiten und allen Freiheiten dar. Dies hat aber leider nicht bei allen Anwendern (gerade bei Einsteigern) zur Beliebtheit beigetragen. dselect verfügt über eine sehr ausführliche Online-Hilfe, aber mal ehrlich: wer liest so etwas schon... Aber wer über einige wenige Kenntnisse von dselect verfügt, wird sehen, daß alles ganz einfach ist, und die Mächtigkeit dieses Werkzeuges schnell zu schätzen wissen.

Die nächste Generation der Debian GNU/Linux-Installationsprogramme stellt apt dar. apt befindet sich zur Zeit noch in der Entwicklung, ist aber schon im täglichen Einsatz benutzbar und wird von Debian GNU/Linux 2.2 als Standard eingesetzt.

Unabhängig davon, welches Programm Sie zur Installation benutzen, Sie müssen in jedem Fall auswählen, welche Pakete Sie installieren möchten. Dies ist bei Debian GNU/Linux keine leichte Aufgabe, mittlerweile umfaßt die Distribution weit über 4000 Pakete! Um Ihnen die Auswahl zu erleichtern, wurden von den Entwicklern sogenannte „task“-Pakete zusammengestellt. Diese „Gruppierung“ von Paketen vereinfacht Ihnen die Auswahl. Wählen Sie beispielsweise das Paket task-gnome-desktop aus, so werden alle nötigen Pakete für einen GNOME Desktop ausgewählt und installiert. Weitere Informationen zu diesen Paketen finden Sie im Abschnitt task-Pakete.

Programme wie apt-get oder gnome-apt oder auch das bereits erwähnte dselect können zum Auswählen und Installieren einzelner Pakete benutzt werden.

Die Paketverwaltung unter Debian GNU/Linux stellt eines der Highlights dieser Distribution dar. Wir wollen hier nicht auf jedes Detail eingehen, hier aber trotzdem ein paar Sätze zu den grundsätzlichen Vorgängen bei der Installation eines Paketes sagen.

Jedes Programmpaket enthält in der Regel einige verschiedene Dateien, die zur Funktion dieses Programms benötigt werden. Hierzu gehören natürlich das Programm selber, die Bibliotheken, Dateien mit Daten wie zum Beispiel Grafiken für Spiele, die Anleitung (man-pages) usw. Bei der Installation eines Programms muß sichergestellt sein, daß alle Dateien am richtigen Platz im Verzeichnisbaum installiert werden.

Wenn Sie später ein Programm wieder von Ihrem System entfernen wollen, ist es ebenfalls wichtig zu wissen, welche Dateien zu einem Programm gehören und wo sie sich befinden. Weiterhin ist festzustellen, ob Dateien installiert wurden, die mittlerweile von anderen Programmen benutzt werden. In diesem Fall darf das Paket unter Umständen nicht entfernt werden.

Ebenso kann der Fall eintreten, daß ein Programm auf den neuesten Stand gebracht werden soll. Bei diesem Vorgang werden Dateien aktualisiert und eventuell auch einige Dateien gelöscht, die von der neuen Version nicht mehr benötigt werden. Auch dies muß so durchgeführt werden, daß nicht andere Programme danach nicht mehr funktionsfähig sind.

Das Debian GNU/Linux-Paketsystem wacht über alle diese Vorgänge und hält Ihr System immer in einem benutzbaren Zustand.

Organisation der Pakete

Debian GNU/Linux organisiert die Pakete in einer festgelegten Hierarchie. Unter anderem werden Bereiche mit allgemeiner, freier Software (main), die den DFSG (Debian Free Software Guidelines) entspricht, und Bereiche mit Software, die nicht unter solchen freien Lizenzen steht (non-free), unterschieden. Die nächste Ebene beschreibt die Architektur, also die Prozessorfamilie, auf der die Binärpakete laufen. Auch die Sourcen (Quellcodes) zu den Paketen sind in dieser Ebene angesiedelt. In der letzten Ebene finden sich diverse Verzeichnisse, in denen die eigentlichen Pakete zu Gruppen, wie zum Beispiel „Games“ oder „X11“, zusammengefaßt werden.

Hier nun eine Übersicht der verschiedenen Ebenen.

Distribution

Die sogenannten „Distributionen“ innerhalb der gesamten Debian GNU/Linux Distribution bezeichnen verschiedene Bereiche, die sich durch die Lizenzen, unter denen die Pakete die in diesen Bereichen stehen, unterscheiden.

  • Main - Dies ist der Hauptbestandteil von Debian. Diese Pakete sind unter einem Copyright veröffentlicht, das eine freie Weiterverteilung ermöglicht, und enthalten den vollständigen Quellcode.

  • Contrib - Die Pakete in diesem Verzeichnis sind für sich frei, jedoch benötigen sie nichtfreie (Non-Free) Software oder Bibliotheken (z.B. Motif oder Qt), um zu funktionieren. Sie können daher nicht in den Bereich „main“ von Debian GNU/Linux einfließen.

  • Non-Free - Pakete in diesem Verzeichnis müssen nicht unbedingt Geld kosten, jedoch haben sie einige Bedingungen, die eine Weiterverteilung der Software einschränken. Beispielsweise kann ein Autor die Verbreitung der Software auf CD-ROM untersagen.

  • Non-US - Diese Pakete dürfen nicht aus den USA exportiert werden, es handelt sich meist um Verschlüsselungssoftware. Einige sind, aufgrund der Lizenzen, ebenfalls nichtfreie Software.

Architektur

Hier eine Übersicht der von Debian GNU/Linux unterstützten beziehungsweise in der Entwicklung befindlichen Architekturen. Nicht alle hier vorgestellten Architekturen wurden mit den Debian GNU/Linux-Versionen 2.1 oder 2.2 „released“, sprich freigegeben. Bitte beachten Sie auch, daß nicht alle auf CD-ROM im Handel erhältlich sind. Am einfachsten sind CDs für die i386-Architektur zu bekommen. Einen „normalen PC“ hat einfach fast jeder.

  • Intel x86 (i386)

    Die erste Architektur und nicht direkt eine Portierung. Mit dieser Architektur begann alles.

  • DEC Alpha (alpha)

    Der erste Release erfolgte mit Debian 2.1. Eine der länger bestehenden Portierungen und ziemlich stabil.

  • ARM (arm)

    Eine neue Portierungs-Bestrebung, motiviert durch Rebels (ehemals Corel) interessante-NetWinder Maschine.

  • Motorola 68k (m68k)

    Erster Release war mit Debian 2.0. Der am meisten etablierte Port nach dem Intel x86. Der Debian m68k Port läuft auf einer großen Bandbreite von Computern, die auf der Motorola 68k-Prozessorfamilie basieren - im besonderen die Sun3-Workstationfamilie, die Apple Macintosh Personal-Computer und die Atari und Amiga Personal-Computer, aber auch einigen aus dem Industriebereich stammenden VME-Bus Boards.

  • MIPS

    Es wurde schon etwas an der Portierung von Debian auf die MIPS-Architektur, die u.a. in SGI-Computern verwendet wird, gearbeitet. Wenn Sie eine SGI besitzen und daran interessiert sind, die Portierung voran zu bringen, senden Sie eine E-Mail an debian-mips@lists.debian.org. Prozessoren der Firma MIPS finden sich aber auch in Rechnern der Firma DEC, der sogenannten DECStation-Familie.

  • Motorola/IBM PowerPC (powerpc)

    Diese Portierung läuft auf vielen Apple Macintosh PowerMac-Rechnern und kann auch auf den meisten Motorola-Computern laufen. Ältere Macintosh-Rechner benutzen die m68k-Prozessoren, diese werden nicht als PowerMac bezeichnet.

  • Sun SPARC (sparc)

    Zum ersten Mal mit Debian 2.1 veröffentlicht. Diese Portierung läuft sowohl auf der SPARCstation-Familie von Workstations als auch auf einem Teil ihrer Nachfolger in der Sun4-Architektur.

  • Sun UltraSPARC(sparc64)

    Dies ist auch der Beginn einer Portierung auf die Sun UltraSPARC (sun4u) Workstation-Familie. Dieser 64bit-Prozessor hat den Vorteil der Rückwärts-Kompatibilität mit seinem Vorgänger, so daß die UltraSPARC-Portierung in der Lage sein wird, Sparc-Binärfiles auszuführen. Dieses Projekt braucht zur Zeit Entwickler. Wenn Sie einen UltraSPARC-basierenden Computer haben und helfen möchten, senden Sie bitte eine E-Mail an die Liste unter debian-ultralinux@lists.debian.org, um Ihre Mitarbeit anzubieten.

  • Debian GNU/Hurd (hurd-i386)

    GNU Hurd ist ein völlig neues Betriebssystem, das von der GNU-Gruppe aufgebaut wird. Hurd wird in der Debian Distribution den Linux-Kernel ersetzen, daher der Name Debian GNU/Hurd.

  • Debian Beowulf

    Obwohl nicht wirklich eine Portierung, so wird Beowulf doch ein Ersatz für viele Großrechner in Forschung und Entwicklung sein. Deshalb scheint hier der richtige Platz zu sein. Dieses Projekt arbeitet daran, Beowulf-Cluster unter Debian laufen zu lassen und ein Netzwerk der beteiligten Menschen ganz nach dem Bazar-Modell zu schaffen.

Gruppen

Innerhalb der hier vorgestellten Gruppen (als Verzeichnisse auf den CDs oder auf den FTP-Servern angelegt) finden Sie die eigentlichen Pakete.

  • Administration - Programme zur Systemadministration.

  • Base - Teile des Basissystems, wie zum Beispiel verschiedene Kernel.

  • Communication - Terminalprogramme usw. .

  • Development - Diverse Programmiersprachen, Compiler, Interpreters, C/C++ Header, usw.

  • Documentation - HOWTOs, FAQs und andere Dokumentation sowie Programme, um diese zu lesen.

  • Editors - Textverarbeitungen, Editoren für Programmierer.

  • Electronics - Simulatoren für elektronische Schaltungen usw.

  • Games - Spiele.

  • Graphics - Grafikprogramme.

  • Ham Radio - Programme für Amateurfunker.

  • Interpreters - Interpreter wie Perl, Python und Tcl/Tk.

  • Libraries - Bibliotheken, die von verschiedenen Programmen genutzt werden.

  • Mail - Alles rund um E-Mail. Mailserver, Mailprogramme usw.

  • Mathematics - Mathematische und wissenschaftliche Programme.

  • Miscellaneous - Diverses, was sonst nirgends hineinpaßt.

  • Network - Netzwerkserver und Clientprogramme.

  • Newsgroups - Software für öffentliche Diskussionsforen.

  • Old Libraries - ältere Versionen von Bibliotheken.

  • Other Operating Systems and File Systems - Zugriff auf andere Betriebs- oder Datesysteme.

  • Shells - verschiedene Shells.

  • Sound - Alles für den guten Ton.

  • TeX - Donald Knuth's Schriftsatzprogramm.

  • Text Processing - Werkzeuge zum Umgang mit Textdateien.

  • Utilities - verschiedene Werkzeuge.

  • Web - Programme für das WWW, Server und Clients.

  • X Window - X Servers, Window Managers und anderes.

Das Debian-Paketformat – .deb

Das Debian-Paketformat beinhaltet eine Vielzahl von Informationen zu jedem Paket um sicherzustellen, das sich jedes einzelne perfekt in das System integriert. Debian-Paketnamen enden immer mit .deb, somit können sie leicht von anderen Dateien oder von Paketen aus anderen Distributionen unterschieden werden. Das bekannteste Feature des Debian-Paketformates sind die Abhängigkeiten (dependency) zwischen den Paketen.

Abhängigkeiten zwischen den Paketen erlauben es zum Beispiel einzelnen Programmen, auf gemeinsame Bestandteile anderer Pakete zuzugreifen, meist sind dies Libraries (Systembibliotheken). Dies verhindert ein unnötiges, doppeltes Installieren von Dateien, auf einem durchschnittlichen System kann so die Zahl der installierten Dateien deutlich reduziert werden.

Betrachten wir uns zunächst einmal den einfachsten Fall: ein Paket benötigt zwingend ein zweites Paket, um zu funktionieren. Das Paket mail-crypt ist eine Erweiterung zu Emacs, um E-Mail mit PGP zu verschlüsseln. Wenn PGP nicht installiert ist, wird auch mail-crypt nicht funktionieren. Somit wurde vom Debian Paket-Betreuer (Maintainer) dem Paket die Abhängigkeit zu PGP mitgegeben. Ebenso bedingt mail-crypt die Installation von emacs, da es eine Erweiterung dazu ist, macht es keinen Sinn, dies alleine zu installieren.

Weiterhin sind in den Paketbeschreibungen auch Konflikte zwischen den Paketen festgelegt. So ist es unter Debian GNU/Linux nicht möglich, zwei oder mehrere der Programme exim, smail, sendmail oder qmail zu installieren. Die Abhängigkeiten erlauben es, daß genau ein Programm, welches für den Mailtransport zuständig ist, installiert werden kann. Dann haben Sie aber die freie Auswahl zwischen den verfügbaren Paketen.

Nun wäre es denkbar, daß ein Programm zum Erstellen von E-Mail (beispielsweise mutt), da es ja eine Möglichkeit benötigt, auch Mails auszuliefern, von smail abhängt. Damit würde man dem Benutzer von mutt vorschreiben, welchen MTA (Mail Transfer Agent) er zu benutzen hat. Debian GNU/Linux-Pakete gehen auch hier einen besonderen Weg. Von den Maintainern der Pakete wird zusätzlich ein „virtueller“ Name festgelegt. Die Programme exim, smail, sendmail und qmail beispielsweise verfügen noch über die Information, daß Sie einen „mail-transport-agent“ zur Verfügung stellen. Somit bleibt Ihnen die freie Auswahl zwischen einem dieser Programme.

Das Debian-Paketsystem überwacht zu jeder Zeit alle diese Abhängigkeiten und sorgt dafür, daß Ihr System in einem sicheren, lauffähigen Zustand bleibt.