So verwenden Sie apt-get: Paketmanager in Ubuntu, LinuxMint, Debian

Inhaltsverzeichnis

Was ist apt-get?
Der Befehl apt-get ist ein sehr mächtiges Werkzeug, das standardmäßig in Distributionen wie Debian, LinuxMint und Ubuntu enthalten ist Zeilenbefehl.
Was ist apt-cache?
Es ist ein Derivat von apt-get, seine Hauptfunktion besteht darin, nach der Aktualisierung unseres Repositorys nach den Paketen zu suchen, die wir mithilfe des Caches installieren möchten. Aber wir können nicht nur nach Installation suchen, wir können auch überprüfen, welche Pakete installiert sind oder Paketinformationen wie die installierte Version oder ob ein Update verfügbar ist. Es ist wie apt-get in vielen Distributionen mit deb-Paketen enthalten.

Wie zeige ich die Paketliste an?


Wir können alle für das System verfügbaren Pakete auflisten (Es ist eine sehr lange Liste).
 apt-cache pkgnames esseract-ocr-epo pipenightdreams mumudvb tbb-examples libsvm-java libmrpt-hmtslam0.9 libboost-timer1.50-dev kcm-touchpad g ++ - 4.5-multilib… 

Wie filtert man Suchen nach Namen?


Um nach einem Paket mit einer kurzen Beschreibung zu suchen, ohne es installieren zu müssen, verwenden wir den Befehl apt-cache in Verbindung mit der Suchoption. Es werden alle Pakete aufgelistet, die Ihrer Suche entsprechen. Wenn wir beispielsweise einen FTP-Server installieren möchten, benötigen wir das Paket vsftpd.
 apt-Cache-Suche vsftpd
Aber falls wir nur den Namen ohne Beschreibung wollen verwenden wir
 apt-cache pkgnames vsftpd

Weitere Informationen zum Paket erhalten?


Wenn wir weitere Informationen über das Paket wie seine Version oder Größe in KB erhalten möchten, verwenden wir
 apt-cache netcat anzeigen 
 Paket: netcat Priorität: optional Abschnitt: universe / net Installierte Größe: 30 Betreuer: Ubuntu-Entwickler Original-Betreuer: Ruben Molina Architektur: alle Version: 1.10-40 Abhängig von: netcat-traditional (> = 1.10-39) Dateiname: pool / Dies ist ein "Dummy" -Paket ist abhängig von lenny Das ist Standardübergangspaket - TCP / IP Schweizer Taschenmesser: universe / n / netcat / netcat_1.10-40_all.deb Größe: 3340 MD5sum: 37c303f02b260481fa4fc9fb8b2c1004 SHA1: 0371a3950d6967480985aa014fbb6fb898bcea3a SHA256: eeecb4c93f03f455d2c3f57b0a1e83b54dbeced0918ae563784e86a37bcc16c9 Beschreibung-in Version von netcat, um Upgrades zu vereinfachen. Es kann sicher entfernt werden. Description-md5: 1353f8c1d079348417c2180319bdde09 Fehler: https://bugs.launchpad.net/ubuntu/+filebug Herkunft: Ubuntu

Überprüfen Sie die erforderlichen Abhängigkeiten für Pakete


In diesem Fall verwenden wir showpkg und es werden alle Abhängigkeiten aufgelistet, die für die korrekte Funktion erforderlich sind, unabhängig davon, ob sie installiert sind oder nicht.
 apt-cache showpkg vsftpd
 Paket: vsftpd Versionen: 2.3.5-3ubuntu1 (/var/lib/apt/lists/in.archive.ubuntu.com_ubuntu_dists_quantal_main_binary-i386_Packages) Beschreibungssprache: Datei: /var/lib/apt/lists/in.archive.ubuntu. com_ubuntu_dists_quantal_main_binary-i386_Packages MD5: 81386f72ac91a5ea48f8db0b023f3f9b Beschreibung Sprache: de Datei: /var/lib/apt/lists/in.archive.ubuntu.com_ubuntu_dists_quantal_main_i18n_Translation-en MD5: 81386f72ac91a5ea48f8db0b023f3f9b Reverse-Depends: ubumirror, vsftpd verhärten-Server vsftpd Abhängigkeiten: 2.3.5- 3ubuntu1 - debconf (18 0.5) debconf-2.0 (0 (null)) upstart-job (0 (null)) libc6 (2 2.15) libcap2 (2 2.10) libpam0g (2 0.99.7.1) libssl1.0.0 (2 1.0.0 ) libwrap0 (2 7.6-4 ~) adduser (0 (null)) libpam-modules (0 (null)) netbase (0 (null)) logrotate (0 (null)) ftp-server (0 (null)) ftp- server (0 (null)) Bietet: 2.3.5-3ubuntu1 - ftp-server
Im Abschnitt Abhängigkeiten werden sie aufgelistet, falls sie vorhanden sind, wird uns die Version mitgeteilt, andernfalls wird null angezeigt.

Cache-Statistiken prüfen


Wir wissen, dass der Befehl apt-cache von dem Cache abhängt, den wir geladen haben. Es ist nützlich zu wissen, was wir in unserem Cache haben, für den wir Statistiken verwenden.
 apt-Cache-Statistiken
 Gesamtpaketnamen: 51868 (1.037.000) Gesamtpaketstrukturen: 51868 (2.490.000) Normale Pakete: 39505 Reine virtuelle Pakete: 602 Einzelne virtuelle Pakete: 3819 Gemischte virtuelle Pakete: 1052 Fehlen: 6890 Gesamte verschiedene Versionen: 43015 (2.753.000) Gesamt eindeutige Beschreibungen: 81048 (1.945 k) Abhängigkeiten insgesamt: 252299 (7.064 k) View/Datei-Beziehungen insgesamt: 45567 (729 k) Beschreibung/Datei-Beziehungen insgesamt: 81048 (1.297 k) Gesamte Mappings: 8228 (165 k) Globbed Strings insgesamt : 286 (3.518) Gesamter Speicherplatz für Abhängigkeitsversionen: 1.145 k Gesamter Slack-Speicher: 62,6 k Gesamter berücksichtigter Speicherplatz: 13,3 M
Wir sehen den belegten Platz und die Anzahl der verfügbaren Pakete gefiltert nach voll oder gemischt.

Paketsystem aktualisieren


Durch die Verwendung von update synchronisieren wir unsere Paketliste mit denen des offiziellen Repositorys, damit wir, wenn eine neue Version von ssh verfügbar ist, diese aktualisieren können.
 sudo apt-get update
 Ign http://security.ubuntu.com quantal-security InRelease Abrufen: 1 http://security.ubuntu.com quantal-security Release.gpg [933 B] Abrufen: 2 http://security.ubuntu.com quantal- Security Release [49,6 kB] Ign http://in.archive.ubuntu.com quantal InRelease Ign http://in.archive.ubuntu.com Quantal-Updates InRelease Get: 3 http://repo.varnish-cache.org präzise InRelease [13,7 kB] Ign http://in.archive.ubuntu.com quantal-backports InRelease Hit http://in.archive.ubuntu.com quantal Release.gpg Get: 4 http://security.ubuntu.com quantal-security / Hauptquellen [34.8 kB] Get: 5 http://in.archive.ubuntu.com quantal-updates Release.gpg [933 B] 

Aktualisieren Sie das Betriebssystem mit der neuesten Version der Pakete.


WENN wir mit apt-update die Liste der verfügbaren Pakete mit apt-get upgrade aktualisieren, installieren wir alle Updates, die für das System verfügbar sind.
 apt-get-Upgrade
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig Die folgenden Pakete wurden zurückgehalten: linux-headers-generic linux-image-generic wine1.5 wine1.5-i386 Die folgenden Pakete werden aktualisiert: Activity-log- manager-common activity-log-manager-control-center adium-theme-ubuntu alacarte alsa-base app-install-data-partner appmenu-gtk appmenu-gtk3 apport apport-gtk apt apt-transport-https apt-utils aptdaemon aptdaemon- data at-spi2-core bamfdaemon base-files bind9-host … 
Es wird empfohlen, die beiden Befehle zusammen zu verwenden. Wir aktualisieren die Liste und die Pakete mit
 sudo apt-get update && sudo apt-get upgrade

Aktualisieren Sie das System und installieren Sie bei Bedarf neue Pakete.


Wenn wir upgrade verwenden, werden die neuen Versionen der Pakete und deren Abhängigkeiten installiert, in einigen Fällen wird ein Paket, das eine neue Abhängigkeit erfordert, nicht installiert. In diesem Fall verwenden wir dist-upgrade, um ggf. neue Abhängigkeiten zu aktualisieren und zu installieren, z Gehen Sie in einer Produktionsumgebung mit dieser Option vorsichtig um.
 sudo apt-get dist-upgrade

Wie installiere oder aktualisiere ich ein bestimmtes Paket?


Damit vermeiden wir die Aktualisierung des gesamten Systems und sparen etwas Bandbreite, wenn wir nur ein einzelnes Paket installieren möchten.
 sudo apt-get install netcat
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig Die folgenden zusätzlichen Pakete werden installiert: netcat-traditional Die folgenden NEUEN Pakete werden installiert: netcat netcat-traditional 0 aktualisiert, 2 neu installiert, 0 zum Entfernen und 328 nicht aktualisiert . Benötigen Sie 67,1 KB an Archiven. Nach diesem Vorgang werden 186 KB zusätzlicher Festplattenspeicher verwendet. Möchten Sie fortfahren [J / n]? y Abrufen: 1 http://in.archive.ubuntu.com/ubuntu/ quantal / universe netcat-traditional i386 1.10-40 [63.8 kB] Abrufen: 2 http://in.archive.ubuntu.com/ubuntu/ quantal /universum netcat alle 1.10-40 [3.340 B] 67,1 kB in 1s geholt (37,5 kB / s) Auswahl des zuvor nicht ausgewählten Pakets netcat-traditional. (Lesen der Datenbank… 216118 Dateien und Verzeichnisse, die derzeit installiert sind.) Entpacken von netcat-traditional (von… /netcat-traditional_1.10-40_i386.deb)… Auswählen des zuvor nicht ausgewählten Pakets netcat. Netcat entpacken (von… /netcat_1.10-40_all.deb)… Trigger für man-db verarbeiten… Netcat-traditional (1.10-40) einrichten… Netcat einrichten (1.10-40)… 

Installieren Sie mehrere Pakete gleichzeitig


Wir müssen weiterhin apt-get install verwenden, aber die zu installierenden Pakete als Argument verwenden.
 sudo apt-get install nethogs goaccess
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Zustandsinformationen lesen… Fertig goaccess ist bereits die neueste Version. nethogs ist bereits die neueste Version. 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 328 nicht aktualisiert.

Pakete mit Wildcard installieren


Mit regulären Ausdrücken können wir mehrere Pakete installieren, die das gleiche Wort enthalten, zum Beispiel * ssh * Client, Server und Add-Ons installieren.
 sudo apt-get install '*ssh*' 

Pakete ohne Aktualisierung installieren.


Mit der Option -no-upgrade installieren wir die Basisversion des Pakets, aber nicht das Update.
 sudo apt-get install packageName --no-upgrade
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig vsftpd wird übersprungen, es ist bereits installiert und das Upgrade ist nicht eingestellt. 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 328 nicht aktualisiert. Aktualisieren Sie ein Paket nur, wenn es installiert ist. Wir verwenden -only-upgrade, um ein Paket nur zu aktualisieren, wenn es installiert ist, andernfalls wird es in Skripten nicht sehr nützlich installiert. sudo apt-get install packageName --only-upgrade Paketlisten werden gelesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig vsftpd ist bereits die neueste Version. 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 328 nicht aktualisiert. 

Aktualisieren Sie ein Paket nur, wenn es installiert ist.


Wir verwenden -only-upgrade, um ein Paket nur zu aktualisieren, wenn es installiert ist, andernfalls wird es in Skripten nicht sehr nützlich installiert.
 sudo apt-get install packageName --only-upgrade
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig vsftpd ist bereits die neueste Version. 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 328 nicht aktualisiert.

Spezifische Version eines Pakets installieren


Wir können sogar eine bestimmte Version eines Pakets installieren, dies ist beispielsweise bei Java oder NGINX gängige Praxis.
 sudo apt-get install vsftpd = 2.3.5-3ubuntu1
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig vsftpd ist bereits die neueste Version. 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 328 nicht aktualisiert. 

Löschen Sie ein Paket, ohne seine Konfiguration zu berühren


Wir können es eliminieren, aber alle seine Konfigurationsdateien behalten, falls wir es in Zukunft installieren müssen.
 sudo apt-get entfernen vsftpd
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig Die folgenden Pakete werden ENTFERNT: vsftpd 0 aktualisiert, 0 neu installiert, 1 zu entfernen und 328 nicht aktualisiert. Nach diesem Vorgang werden 364 kB Festplattenspeicher freigegeben. Möchten Sie fortfahren [J / n]? y (Lesen der Datenbank… 216156 Dateien und Verzeichnisse, die derzeit installiert sind.) Entfernen von vsftpd… vsftpd stoppen / warten Verarbeitung von Triggern für ureadahead… Verarbeitung von Triggern für man-db… 

Entfernen Sie ein Paket vollständig


Um ein Paket mit all seinen Dateien und Abhängigkeiten zu entfernen, verwenden wir die Purge-Option.
 sudo apt-get purge vsftpd
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig Die folgenden Pakete werden ENTFERNT: vsftpd * 0 aktualisiert, 0 neu installiert, 1 zu entfernen und 328 nicht aktualisiert. Nach diesem Vorgang werden 0 B zusätzlicher Speicherplatz verwendet. Möchten Sie fortfahren [J / n]? y (Lesen der Datenbank… 216107 Dateien und Verzeichnisse, die derzeit installiert sind.) Entfernen von vsftpd… Löschen der Konfigurationsdateien für vsftpd… Verarbeiten von Triggern für ureadahead… 
Wir können es mit Remove kombinieren. Empfehlen Sie diese Option immer zur Reinigung.
 sudo apt-get remove --purge vsftpd
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig Die folgenden Pakete werden ENTFERNT: vsftpd * 0 aktualisiert, 0 neu installiert, 1 zu entfernen und 328 nicht aktualisiert. Nach diesem Vorgang werden 364 kB Festplattenspeicher freigegeben. Möchten Sie fortfahren [J / n]? y (Lesen der Datenbank… 216156 Dateien und Verzeichnisse, die derzeit installiert sind.) Entfernen von vsftpd… vsftpd stoppen / warten Bereinigen der Konfigurationsdateien für vsftpd… Verarbeitung von Triggern für ureadahead… Verarbeitung von Triggern für man-db… 

Bereinigen Sie den Paketmanager, um Speicherplatz freizugeben


Wenn wir ein Paket herunterladen, wird die .deb-Datei als Cache gespeichert, wir können alle diese Pakete mit der Option clean entfernen.
 sudo apt - sauber machen

Wie lade ich den Quellcode eines Pakets herunter?


In einigen Fällen können wir nicht von deb installieren und müssen es durch direktes Kompilieren installieren
 sudo apt-get --download-only source vsftpd
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig 220 KB Quellarchive müssen abgerufen werden. Abrufen: 1 http://in.archive.ubuntu.com/ubuntu/ quantal / main vsftpd 2.3.5-3ubuntu1 (dsc) [1.883 B] Abrufen: 2 http://in.archive.ubuntu.com/ubuntu/ quantal / main vsftpd 2.3.5-3ubuntu1 (tar) [188 kB] Get: 3 http://in.archive.ubuntu.com/ubuntu/ quantal / main vsftpd 2.3.5-3ubuntu1 (diff) [30.5 kB] Abgeholt 220 kB in 4s (49,1 kB / s) Download vollständig und nur im Download-Modus
Falls wir von demselben apt-get herunterladen und kompilieren möchten, das wir verwenden
 sudo apt-get --compile source goaccess
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Zustandsinformationen lesen… Fertig 130 KB Quellarchive werden benötigt. Abrufen: 1 http://in.archive.ubuntu.com/ubuntu/ quantal / universe goaccess 1: 0.5-1 (dsc) [1,120 B] Abrufen: 2 http://in.archive.ubuntu.com/ubuntu/ quantal / universe goaccess 1: 0.5-1 (tar) [127 kB] Get: 3 http://in.archive.ubuntu.com/ubuntu/ quantal / universe goaccess 1: 0.5-1 (diff) [2.075 B] Abgeholt 130 kB in 1s (68,0 kB / s) gpgv: Signatur erstellt Dienstag, 26. Juni 2012 09:38:24 IST mit DSA-Schlüssel-ID A9FD4821 gpgv: Signatur kann nicht überprüft werden: öffentlicher Schlüssel nicht gefunden dpkg-Quelle: Warnung: fehlgeschlagen Signatur auf ./goaccess_0.5-1.dsc überprüfen dpkg-source: info: goaccess in goaccess-0.5 extrahieren dpkg-source: info: goaccess_0.5.orig.tar.gz entpacken dpkg-source: info: goaccess_0.5 entpacken -1.debian.tar.gz dpkg-buildpackage: Quellpaket goaccess dpkg-buildpackage: Quellversion 1: 0.5-1 dpkg-buildpackage: Quellcode geändert von Chris Taylor dpkg-buildpackage: Hostarchitektur i386 dpkg-source --before-build goaccess-0.5 dpkg-checkbuilddeps: Unerfüllte Build-Abhängigkeiten: debhelper (> = 9) autotools-dev libncurses5-dev lib glib2.0-dev libgeoip-dev autoconf dpkg-buildpackage: Warnung: Build-Abhängigkeiten / Konflikte unbefriedigt; dpkg-buildpackage wird abgebrochen: Warnung: (Verwenden Sie das Flag -d zum Überschreiben.)… 

Wie kann ich ein Paket herunterladen, ohne es zu installieren?


Oft möchten wir ein lokales REPO einrichten, um sie lokal an andere Clients zu verteilen und Bandbreite zu sparen. Diese Option ist sehr nützlich.
 sudo apt-get download nethogs
 Get: 1 Nethogs 0.8.0-1 herunterladen [27,1 kB] 27,1 kB in 3s abgerufen (7.506 B/s)

Wie überprüft man defekte Abhängigkeiten?


Dieser Befehl ist sehr nützlich, wenn wir kompilieren müssen, aber uns die Bibliotheken fehlen, damit wir die fehlenden überprüfen und installieren können.
 sudo apt-get check
 Paketlisten lesen… Fertig Abhängigkeitsbaum erstellen Statusinformationen lesen… Fertig 
Schlussfolgerungen
Wir haben über die nützlichsten Optionen mit apt-get und apt-cache gesprochen, einige fehlen, die man mit man apt-get, man apt-cache sehen kann. Es ist nicht notwendig, sie auswendig zu lernen, aber es ist gut, diese Liste zur Hand zu haben. Wenn ich einen Befehl auslasse oder Sie einen Vorschlag haben, zögern Sie nicht, ihn in den Kommentaren zu hinterlassen.Hat dir dieses Tutorial gefallen und geholfen?Sie können den Autor belohnen, indem Sie diesen Knopf drücken, um ihm einen positiven Punkt zu geben
wave wave wave wave wave