Wie kann ich dann Installationspakete herunterladen?


10

Ich weiß, dass ich bei der RedHat-Distribution (korrigieren Sie mich, wenn ich mich irre) Folgendes verwenden kann:

yumdownloader package_name #simply downloads a copy of the package without installing it
yum install package_name #installs the specific package that has to be downloaded in prior

Gibt es ein genaues Äquivalent in Ubuntu (das beide Operationen separat ausführt) oder führt der folgende Befehl beides aus (Download + Installation):

apt-get install package_name

Vielen Dank für Ihre Hilfe, es wird sehr geschätzt und ich entschuldige mich, wenn diese Frage woanders gestellt werden soll. Ich dachte nur, dass dies der richtige Ort ist.

Antworten:


6

Verwenden Sie die downloadFunktion von apt-get.

Von man apt-get:

download
    download will download the given binary package into the current directory.

Zum Beispiel:

apt-get download chromium-browser

lädt die debDatei des Chrom-Browsers in das aktuelle Verzeichnis herunter . Beachten Sie, dass dadurch keine der Abhängigkeiten des Pakets heruntergeladen wird. Wenn Sie also versuchen, Folgendes zu installieren .deb:

sudo dpkg -i path/to/downloaded/deb/file

Sie erhalten Abhängigkeitsfehler.

apt-get install packageNameführt beide (Download + Installation) Jobs aus. Die heruntergeladenen Pakete befinden sich im /var/cache/apt/archivesOrdner


Zuallererst erfordert Ihre Antwort, dass alle Abhängigkeiten auch manuell heruntergeladen werden. Zweitens mag ich diesen Ansatz nicht, weil dpkg nicht so klug ist wie apt. Wenn Sie beispielsweise ein Paket und seine Abhängigkeiten herunterladen, müssen Sie dpkg alle Pakete zur Verfügung stellen, und die Paketverwaltung markiert die Abhängigkeiten als manuell installiert. Wenn Sie sie mit apt installiert hätten, würden sie als automatisch installiert markiert. Dies hilft beim späteren Entfernen mit apt-get autoremove(und aptitude).
Gertvdijk

(Fortsetzung) Ich habe -1 Ihre Antwort hauptsächlich, weil die Frage den Fall betrifft, in dem der Benutzer sie herunterladen UND installieren möchte. Ein apt-get downloadBefehl ist meiner Meinung nach nur dann nützlich, wenn Sie ihn später nicht installieren oder die Datei als Nicht-Root-Benutzer überprüfen müssen. Daher die Gründe in meinem obigen Kommentar. Sehen Sie meine eigene Antwort für das, was meiner Meinung nach besser zu dieser Frage passt.
Gertvdijk

@gertvdijk FYI, dies war eine direkte Antwort auf die Frage, da das OP nichts über Abhängigkeiten erwähnte. AFAIK apt-get downloadist das genaue Äquivalent von yumdownloader(da sie keine Abhängigkeiten herunterladen). Die Frage war nicht nach der besten Art der Installation. In diesem Fall ist Ihre besser.
Ron

8

Fügen Sie einfach die Option -d(oder --download) zu einem beliebigen apt-getBefehl hinzu. Dieser Ansatz ist einfach und effektiv.

  • Mach dir keine Sorgen über Abhängigkeiten, sie werden auch heruntergeladen.
  • Die Sicherheit bleibt erhalten, alle Integritätsprüfungen werden wie bei einer regulären Installation durchgeführt.

Z.B:

$ sudo apt-get dist-upgrade -d
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
  linux-headers-3.19.0-39 linux-headers-3.19.0-39-generic linux-image-3.19.0-39-generic linux-image-extra-3.19.0-39-generic
  linux-signed-image-3.19.0-39-generic
The following packages will be upgraded:
  keepassx linux-headers-generic linux-libc-dev linux-signed-generic linux-signed-image-generic
5 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 67,0 MB of archives.
After this operation, 289 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
Get:1 http://nl.archive.ubuntu.com/ubuntu/ vivid-updates/main linux-image-3.19.0-39-generic amd64 3.19.0-39.44 [16,9 MB]
[...]
Fetched 67,0 MB in 4s (13,5 MB/s)       
Download complete and in download only mode

Zu einem späteren Zeitpunkt, wenn Sie offline sind, können Sie sudo apt-get dist-upgradedie Installation abschließen. (Beachten Sie die Notwendigkeit, 0 B / 67,0 MB Archive zu erhalten. )

$ sudo apt-get dist-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
  linux-headers-3.19.0-39 linux-headers-3.19.0-39-generic linux-image-3.19.0-39-generic linux-image-extra-3.19.0-39-generic
  linux-signed-image-3.19.0-39-generic
The following packages will be upgraded:
  keepassx linux-headers-generic linux-libc-dev linux-signed-generic linux-signed-image-generic
5 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/67,0 MB of archives.
After this operation, 289 MB of additional disk space will be used.
Do you want to continue? [Y/n]

Es funktioniert auch mit installoder anderen Befehlen:

$ sudo apt-get install -d libpcap-dev 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libpcap0.8-dev
The following NEW packages will be installed:
  libpcap-dev libpcap0.8-dev
0 upgraded, 2 newly installed, 0 to remove and 5 not upgraded.
Need to get 214 kB of archives.
After this operation, 749 kB of additional disk space will be used.
Do you want to continue? [J/n] 
Get:1 http://nl.archive.ubuntu.com/ubuntu/ vivid/main libpcap0.8-dev amd64 1.6.2-2 [210 kB]
Get:2 http://nl.archive.ubuntu.com/ubuntu/ vivid/main libpcap-dev all 1.6.2-2 [3448 B]
Fetched 214 kB in 0s (1776 kB/s)     
Download complete and in download only mode

So löschen Sie den Cache (gespeichert in /var/cache/apt/archives):

sudo apt-get clean
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.