So funktionieren Software-Installer unter Windows, Mac OS und Linux

So funktionieren Software-Installer unter Windows, Mac OS und Linux / Technologie erklärt

Moderne Betriebssysteme bieten Ihnen einfache Methoden zum Einrichten neuer Anwendungen. Dazu gehören automatisierte Installationspakete sowie Befehle, mit denen viele Softwarekomponenten gleichzeitig installiert werden. Aber was passiert eigentlich, wenn Sie das Installationsprogramm ausführen oder den Befehl ausführen??

Schauen wir uns an, wie Software auf drei großen Desktop-Plattformen installiert wird: Windows, MacOS und Linux.

Methoden der Softwareinstallation

Es gibt verschiedene Möglichkeiten, wie Sie neue Anwendungen auf Ihrem Computer ausführen können. Um die Komplexität zu erhöhen, gehören dazu:

  • Software-Kompilierung - Erstellen der Anwendung aus ihrem Quellcode. Nur für technisch versierte Benutzer.
  • Software-Archive - Entpacken von Archiven wie ZIP-Dateien und Ausführen des Programms von wo auch immer Sie es extrahiert haben. Dies erfordert möglicherweise zusätzliche Anpassungen.
  • Installationspakete - Installationsdatei suchen und (Doppel-) Klicken, um die Installation zu starten.
  • Software Manager / Stores - Wählen Sie die App über eine nette Benutzeroberfläche aus und klicken Sie auf eine große “Installieren” Taste. Es ist Magie!

In diesem Artikel werden die Installer-Pakete untersucht, da die meisten Software-Manager / Stores diese Art von Paketen ohnehin hinter den Kulissen behandeln. Bei den wichtigsten Desktop-Plattformen von heute - Windows, MacOS und Linux - schauen wir uns an, was eines dieser Pakete ausmacht und was bei der Installation passiert.

Microsoft Windows

Die Installationspakete, auf die Sie wahrscheinlich für Windows stoßen werden, gibt es in zwei Varianten. Ausführbare Dateien (EXE-Dateien) können Ihr Programm einrichten, indem Sie die Dateien am richtigen Ort ablegen und Windows-Registrierungsupdates durchführen. Windows Installer-Pakete (MSI) ergänzen dieses Angebot, indem sie standardisierte Dienste wie etwa Deinstallationen bereitstellen.

Sie können den Inhalt von EXEs oder MSIs überprüfen, indem Sie das Archiv mit 7-Zip 7Zip öffnen: Ein kostenloses Programm zum Entpacken ungewöhnlicher Archivformate 7Zip: Ein kostenloses Programm zum Entpacken ungewöhnlicher Archivformate Weitere Informationen. Wenn Sie sich 7-Zips eigenen EXE-Installer ansehen, finden Sie eine Reihe verschiedener Dateien in:

Während diese Dateien keinen enthaltenden Ordner im Installationsprogramm haben, hat der Entwickler jeweils auf ein Zielverzeichnis hingewiesen. Die meisten von ihnen landen im “Standardinstallationspfad” - der gleiche Vorschlag, den Sie normalerweise für einen Ordner wie sehen “C: \ Programme \ [Programmname]” oder “C: \ Programme (x86) \ [Ihre neue App].”

Wenn Sie ein ausgeklügeltes Tool wie InstallShield verwenden, um Installationspakete zu erstellen, können App-Entwickler die Installation anpassen. Sie können beispielsweise festlegen, auf welchen Windows-Versionen Windows installiert wird, Verknüpfungen für die Erstellung im Startmenü und / oder auf dem Desktop einrichten oder Benutzerinformationen wie Name, Adresse usw. sammeln. Das InstallShield-Beispielprojekt in Das Bild unten zeigt den Bildschirm, in dem Sie festlegen können, ob Windows-Registrierungsschlüssel erstellt oder aktualisiert werden sollen.

Mit InstallShield werden die App-Dateien und andere Anpassungen in einer Version zusammengefasst setup.exe Datei. Wenn Sie es mit 7-Zip öffnen, wird ein MSI-Paket angezeigt, das bei seiner Ausführung genau wie die Installation aussieht, die wir alle gewohnt sind. Lassen Sie uns überprüfen, was während dieses Vorgangs geschieht.

Windows-Installationsprozess

Ein Installationsprogramm führt die folgenden Schritte aus, um Ihre App für die Verwendung einzurichten (die genaue Reihenfolge kann je nach den Anpassungen des Entwicklers variieren):

  1. Ein Installationsprogramm kann andere Archive enthalten, wie das oben genannte MSI oder Formate wie CAB. Als ersten Schritt extrahiert das Installationsprogramm diese an einen temporären Speicherort.
  2. Als Nächstes wird geprüft, ob alle festgelegten Abhängigkeiten verfügbar sind. Wenn etwas fehlt, wird es nach Möglichkeit heruntergeladen, oder das Installationsprogramm wird mit einem Fehler beendet, wenn dies nicht der Fall ist.
  3. Wenn Abhängigkeiten erforderlich sind, werden sie zuerst mit dem Installationsprogramm installiert, das mit dem jeweiligen Installationsprogramm geliefert wurde (je nachdem, ob eine Installation für .NET Framework unterbrochen wurde? Microsoft .NET Framework: Warum benötigen Sie es und wie wird es unter Windows installiert? Sie benötigen es und wie es unter Windows installiert werden muss Sie müssen es entweder installieren oder aktualisieren. Sie wissen jedoch, was .NET Framework ist. Wir zeigen Ihnen, warum Sie es benötigen und wie Sie die neueste Version herunterladen können. Weitere Informationen.
  4. Als nächstes beginnt das Installationsprogramm, die Dateien der App zu kopieren und an ihrem richtigen Ort abzulegen.
  5. Wenn der Entwickler Verknüpfungen konfiguriert hat, erstellt das Installationsprogramm diese und zeigt sie an den tatsächlichen Installationspfad an. Denken Sie daran, Sie können dies ändern. So erstellen Sie Windows-Desktop-Verknüpfungen. Easy Way So erstellen Sie Windows-Desktop-Verknüpfungen Einfaches Durchsuchen von Menüs und Ordnern. Wir zeigen Ihnen, wie Sie diese schnell und einfach erstellen können. Lesen Sie mehr, wenn das Installationsprogramm ausgeführt wird..
  6. Änderungen an der Windows-Registrierung 3 Zu überwachende Tools 3 Die Windows-Registrierung 3 Zu überwachende Tools 3 Die Windows-Registrierung Die Windows-Registrierung ist einer der am wenigsten verstandenen Teile des Windows-Betriebssystems. Wir zeigen Ihnen Tools, mit denen Sie die Registrierung vereinfachen und Probleme identifizieren können. Read More, falls vorhanden, wird ausgeführt.
  7. Schließlich kann der Installateur den Benutzer auffordern, Informationen wie Name oder Website-Adresse einzugeben.

Dieser Vorgang kann im Vergleich zum nächsten Betriebssystem in der Liste komplex erscheinen. Schauen wir uns die Installation von Software unter macOS an.

Apple MacOS

Windows Installer haben viel unter der Haube. Wenn Sie jedoch einen Mac verwenden, wissen Sie, dass die Installation einer Anwendung oft so einfach ist wie das Herunterladen einer Kopie der App, das Öffnen des Disk-Images (DMG) und die folgenden einfachen Anweisungen. So installieren und entfernen Sie die Mac-Software: 5 einfache Methoden Installieren und Entfernen von Mac-Software: 5 einfache Methoden Auf einen Mac umgestellt und mit den Grundlagen vertraut gemacht? Sie fragen sich, wie Sie Software von der Befehlszeile aus installieren können? Haben Sie alte Windows-Apps, die Sie einfach auf Ihrem Apple-Computer ausführen müssen? Weiterlesen . Manchmal enthält der Download sogar eine “Hierher ziehen!” Symbol.

Lassen Sie uns in das APP-Paket sowie dessen Gegenstück in den PKG-Installer eintauchen.

macOS-Paketstruktur

Die APP-Datei auf der Oberfläche ist eigentlich einfacher als Windows aus zwei Gründen. Erstens ist es ein Standardordner. Der einzige Unterschied ist, dass es mit a endet “.APP” Suffix. Wenn Sie eine dieser Dateien unter Windows herunterladen, wird sie genauso angezeigt wie alle anderen Dateiordner im Explorer. Zweitens verlangen APP-Dateien, dass absolut alles enthalten ist, was das Programm benötigt. Es gibt keine Sorgen über fehlende Abhängigkeiten bei diesen Installationsarten.

Diese Pakete müssen drei Elemente in einem Ordner enthalten “Inhalt”: 1) an “Info.plist” Datei, die Anwendungsmetadaten enthält, z. B. Name, Sprache, Versionsnummer usw.; 2) a “Mac OS” Verzeichnis, das die Hauptprogrammdatei enthält; und 3) a “Ressourcen” Verzeichnis, das die von der Anwendung benötigten Ressourcen enthält (z. B. ein Anwendungssymbol). Es gibt noch weitere optionale Ordner wie “Frameworks” (Funktionspakete, die nicht für die App spezifisch sind), “Plugins” (Funktionalität für die App, die zur Ausführung nicht erforderlich ist) und “SharedSupport” (fremde Daten wie Vorlagen).

Im Gegensatz dazu ist das PKG-Format eine Kombination aus einem Windows-ähnlichen Installationsprogramm mit einer Unix-ähnlichen Struktur. 3 UNIX-ähnliche Betriebssysteme, die keine Linux-Systeme sind. 3 UNIX-ähnliche Betriebssysteme, die keine Linux-Betriebssysteme sind. UNIX "mit" Linux ". Linux wurde von UNIX beeinflusst, aber UNIX-Systeme haben keine Beziehung zu Linux. Hier sind einige wichtige UNIX-basierte Systeme, die es zu wissen gilt. Weiterlesen . Die 7-Zip-Anwendung öffnet auch eine PKG-Datei, die in komprimiert ist xar Format. Innerhalb ist eine oder mehrere Nutzlast Dateien, die auch ein Archiv ist. Um den Inhalt zu extrahieren, verwenden Sie die folgende Befehlskette (cpio ist ein Archivformat sowie ein Programm zur Bearbeitung in einem Mac- oder Linux-Terminal:

Katze Nutzlast | gunzip -dc | cpio -i

Sobald Sie fertig sind, sehen Sie eine vertraute, Unix-artige Verzeichnisstruktur.

Im folgenden Beispiel habe ich den Dokumentkonverter Pandoc verwendet. Es enthält ein binäres in / usr / local / bin und einige Dokumentation in / usr / local / share / man. Wie kommen diese Dinge tatsächlich zusammen? Wir werden einen Blick darauf werfen, wie sich jede dieser Komponenten tatsächlich auf Ihrem Mac installiert.

Ich habe die Windows-Version von 7-Zip verwendet, um dies zu veranschaulichen, anstatt nur die Linux-Befehlszeile.

macOS APP-Installationsvorgang

Wenn Sie diese APP-Datei in Ihrem Anwendungsordner ablegen, ändert sich dies nicht wirklich. Denken Sie daran, dass alles, was zum Ausführen des Programms benötigt wird, in sich abgeschlossen ist. Der einzige Unterschied zu einem Standard-Drag-and-Drop-Verfahren besteht darin, dass das “Info.plist” Die Datei wird beim System registriert.

Dadurch werden Dinge konfiguriert, z. B. welche ausführbare Datei beim Start der App aufgerufen wird, welches Symbol angezeigt wird, welche Dateitypen es unterstützt und vieles mehr. Ansonsten ist Ihre App (z. B. das APP-Paket für den Atom-Editor unten) jetzt einsatzbereit.

Installationsprozess für macOS PKG

Das Öffnen einer PKG-Datei startet dagegen a “Zauberer-Stil” Installateur. Bei einfachen Programmen ist dies normalerweise a Komponenteninstallationsprogramm, was normalerweise durch die folgenden Schritte geht:

  1. Führen Sie das aus vorinstallieren Skript.
  2. Packen Sie das aus “Nutzlast” Inhalt der Maschine.
  3. Führen Sie das aus postinstall Skript.

Entwickler können dann mehrere Komponenten zu einer einzigen zusammenfassen Produktarchiv Installieren. Dies fügt Optionen hinzu, z. B. Anzeigen einer Endbenutzer-Lizenzvereinbarung für den Benutzer, Sammeln von Informationen vom Benutzer und Auswählen der zu installierenden Komponenten. Inzwischen kümmert sich der Apple Installer um alle Details, um die erforderlichen Komponenten nacheinander im Hintergrund zu installieren.

Wenn wir von Unix-basierten Installationsprogrammen sprechen, werden wir im nächsten Abschnitt zu den zwei führenden Linux-Paketformaten übergehen.

Ubuntu und Fedora Linux

Ah, DEB versus RPM So installieren Sie Software unter Linux: Paketformate werden erklärt So installieren Sie Software unter Linux: Paketformate werden erläutert Sie haben zu Linux gewechselt und möchten Software installieren. Die Paketmanager unterscheiden sich jedoch je nach Ihrer Distribution. Welche Apps können Sie also herunterladen und installieren? Es steht alles in den Akronymen. Weiterlesen . Einer der großen Flammenkriege, der nur von Leuten überboten wurde vi gegen Emacs oder KDE gegen GNOME. Diese Formate sind jedoch ähnlicher als anders. Lass uns einen Blick darauf werfen.

Linux-Paketdateistruktur

Um einen Blick auf das Innere einer DEB-Datei zu werfen, können Sie einen GUI-Archivmanager ausprobieren. Ansonsten verwenden Sie die ar Befehl. Der folgende Befehl wurde im Terminal 40+ Most Used Linux Terminal Commands eingegeben. 40+ Am häufigsten verwendete Linux Terminal Commands. Ob Sie gerade erst mit dem Linux-Terminal beginnen oder einfach nur neugierig auf das Linux-Terminal sind, hier sind die am häufigsten verwendeten Befehle, die Sie durch Ihre gesamte Zeit tragen werden unter Linux. Mehr lesen extrahiert den Inhalt eines Debian-Pakets:

ar -x name-of-your-package.deb

Daraus ergeben sich drei Dateien:

  • control.tar.gz - Diese enthält wiederum eine Primärdatei, Steuerung, Diese enthält Metadaten zum Paket, z. B. den offiziellen Namen, die Version und Abhängigkeiten. Es kann auch andere Dateien enthalten, z. B. Skripts, die während des Installationsvorgangs ausgeführt werden, oder Standardkonfigurationsdateien.
  • data.tar.gz - Die Dateien, aus denen sich die Anwendung selbst zusammensetzt, befinden sich in diesem TAR.GZ-Archiv. Hier finden Sie alles, einschließlich Binaries, Dokumentation und Standardkonfigurationen. Im Beispielpaket kde-service-menu-encfs_0.5.2_all.deb enthält es Dateien und Verzeichnisse, wie in der folgenden Abbildung dargestellt.
  • debian-binary - Diese Datei legt fest, welche Version des Debian-Paketformats die Datei verwendet. Für moderne Distributionen wird dies nur enthalten “2,0” in einer einzigen Zeile.

In Fedora können Sie das verwenden rpm2cpio und cpio Befehle zum Extrahieren eines RPM-Pakets und Durchsuchen ihrer Dateien:

rpm2cpio name-of-your-package.rpm | cpio -idvm

Für das Paket kde-cli-tools-5.9.4-2.fc26.x86_64.rpm wird eine Dateibaumstruktur angezeigt, die dem DEB-Paket ähnelt. Es liefert aber keine Metadaten, zumindest nicht in der binär Paket. Sie müssen das Quell-RPM (.SRC.RPM) herunterladen, das Ihrer Binärversion entspricht, und dann den obigen Befehl für diese Datei verwenden. Darin enthalten ist eine SPEC-Datei, die viele der gleichen Elemente enthält wie die Steuerung Datei in einem Debian-Paket.

Nachdem wir nun die Struktur von Linux-Paketen verstanden haben, wollen wir untersuchen, was passiert, wenn Sie sie tatsächlich installieren. So installieren Sie Software unter Linux: Paketformate erklärt So installieren Sie Software unter Linux: Paketformate erklärt Sie haben zu Linux gewechselt möchte einige Software installieren. Die Paketmanager unterscheiden sich jedoch je nach Ihrer Distribution. Welche Apps können Sie also herunterladen und installieren? Es steht alles in den Akronymen. Weiterlesen .

Installation des Linux-Pakets

Wenn Sie Pakete eines der beiden Formate unabhängig vom Frontend installieren, werden ähnliche Schritte ausgeführt:

  1. Das Paketsystem prüft den Inhalt des Pakets, um festzustellen, ob Abhängigkeiten fehlen. Je nach Tool werden Sie entweder gewarnt, oder sie werden heruntergeladen.
  2. Wenn die Pakete vorinstallierte Skripts oder Befehle enthalten, werden sie als Nächstes ausgeführt.
  3. Dann extrahiert das Paketsystem tatsächlich die Dateien des Pakets.
  4. Wenn die Dateien vorhanden sind, werden nach der Installation ausgeführte Skripts ausgeführt.
  5. Schließlich wird das Paket mit seinen Metadaten bei der internen Datenbank registriert, sodass es später deinstalliert werden kann.

Zu wissen, wie Software installiert wird, ist eine gute Sache

Da die Entwickler von Betriebssystemen und die darauf ablaufende Software die Installation der Software sehr vereinfachen, müssen Sie nicht auf die Details achten. Wenn Sie wissen, was hinter den Kulissen passiert, können Sie beruhigt sein, was auf Ihrem System installiert ist, und Sie können auch bei der Fehlerbehebung helfen.

Wie viele der oben genannten Softwareinstallationsmethoden haben Sie durchgeführt? Bevorzugen Sie DEB oder RPM? Oder stellen Macs APP-Pakete den Gipfel der Benutzerfreundlichkeit dar? War schon mal ein Albtraum-Installation passiert? Lass es uns in den Kommentaren wissen!

Erfahren Sie mehr über: Installieren Sie Software, Linux, macOS Sierra, Windows.