Funktionsweise von Software-Installation und Paketmanagern unter Linux
Bei der Installation von Software unter Linux werden Paketmanager und Software-Repositorys verwendet. Es werden keine .exe-Dateien von Websites wie unter Windows heruntergeladen und ausgeführt. Wenn Sie Linux noch nicht kennen, kann dies wie ein dramatischer Kulturwandel erscheinen.
Während Sie alles selbst unter Linux kompilieren und installieren können, erledigen Paket-Manager die gesamte Arbeit für Sie. Die Verwendung eines Paket-Managers macht die Installation und Aktualisierung von Software einfacher als unter Windows.
Linux vs. Windows
Es gibt eine Vielzahl von Linux-Distributionen und eine Vielzahl von Paketmanagern. Linux basiert auf Open-Source-Software. Dies bedeutet, dass jede Linux-Distribution ihre eigene Software mit den gewünschten Bibliotheksversionen und Kompilierungsoptionen zusammenstellt. Kompilierte Linux-Anwendungen werden im Allgemeinen nicht auf allen Distributionen ausgeführt - selbst wenn sie könnten, würde die Installation durch konkurrierende Paketformate behindert. Wenn Sie die Website einer Linux-Anwendung finden, werden Sie wahrscheinlich verschiedene Download-Links für verschiedene Paketformate und Linux sehen Distributionen - vorausgesetzt, die Website der Anwendung enthält überhaupt vorkompilierte Versionen. Möglicherweise fordert Sie die Anwendung auf, den Quellcode herunterzuladen und selbst zu kompilieren.
Software-Repositorys
Linux-Benutzer laden und installieren normalerweise keine Anwendungen von den Websites der Anwendungen, wie dies bei Windows-Benutzern der Fall ist. Stattdessen hostet jede Linux-Distribution ihre eigenen Software-Repositorys. Diese Repositorys enthalten Softwarepakete, die speziell für jede Linux-Distribution und -Version erstellt wurden. Wenn Sie beispielsweise Ubuntu 12.04 verwenden, enthalten die von Ihnen verwendeten Repositorys Pakete, die speziell für Ubuntu 12.04 kompiliert wurden. Ein Fedora-Benutzer verwendet ein Repository mit Paketen, die speziell für ihre Fedora-Version zusammengestellt wurden.
Paketmanager
Stellen Sie sich einen Paketmanager wie einen mobilen App-Store vor - es sei denn, er war lange vor den App-Stores. Bitten Sie den Paketmanager, die Software zu installieren, und das entsprechende Paket wird automatisch aus den konfigurierten Software-Repositorys heruntergeladen, installiert und eingerichtet. Dies alles, ohne dass Sie durch Assistenten klicken oder EXE-Dateien auf Websites suchen müssen. Wenn ein Update veröffentlicht wird, bemerkt der Paketmanager das entsprechende Update und lädt es herunter. Im Gegensatz zu Windows, wo jede Anwendung über einen eigenen Updater verfügen muss, um automatische Updates zu erhalten, verwaltet der Paketmanager Updates für alle installierten Software - vorausgesetzt, sie wurden über die Software-Repositorys installiert.
Was ist ein Paket??
Im Gegensatz zu Windows, wo Anwendungen in EXE-Installationsdateien abgelegt werden, die das System beliebig beeinflussen können, verwendet Linux spezielle Paketformate. Es gibt verschiedene Pakettypen - vor allem DEB unter Debian und Ubuntu und RPM unter Fedora, Red Hat und anderen. Bei diesen Paketen handelt es sich im Wesentlichen um Archive, die eine Liste von Dateien enthalten. Der Paketmanager öffnet das Archiv und installiert die Dateien an dem Speicherort, den das Paket angibt. Der Paketmanager weiß weiterhin, welche Dateien zu welchen Paketen gehören. Wenn Sie ein Paket deinstallieren, weiß der Paketmanager genau, welche Dateien auf dem System dazu gehören. Windows hat keine Ahnung, welche Dateien zu einer installierten Anwendung gehören - Installationsprogramme können die Installation und Deinstallation selbst vornehmen.
Pakete können auch Skripts enthalten, die ausgeführt werden, wenn das Paket installiert und entfernt wird. Diese werden im Allgemeinen für die Systemeinrichtung verwendet und nicht für das Verschieben von Dateien an beliebige Speicherorte.
Software unter Linux installieren
Um Software unter Linux zu installieren, öffnen Sie Ihren Paketmanager, suchen Sie nach der Software und weisen Sie den Paketmanager an, sie zu installieren. Ihr Paketmanager erledigt den Rest. Linux-Distributionen bieten dem Paketmanager oft eine Vielzahl von Frontends. Auf Ubuntu, dem Ubuntu Software Center, Update Manager, der Synaptic-Anwendung und dem Befehl apt-get verwenden Sie beispielsweise apt-get und dpkg, um DEB-Pakete herunterzuladen und zu installieren. Sie können jedes Dienstprogramm verwenden, das Sie möchten - sie bieten lediglich verschiedene Schnittstellen. In der Regel finden Sie in den Menüs Ihrer Linux-Distribution einen einfachen, grafischen Paketmanager.
Aktualisierungsverzögerungen
Neue Linux-Benutzer bemerken bei Paketmanagern und Repositorys oft eine Verzögerung, bevor neue Softwareversionen ihre Systeme erreichen. Wenn beispielsweise eine neue Version von Mozilla Firefox veröffentlicht wird, erhalten Windows- und Mac-Benutzer diese Version von Mozilla. Unter Linux muss Ihre Linux-Distribution die neue Version packen und als Update herausgeben. Wenn Sie das Einstellungsfenster von Firefox unter Linux öffnen, können Sie feststellen, dass Firefox nicht die Möglichkeit hat, sich automatisch zu aktualisieren (vorausgesetzt, Sie verwenden die Firefox-Version aus den Repositorys Ihrer Linux-Distribution)..
Sie können die Anwendung auch selbst herunterladen und installieren, z. B. indem Sie Firefox direkt von Mozilla herunterladen. Dies erfordert jedoch möglicherweise eine Kompilierung und Installation der Software aus dem Quellcode. Dadurch werden die Vorteile von Paketmanagern wie automatische, zentralisierte Sicherheitsupdates aufgehoben.
Während neue Versionen von Firefox Priorität haben, da sie Sicherheitsupdates enthalten, werden andere Anwendungen möglicherweise nicht so schnell bereitgestellt. Zum Beispiel wird eine wichtige neue Version der LibreOffice Office Suite möglicherweise niemals als Update für die aktuelle Version Ihrer Linux-Distribution veröffentlicht. Um mögliche Instabilitäten zu vermeiden und Zeit für Tests zu gewähren, ist diese Version möglicherweise nicht vor der nächsten Hauptversion Ihrer Linux-Distribution verfügbar (z. B. Ubuntu 12.10), wenn sie zur Standardversion in den Software-Repositorys der Distribution wird.
Um dieses Problem zu beheben, bieten einige Linux-Distributionen, z. B. Arch Linux, „rollende Release-Zyklen“, bei denen neue Softwareversionen in die wichtigsten Software-Repositorys verschoben werden. Dies kann zu Problemen führen. Während Sie möglicherweise neue Versionen von Desktop-Anwendungen wünschen, interessieren Sie sich wahrscheinlich nicht für neue Versionen von Low-Level-Systemdienstprogrammen, die zu Instabilität führen können.
Ubuntu bietet das Backports-Repository an, um neuere Versionen bedeutender Pakete auf ältere Distributionen zu übertragen, obwohl nicht alle neuen Versionen es in das Backports-Repository schaffen.
Andere Repositories
Während Linux-Distributionen mit vorkonfigurierten eigenen Repositorys geliefert werden, können Sie Ihrem System auch andere Repositorys hinzufügen. Anschließend können Sie Software-Repositorys von diesem Repository aus installieren und Updates von Ihrem Paketmanager erhalten. Das von Ihnen hinzugefügte Repository muss für Ihre Linux-Distribution und Ihren Paketmanager ausgelegt sein.
Ubuntu bietet beispielsweise eine Vielzahl von persönlichen Paketarchiven (PPAs) an, die Software enthalten, die von Einzelpersonen und Teams erstellt wurde. Ubuntu bürgt nicht für die Stabilität oder Sicherheit der Pakete in diesen Repositorys, Sie können jedoch PPAs von Vertrauenspersonen hinzufügen, um Pakete herunterzuladen, die noch nicht im Ubuntu-Repository enthalten sind, oder neuere Versionen vorhandener Pakete herunterzuladen.
Einige Anwendungen von Drittanbietern verwenden auch eigene Software-Repositorys. Wenn Sie beispielsweise Google Chrome unter Ubuntu installieren, wird Ihrem System ein eigenes apt-Repository hinzugefügt. Dadurch wird sichergestellt, dass Sie Aktualisierungen für Google Chrome über den Update Manager von Ubuntu und Standard-Softwareinstallationsprogramme erhalten.