Normalerweise installiert ein Benutzer Pakete mit dem Befehlszeilendienstprogramm yum. Die offiziellen CentOS-Repositorys enthalten Tausende von RPM-Paketen, aber in einigen Fällen können Sie auf eine RPM-Datei stoßen, die sich in keinem Repository befindet.
Einige Softwareautoren stellen nur herunterladbare RPM-Dateien für die Installation bereit. Aus diesem Grund sind RPM-Dateien so konzipiert, dass sie unabhängig von einem Software-Repository heruntergeladen und installiert werden.
In diesem Tutorial erfahren Sie, wie Sie eine .rpm-Datei in Ihrer Linux CentOS-Distribution installieren.
Was ist der RPM-Paketmanager?
Red Hat Package Manager ist ein kostenloses Open-Source-Paketverwaltungssystem zum Installieren, Deinstallieren und Verwalten von Softwarepaketen in Red Hat und seinen Derivaten wie CentOS und Fedora.
Voraussetzungen
Bevor wir beginnen, müssen Sie sicherstellen, dass Sie sudo und dass Sie einige der RPM-, DNF- und YUM-Paketmanager (alle standardmäßig enthalten) auf Ihrem System installiert haben.
Stellen Sie außerdem sicher, dass das RPM-Paket, das Sie installieren möchten, für Ihre Systemarchitektur und Ihre CentOS-Version erstellt wurde.
Für dieses Tutorial werden wir das Slack RPM-Paket auf CentOS 8 herunterladen und installieren.
RPM-Installationspaket herunterladen
Normalerweise wird ein Webbrowser verwendet, um eine .rpm-Datei zu suchen und herunterzuladen, Sie können jedoch auch Befehlszeilentools wie wget oder . verwenden curl Befehl.
Für example, verwenden wir den Befehl wget, um das Slack-Paket (rpm) wie folgt in das aktuelle Verzeichnis (ich lade nach /tmp herunterzuladen) herunterzuladen:
$ wget https://downloads.slack-edge.com/linux_releases/slack-4.3.2-0.1.fc21.x86_64.rpm
--2020-02-15 23:11:20-- https://downloads.slack-edge.com/linux_releases/slack-4.3.2-0.1.fc21.x86_64.rpm
Resolving downloads.slack-edge.com (downloads.slack-edge.com)... 99.86.243.67, 99.86.243.88, 99.86.243.60, ...
Connecting to downloads.slack-edge.com (downloads.slack-edge.com)|99.86.243.67|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 60768380 (58M) [application/octet-stream]
Saving to: ‘slack-4.3.2-0.1.fc21.x86_64.rpm’
slack-4.3.2-0.1.fc21.x86_6 100%[========================================>] 57.95M 584KB/s in 2m 19s
2020-02-15 23:13:40 (427 KB/s) - ‘slack-4.3.2-0.1.fc21.x86_64.rpm’ saved [60768380/60768380]
Um dies zu überprüfen, können Sie den Befehl ls verwenden, um die RPM-Datei im Verzeichnis ‘/tmp’ aufzulisten:
$ ls /tmp/
slack-4.3.2-0.1.fc21.x86_64.rpm
Installieren der RPM-Datei mit dem RPM-Befehl
Sie können das RPM-Paket mit zwei Methoden installieren. Der erste verwendet den RPM-Befehl, der andere den Yum-Paketmanager.
Im folgenden Befehl verwenden wir -i
Option zum Installieren des heruntergeladenen RPM-Pakets:
$ sudo rpm -i /tmp/slack-4.3.2-0.1.fc21.x86_64.rpm
warning: ./slack-4.3.2-0.1.fc21.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 8e6c9578: NOKEY
error: Failed dependencies:
libXScrnSaver is needed by slack-4.3.2-0.1.fc21.x86_64
libappindicator-gtk3 is needed by slack-4.3.2-0.1.fc21.x86_64
Aus der obigen Ausgabe können wir sehen, dass die Installation aufgrund fehlender Abhängigkeitspakete fehlgeschlagen ist. Wir müssen also nach RPM-Abhängigkeitspaketen suchen und diese manuell installieren.
Überprüfen Sie die RPM-Abhängigkeiten
Um die Paketabhängigkeiten zu überprüfen, haben wir zwei rpm-Optionen. Sie können verwenden -qpR
um die RPM-Datei abzufragen und -qR
nach Paketnamen abzufragen.
rpm -qpR .rpm-file
rpm -qR package-name
Für example, fragen wir eine .rpm-Datei (wir verwenden slack rpm, die wir bereits zuvor heruntergeladen haben) ab, um alle erforderlichen Abhängigkeitspakete zu finden:
$ sudo rpm -qpR /tmp/slack-4.3.2-0.1.fc21.x86_64.rpm
warning: slack-4.3.2-0.1.fc21.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 8e6c9578: NOKEY
libXScrnSaver
libappindicator-gtk3
libsecret-1.so.0()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1
Installieren von RPM-Paketen mit yum
Jetzt kommt das praktische Tool namens yum
wo wir uns keine Sorgen um Abhängigkeiten machen müssen. Dieser Yum-Paketmanager kann alle erforderlichen Abhängigkeiten abrufen und für uns einrichten.
Wir werden jetzt den Yum-Paketmanager verwenden, um unser heruntergeladenes Paket mit dem folgenden Befehl zu installieren:
$ sudo yum localinstall /tmp/slack-4.3.2-0.1.fc21.x86_64.rpm
CentOS-8 - AppStream 6.4 kB/s | 4.3 kB 00:00
CentOS-8 - Base 5.2 kB/s | 3.8 kB 00:00
CentOS-8 - Extras 2.7 kB/s | 1.5 kB 00:00
Extra Packages for Enterprise Linux Modular 8 - x86_6 26 kB/s | 27 kB 00:01
Extra Packages for Enterprise Linux 8 - x86_64 20 kB/s | 29 kB 00:01
Dependencies resolved.
======================================================================================
Package Architecture Version Repository Size
======================================================================================
Installing:
slack x86_64 4.3.2-0.1.fc21 @commandline 58 M
Transaction Summary
======================================================================================
Install 1 Package
Total size: 58 M
Installed size: 185 M
Is this ok [y/N]:
Nach der Eingabe y
es installiert alle Abhängigkeiten und unser Paket:
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : slack-4.3.2-0.1.fc21.x86_64 1/1
Running scriptlet: slack-4.3.2-0.1.fc21.x86_64 1/1
Verifying : slack-4.3.2-0.1.fc21.x86_64 1/1
Installed:
slack-4.3.2-0.1.fc21.x86_64
Complete!
Entfernen des RPM-Pakets
Um das RPM-Paket zu entfernen, weisen wir RPM an, die Software mit zu löschen -e
Möglichkeit.
Im Folgenden example, werden wir das Slack-Paket deinstallieren (entfernen):
$ sudo rpm -e slack-4.3.2-0.1.fc21.x86_64
Fazit
In diesem Tutorial haben wir Ihnen gezeigt, wie Sie RPM-Pakete auf CentOS installieren und entfernen. Sie sollten lieber yum als rpm verwenden, da es automatisch alle Abhängigkeiten für Sie auflöst. Yum macht es einfach, Installationen, Updates und Voraussetzungen zu verfolgen.