Software Installieren/Deinstallieren unter Linux

Aus Linupedia
Wechseln zu: Navigation, Suche

Allgemeines

Software Installieren/Deinstallieren unter Linux

Wie installiere ich Software unter Linux?

Allgemein

Die meisten Windows-User / Linux-Umsteiger dürften daran gewohnt sein, sich die meisten ihrer benötigten Programme aus dem Internet herunterzuladen, bzw. von den CDs des Softwareherstellers zu installieren.
Bei Linux ist dies etwas anders.
Nahezu alle Distributionen verfügen über eigene Werkzeuge zur Paketverwaltung.
Je nach Distribution kommen dabei unterschiedliche Paketmanager zum Einsatz, die allerdings eine Gemeinsamkeit aufweisen:
Sie - und nur sie - sind in erster Linie für die Verwaltung (Installation / Deinstallation) von Software verantwortlich.
Nahezu alle Paketmanager können mit externen Quellen erweitert werden, um die Auswahl an verfügbarer Software deutlich zu erweitern.
Zusätzlich zu der Software auf den Installationsmedien stehen dem User dann Pakete aus diversen Online-Repositories zur Verfügung. (Eine Breitband-Internet-Anbindung vorrausgesetzt)
Bei Linux ist es also nur äußerst selten notwendig sich Programme direkt von den Hersteller-/Entwicklerseiten im Internet herunterzuladen (zudem diese dann meistens nur im Quelltext vorliegen).

Paketmanager

Obwohl die unterschiedlichen Distributionen verschiedene Werkzeuge zur Paketverwaltung nutzen, ist das Prinzip i.d.R. gleich:
Jede Distribution benötigt speziell für sie gepackte Software-Pakete.
Diese Pakete enthalten neben den reinen Programmdateien auch Informationen, wo diese Programmdateien abgelegt werden sollen, welche Konfigurationen am bestehenden System vorgenommen werden müssen, und meist auch, ob und wenn, welche Software noch zusätzlich benötigt wird, damit das Programm funktioniert.
Bei der Installation werden die Programmdateien im Paket in das laufende oder zu installierende System hinein entpackt, danach werden die Installationsskripte ausgeführt.
Darüber hinaus werden diese Informationen in einer Datenbank gespeichert, um Konflikte mit anderen Versionen dieses Programms zu vermeiden, das Programm einfacher zu aktualisieren oder vollständig zu entfernen.

Bei den Paketmanagern unterscheidet man zwischen den so genannten Backends (rpm, dpkg, ...) und den verschiedenen Frontends (apt, smart, yast, ...).
Erstere sind die Basis der Paketverwaltung der verschiedenen Linux-Distributionen und damit die grundlegenden Programme zum Installieren und Manipulieren von Softwarepaketen.
Ihr großer Nachteil: Sie können keine Repositories verwalten und sind damit auch nicht in der Lage Paketabhängigkeiten automatisch aufzulösen.
Für diese Aufgabe empfiehlt sich ein "richtiger" Paketmanager. Diese bieten dem User eine komfortable Möglichkeit Software auf seinem Linuxrechner zu installieren, deinstallieren oder aktualisieren.
Außerdem sind sie in der Lage Online-Repositories zu verwalten und eventuelle Paketabhängigkeiten selbständig aufzulösen.

APT

Advanced Packaging Tool
Der Frontend Paketmanager für Debian und Ubuntu

Inzwischen auch als apt4rpm für SuSE Linux verfügbar. Eine Installationsanleitung für apt unter Suse findet sich hier. Wird nicht mehr weiterentwickelt.

DPKG

Debian Package
Der Backend Paketmanager für Debian und Ubuntu.
Software installieren/deinstallieren mit dpkg.

RPM

RPM Package Manager (ehemals Red Hat Package Manager)
Der Backend Paketmanager für Red Hat, Fedora, CentOS, openSUSE, Mageia und Mandriva Linux (und weitere Distributionen).
Software installieren/deinstallieren mit rpm.
Wie erstelle ich ein virtuelles RPM Paket?

YaST

Yet another Setup Tool
Das Werkzeug zur Softwareinstallation und Systemkonfiguration für openSUSE.
Software installieren/deinstallieren mit YaST.
YaST-Installationsquellen für openSUSE.

YUM

Yellow Dog Updater Modified
Der Paketmanager von Yellow Dog Linux, welcher auch in den Produkten von Red Hat und deren "Ableger" Fedora, CentOS eingesetzt wird.

Zypper

Der Frontend Paketmanager für openSUSE.

Pacman

Der Arch Linux Paketmanager.

Portage

Gentoo's Paketverwaltungstool.


Spezielle Installer (*.bin, *.run, ...)

Für einige Programme, hauptsächlich Software die nicht unter GPL (GNU General Public License) steht oder deren Quellcode aus anderen Gründen nicht frei verfügbar ist, werden vom Hersteller spezielle Installer angeboten.
Dies trifft unter Anderem auf proprietäre Software wie z.B. die Grafikkartentreiber von AMD/ATI oder NVIDIA, die Loki-Installer mit denen diverse Windowsspiele unter Linux spielbar sind, sowie einige beliebte Programme wie z.B. Google Earth oder Picasa zu.

Ein Vorteil dieser Installer ist, dass die jeweiligen Programme auf den meisten gängigen/aktuellen Distributionen installiert werden können und der Hersteller darauf verzichten kann, spezielle Pakete für jede einzelne Distribution bereitzustellen.

Je nachdem ob ein mit dem Loki-Installer oder ähnlichen Routinen zu installierendes Programm nur für den aktuellen User oder global im System, also für alle dem System bekannten User, zugänglich sein soll, werden diese entweder als der aktuelle User oder als User root folgendermaßen installiert:

1. Man öffnet eine Konsole bzw. eine Terminalemulation wie xterm auf der aktuellen grafischen Nutzeroberfläche.
2. Dort meldet man sich ggf. als User root per su, sux(bei SuSE/openSUSE anzuraten da ansonsten ggf. noch ein xhost localhost vor dem Aufruf von su und ein export DISPLAY=localhost:0 benötigt sein könnte) oder su - an sofern globale Verfügbarkeit des Programms erwünscht ist.
3. Danach startet man den Installer per sh <Pfad zum Installer>/<Dateiname des Installers>. Im Falle von 64 Bit Systemen kann es eventuell nötig sein, den Installer über den 32Bit Wrapper aufzurufen, was per linux32 sh <Pfad zum Installer>/<Dateiname des Installers> auch kein wirklich großes Problem darstellt.
4. Man folgt den auf dem Bildschirm auftauchenden Anweisungen des Installers.
5. Das Konsolen- bzw. Terminalfenster kann nach dem Abschluß der Installation geschlossen werden.

Aus den Quellen (Sources) installieren

Software aus dem Quelltext Installieren/Deinstallieren

Ein großer Vorteil von Linux ist es, dass die meisten Programm unter der GPL (GNU General Public License) stehen und somit im Quelltext vorliegen.
Unter Quellcode oder Quelltext versteht man dabei den in einer Programmiersprache geschriebenen für Menschen lesbaren Text eines Programms.
Dieser muss, damit das Programm ausgeführt werden kann, in Maschinensprache übersetzt (kompiliert) werden.
Die meisten Linux-Distributionen bringen bereits die benötigten Werkzeuge zum Übersetzen von Programmen mit oder können bequem und schnell mit der jeweiligen Paketverwaltung nachinstalliert werden.

In der Regel werden diese nur zur Software-Entwicklung oder zum Installieren einiger Treiber-Kernelmodule benötigt.
Da die meisten Distributionen über eine Paketverwaltung verfügen ist es nur äußerst selten notwendig das entsprechende Programm selbst aus dem Quellcode zu kompilieren.
Nur wenn ein benötigtes Programm nicht über den Paketmanager erhältlich ist, muss auf diese Methode zur Installation von Software zurückgegriffen werden.


Zurück zu Allgemeines