Frage #1

Ich habe ein Linux System und brauche einige Software. Soll ich Pakete aus dem Internet herunterladen und installieren?

Antwort:

Die Antwort auf diese Frage ist ein bisschen kompliziert. Wenn ihr keine Zeit zum Lesen habt, dann fasse ich zusammen:

NEIN! Benutzt den Paketmanager eurer Distribution und sucht die passenden Pakete heraus!

Etwas ausführlicher:

Euer Linux- Betriebssystem ist nicht bloß ein Haufen von Dateien und Ordnern, die zufällig dort liegen wo sie liegen. Es ist ein ausgereiftes System, das gut organisiert und verwaltet ist. Mit dem System arbeiten geht wie von selbst, aber auch Aufgaben wie das Installieren von Software und sogar das Updaten von Software wird vollautomatisch erledigt, und zwar von einem Programm das man im allgemeinen als „Paketmanager“ bezeichnet.
Bei SuSe und Red Hat GNU/Linux heißt der Paketmanager „rpm“, bei Ubuntu und Debian GNU/Linux heißt er „apt“ und bei Gentoo heißt er „emerge“ - jede „Distributionsfamilie“ hat einen eigenen Paketmanager.

Der Paketmanager kennt sich auf eurem System aus, und verwaltet es:

  • Er sorgt dafür, dass sich alle Dateien auf dem richtigen Platz befinden
  • Er sorgt dafür, dass alle Programme und vor allem Programmbibliotheken in der richtigen Version auf eurem System installiert sind.
  • Er sorgt dafür, dass alle Abhängigkeiten erfüllt sind und keine Datei fehlt.
  • Er lädt neu zu installierende Software von der Richtigen Website herunter, entpackt sie und installiert alle benötigten Dateien an den richtigen Platz.
  • Braucht ihr Software auf einmal nicht mehr, entfernt er alle nicht mehr benötigten Dateien sauber.

Paketmanager wurden erfunden, weil die Installation von Software früher ein Horror war: Man musste die Pakete (als Quellcode!) herunterladen, sie kompilieren, die Dateien an den richtigen Platz speichern und natürlich die Abhängigkeiten erfüllen. Abhängigkeiten erfüllen bedeutet, dass man auch Programmbibliotheken, von denen die Programme abhingen zu suchen, herunterzuladen, zu kompilieren, und zu installieren, und auch deren Abhängigkeiten erfüllen. Es ist klar, dass man bei vielen Programmen schnell die Übersicht verliert und sich nicht mehr auskennt wo was und wieso etwas liegt. Das ist aber noch das geringste übel!
Stellt euch vor das Programm „Keksmacher“ braucht die Programmbibliothek „Mehl“ in der Version 1.0, und das Programm „Brotmacher“ braucht die Programmbibliothek in der Version 2.0. Mehl 1.0 und Mehl 2.0 vertrage sich aber nicht, wenn man sie mischen würde, würde keines der beiden Programme funktionieren! Dieses Problem nennt man Versionskonflikt.

All diese Probleme gab es früher und gibt es noch heute auf Windows-Systemen. Nutzt die Vorteile von Paketmanagern! Deswegen Regel Nr. 1 für die Installation von Software:

Wenn ihr die Wahl habt, installiert Software nur über euren Paketmanager!

Falls ihr das nicht tut, läuft ihr Gefahr euren Paketmanager bei der Arbeit zu stören, und somit euer System unbenutzbar zu machen.


Im weiteren werde ich ein paar andere Möglichkeiten vorstellen, und erklären wieso ihr lieber die Finger davon machen solltet.

  • Manipuliert niemals, ich wiederhole, NIEMALS an Systemdateien herum, löscht sie, verschiebt sie, oder verändert sie.

Das führt in den meisten fällen zu einer Katastrophe, das nicht so einfach rückgängig gemacht werden kann (da ihr die Schritte die ihr macht meist wieder vergesst). Eure Linux Distribution ist ein System, das sich über Jahre entwickelt hat und in der es viele Zusammenhänge gibt, die nicht auf den ersten Blick offensichtlich sind. Deswegen Finger weg von Systemdateien.

  • Verzichtet auf Pakete die man aus dem Internet herunterladen kann.

Dies ist eine Verhaltensweise, die oft von Windowsbenutzern aus Gewohnheit angewandt wird. Auf Linux-Systemen sollte man das nicht tun: Die Entwickler eures Systems wissen, wo sich etwas befinden muss. Es gibt keine Garantie, dass die Leute die das Paket ins Internet gestellt haben das auch wissen. Auch sie können Fehler machen. Fehler, für die IHR bezahlt! Außerdem kann es sehr leicht zu Versionskonflikten kommen.

  • Verzichtet auf Pakete aus alternativen Paketquellen.

Es gelten die gleichen Regeln wie für einzelne Pakete aus dem Internet. Außerdem kommt noch hinzu, dass eine Alternative Paketquelle zu wirklich großen Problemen mit Versionskonflikten kommen kann. Da der Paketmanager glaubt, dass die gepackten Pakete „schon richtig sein werden“, kann es vorkommen, dass euer ehemaliger Freund und Helfer auf einmal zum größten Feind wird und die Hälfte eures Systems deinstalliert, weil die Versionen nicht mehr stimmen.

  • Finger weg von Paketkonvertierern!

Pakete von einer Distribution passen selten zum System einer anderen Distribution. Paketkonvertierer ignorieren das und tun einfach das, wozu sie programmiert wurden, nach bestem Wissen und Gewissen. Das reicht aber oft nicht aus, und erzeugt Pakete die euer System schädigen können.

  • Vermeidet es, Software selbst zu kompilieren.

Pakete selbst zu kompilieren erfordert, dass ihr euch selbst darum kümmert, dass die Abhängigkeiten erfüllt sind, dass ihr die richtigen Tools installiert habt. Beiliegende Installationsskripte mit Root-Rechten aufzurufen ist wie russisches Roulette: wisst ihr mit Sicherheit, dass das Installationsskript alles richtig macht?


Das waren ein paar Ratschläge mit Dingen die man vermeiden sollte. Fortgeschrittene Benutzer können auch gerne mal die eine oder andere Methode ausprobieren, wenn sie bereit sind etwas Risiko einzugehen und vorsichtig genug sind. Oftmals lässt sich wegen veralteter oder nicht vorhandener Software in den Paketquellen der Distribution das Kompilieren von Software nicht verhindern.

Ein paar Worte zum Schluss: Wenn ihr Zeit habt und das System an dem ihr es ausprobiert nicht euer Arbeitssystem ist (ihr also noch ein anderes funktionierendes habt), dann könnt ihr auch gerne diese Ratschläge missachten. Ihr werdet mit ziemlicher Sicherheit in Schwierigkeiten kommen, aber beim Versuch euren Schaden zu reparieren werdet ihr mit Sicherheit viel über euer System erfahren!