it-swarm.com.de

Wie kann ich Software oder Pakete ohne Internet installieren (offline)?

Ich habe einen Freund, der einen Computer hat, der nicht mit dem Internet verbunden ist. Gibt es eine Möglichkeit, Software einfach offline zu installieren?

256
akshatj

Check out Keryx ; Es ist ein Offline-Repository-Manager.

Wie funktioniert es? Sie können Updates und neue Programme (mit Abhängigkeiten) auf Ihr Flash-Laufwerk herunterladen .

Die Benutzeroberfläche ähnelt der von synaptic, funktioniert jedoch von einem Pendrive (Installation nicht erforderlich). Leider benötigt die GUI wxwidgets, die nicht auf Ubuntu vorinstalliert sind (sie sind plattformübergreifend und können von hier und dem Ubuntu-Repository hier installiert werden). Es kann nur Software auf einem Ubuntu-System installiert werden, aber Sie können die Updates oder neuen Pakete in jedem Linux, Windows oder OS X herunterladen.

Hier finden Sie ein Tutorial .

Eine weitere detaillierte schrittweise Anleitung finden Sie in diese Antwort .

Launchpad hostet auch herunterladbare Dateien .

Ein Screenshot:

Screenshoot

129
Javier Rivera

Ein schneller Hack

Ein schneller Hack besteht darin, alle Pakete, die Sie für Ihre Installation heruntergeladen haben, auf seinen Computer zu kopieren ( detaillierte Anweisungen hier ). Die .deb-Dateien werden in /var/cache/apt/archives gespeichert, dann in den anderen Computer starten Synaptic und File -> Add Package Downloaded auswählen und den Ordner durchsuchen Sie legen die Dateien ab und öffnen sie, akzeptieren alle (oder installieren sie vom Terminal mit dem Befehl Sudo dpkg -i DEB_PACKAGE_NAME).

HINWEIS:
Dies setzt voraus, dass Ihr Paketmanager nicht so eingerichtet ist, dass die Pakete direkt nach der Installation gelöscht werden. Es wird auch davon ausgegangen, dass Sie die gleiche Version von Ubuntu (10.10, 12.04 usw.) und Architekturversion (32b oder 64b) verwenden. ).


Ein DVD-Repository

Wenn Sie die neuesten Fehlerbehebungen und Sicherheitspatches erhalten möchten, schauen Sie sich dieses Tutorial an, das das Erstellen Ihres eigenen DVD-Repositorys behandelt.

57
jr0cket

Ein USB-Repository

Wenn Sie einen USB-Stick mit einer anständigen Größe haben - etwa 4-8 GB (oder eine externe Festplatte) -, können Sie eine benutzerdefinierte Kopie des Ubuntu-Repository einrichten und diese als lokales Repository konfigurieren, wie in AptGet/Offline/Repository) beschrieben auf help.ubuntu.com.

Um die eigentlichen Paketdateien (die .deb-Dateien) zu erhalten, empfehle ich die Verwendung von apt-mirror.

Mit dem Paket apt-mirror können Sie einen benutzerdefinierten Spiegel erstellen, der kleiner als die 30 GB des vollständigen Repository sein sollte. Installieren Sie das Paket:

Sudo apt-get install apt-mirror

und bearbeiten Sie die Konfigurationsdatei

gksudo gedit /etc/apt-mirror/mirror.list

oder seit Ubuntu 14.04

gksudo gedit /etc/apt/mirror.list

Schließen Sie nur die gewünschten Repository-Abschnitte ein. Hier ist ein einfaches Beispiel, das die binären .deb-Dateien aus allen vier Abschnitten (main, restricted, universe und multiverse) sowie die neuesten Fehlerbehebungen kopiert.

# apt-mirror configuration file
##
## The default configuration options (uncomment and change to override)
##
#
set base_path    /tmp/ubuntumirror
#

## Repositories to copy from - 

## use a mirror so you don't overload the main server!!!

# Lucid binaries - no source files
deb http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse


## Clean up older .deb files no longer in the archive
clean http://archive.ubuntu.com/ubuntu

Es wird davon ausgegangen, dass Sie für alle vier Abschnitte ohne die Quelle etwa 15 GB Speicherplatz benötigen.

Ich habe den Pfad für alle .deb-Dateien auf /tmp gesetzt. Stellen Sie sicher, dass Sie über genügend Speicherplatz verfügen, damit Ihre Festplatte nicht voll wird (wenn Ihre Festplatte voll wird und Ihr Computer einfriert, /tmp sollte mit einem Neustart gelöscht werden).

Wenn Sie nur die Hauptdateien benötigen, entfernen Sie die eingeschränkten Namen, die Universumsnamen und die Multiversumsnamen aus der Konfigurationsdatei.

Wenn Sie eine andere Architektur verwenden (Sie haben 64-Bit, aber Ihr Freund hat 32-Bit), fügen Sie am Anfang der mirror.list -Konfiguration Folgendes hinzu Datei:

set defaultarch i386

Sobald Sie die apt-mirror -Konfiguration haben, die Sie möchten, führen Sie apt-mirror aus und führen Sie eine unterhaltsame oder lebensverändernde Aktion aus, da der Abruf des Repositorys Stunden oder Tage in Anspruch nimmt (abhängig von Ihrer Verbindung und dem von Ihnen verwendeten Ubuntu-Spiegel) ).

Sobald Sie die .deb-Dateien haben, kopieren Sie die Dateien auf Ihren USB-Speicherstick (oder eine externe Festplatte) und richten Sie das lokale Repository gemäß dem zuvor erwähnten Artikel ein.

Testen Sie es, bevor Sie es Ihrem Freund bringen!

42
jr0cket

Ich benutze dazu apt-get mit der Option "--print-uris". Ich füge auch "-qq" hinzu, damit es ruhig wird.

Verwenden Sie sed, um zusätzliche Zeichen zu entfernen, die einigen Dateinamen hinzugefügt wurden (etwa 3% 2a), und um die URL, den Dateinamen und die MD5-Summe der Dateien abzurufen. Benutze wget um die Dateien herunterzuladen. Verwenden Sie md5sum, um zu überprüfen, ob die Dateien ordnungsgemäß heruntergeladen wurden.

Sie können dies verwenden, um ein Shell-Skript für Linux oder Mac OS zu erstellen (ersetzen Sie ".cmd" in den Befehlen für .sh und führen Sie "chmod a + x (Dateiname)" aus, um die Berechtigung zum Ausführen des Skripts hinzuzufügen) oder eine Windows-Befehls-Batchdatei und eine MD5Sum-Datei, um sicherzustellen, dass die Dateien korrekt heruntergeladen wurden.

Befehle

Skript erstellen:

Sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > script.cmd

Beispiele:

Sudo apt-get install anjuta --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install-anjuta.cmd
Sudo apt-get upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > upgrade.cmd
Sudo apt-get dist-upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > dist-upgrade.cmd

Erstelle md5sum Datei:

Sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

Beispiele:

Sudo apt-get install anjuta --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
Sudo apt-get upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
Sudo apt-get dist-upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

Sie benötigen md5sum für Windows, wenn Sie dieses Betriebssystem zum Herunterladen von Dateien verwenden.


Skript zum Herunterladen von Repository-Listen erstellen:

Sudo apt-get update --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) :/wget -c \1 -O \2.bz2/p" > update.cmd

MD5-Summen überprüfen

Sie können diese an die Enden der Skripte anfügen, um md5sum zu überprüfen:

Linux:

md5sum --quiet -c md5sum.txt

Windows (verwendet ältere md5sum, unterstützt --quiet nicht):

md5sum -c md5sum.txt

So fügen Sie das Skript automatisch hinzu:

echo -e "md5sum -c md5sum.txt\npause" >> script.cmd

Listendateien installieren (Update-Befehl)

Führen Sie diese Befehle auf dem Zielcomputer aus.

Sie müssen bunzip2 verwenden, um die Repository-Listendateien zu extrahieren:

bunzip2 *.bz2

Anschließend in den Listenordner kopieren (der aktuelle Ordner enthält nur Listendateien):

Sudo cp * /var/lib/apt/lists/

Oben kombiniert (der aktuelle Ordner kann andere Dateien enthalten):

for listfile in `ls *.bz2`; do bunzip2 $listfile; Sudo cp ${listfile%.bz2} /var/lib/apt/lists/; done

Schnellere Downloads

Wenn Sie das Herunterladen der Dateien beschleunigen möchten, verwenden Sie Axel.

Ersetzen Sie wget -c ... -O ... durch axel ... -o ....

Ordnerhierarchie (Herunterladen von Dateien unter Windows)

Normalerweise erstelle ich einen Ordner wie diesen:

  • apt-get /
    • behälter/
      • msys-1.0.dll
      • msys-intl-8.dll
      • wget.exe
      • msys-iconv-2.dll
      • md5sum.exe
      • libeay32.dll
      • libintl3.dll
      • libssl32.dll
      • libiconv2.dll
    • aktualisieren/
      • update.cmd
      • md5sum.txt
    • installieren/
      • install-foo.cmd
      • install-bar.cmd
      • upgrade.cmd
      • md5sum.txt

Ändern Sie dann wget in den obigen Zeilen in ..\\bin\\wget.exe, md5sum in ..\\bin\\md5sum.exe usw.

Dadurch werden die * .deb-Dateien und die Listendateien in verschiedene Ordner aufgeteilt.

Aktualisieren Sie Ihr System

  1. Booten Sie auf einem Zielcomputer, der Ubuntu verwendet
  2. Erstellen Sie ein Skript für die Aktualisierung
  3. Starten Sie einen Computer mit einer Internetverbindung
  4. Führen Sie update.sh (für Linux oder Mac OS) oder update.cmd (Windows) aus.
  5. Gehen Sie zurück zum Zielcomputer
  6. Installieren Sie Listendateien
  7. Erstellen Sie ein Skript für das Upgrade/Dist-Upgrade (fügen Sie md5sum-Befehle zum Beenden hinzu)
  8. Kehren Sie zum Computer mit Internetverbindung zurück
  9. Führen Sie upgrade.sh/dist-upgrade.sh (Linux oder Mac OS) oder upgrade.cmd/dist-upgrade.cmd (Windows) aus.
  10. Gehen Sie zurück zum Zielcomputer
  11. Kopieren Sie * .deb-Dateien in den Cache: Sudo cp *.deb /var/cache/apt/archives/
  12. Führen Sie Folgendes aus: Sudo apt-get upgrade oder Sudo apt-get dist-upgrade

Laden Sie Executables für Windows herunter

Wget für Windows: http://gnuwin32.sourceforge.net/packages/wget.htm

md5sum für Windows: http://gnuwin32.sourceforge.net/packages/coreutils.htm oder http://www.etree.org/cgi-bin/counter.cgi/software /md5sum.exe

Sie können auch die von MinGW verwenden, die ich verwende. Sie benötigen nur wget.exe, md5sum.exe und die erforderlichen gemeinsam genutzten Bibliotheken. Überprüfen Sie den Abschnitt "Ordnerhierarchie".

Anmerkungen

  • Ich bin mir nicht ganz sicher, ob alle oben genannten Befehle funktionieren, da ich sie seit einem Monat nicht mehr verwendet habe. Vor allem der Update-Befehl, den ich heute teilweise noch nicht ausprobiert habe.
  • Fügen Sie am Ende der Skripte eine "Pause" -Zeile ein, wenn Sie Windows verwenden, um die Ergebnisse der Befehle einfach anzuzeigen.
  • Ich empfehle, Shell-Skripte zu erstellen, um Pakete zu aktualisieren, zu aktualisieren und zu installieren, wenn Sie diese Befehle häufig verwenden.
32
Arnel A. Borja

Sie benötigen zunächst einen PC mit Internetverbindung, auf den Sie die erforderlichen .deb-Dateien herunterladen können. Nachdem Sie alle Dateien heruntergeladen haben, können Sie jetzt eine CD/DVD-ROM- oder ISO-Datei erstellen, mit der Sie die heruntergeladene Software auf Ihrem Offline-PC installieren können.

Beginnen Sie mit einer Neuinstallation oder einer virtuellen Maschine.
Sudo apt-get install aptoncd

Installieren Sie die gewünschten Pakete auf einem PC
Sudo apt-get install gbrainy

Führen Sie aptoncd aus
enter image description here
Klicken Sie auf Erstellen
enter image description here
Klicken Sie auf Brennen und legen Sie die Optionen fest, und klicken Sie dann auf Übernehmen
enter image description here
Verbrenne es oder speichere es
enter image description here

Beachten Sie, dass aptoncd nur die Daten im aktuellen apt-Cache sichert.
Aus diesem Grund haben wir mit einer sauberen VM/Neuinstallation begonnen und dies alles in einem Durchgang durchgeführt.

29
RobotHumans

Offline-Repository

Wie Sie ein Offline-Repository erstellen, wird beschrieben hier : Sie müssen nur die entsprechenden Dateien von archive.ubuntu.com herunterladen. Alternativ können Sie apt-medium verwenden.

BEARBEITEN: Ein anderer Ansatz, der auf einem lokalen Archiv von _*.deb_ -Dateien basiert, wird in verschiedenen Blogeinträgen beschrieben (siehe hier und hier ). Sarath Chandra fasst Folgendes zusammen:

  1. Mache ein Verzeichnis zugänglich (zumindest von root)

    _Sudo mkdir /var/my-local-repo
    _
  2. Kopieren Sie alle deb-Dateien in dieses Verzeichnis.

  3. Machen Sie das Verzeichnis als

    _Sudo bash -c 'dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz'
    _

    oder

    _Sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
    _
  4. Fügen Sie den Quellen das lokale Repo hinzu

    _echo "deb file:/var/my-local-repo ./" > /tmp/my-local.list
    Sudo mv /tmp/my-local.list /etc/apt/sources.list.d/my-local.list
    Sudo apt-get update
    _
22
tohuwawohu

Schritt 1: Laden Sie die Download-URLs in eine Datei:

Führen Sie den folgenden Befehl aus, indem Sie die Paketnamen durch die erforderlichen ersetzen und durch ein Leerzeichen trennen.

apt-get -y install --print-uris package-name | cut -d\' -f2 | grep http:// > apturls

Schritt 2: Kopieren Sie diese Datei (apturls) auf einen Computer mit Hochgeschwindigkeits-Internetzugang und führen Sie den folgenden Befehl aus, um die Pakete herunterzuladen:

wget -i path-to-apturls-file 

Schritt 3: Laden Sie nun die heruntergeladenen Pakete auf Ihren Computer und installieren Sie sie mit:

cd path-to-the-downloaded-packages-directory

Sudo dpkg -i *.deb

Getan!

20
harisibrahimkv

Sie können Cube verwenden. Es ist ein portabler Paketmanager, mit dem Sie Pakete auf einen anderen mit dem Internet verbundenen Computer herunterladen und offline auf Ihrem ursprünglichen Linux-Computer installieren können.

Herunterladen von Apps (unter Windows)  

Apps installieren (unter Linux)  

Sie können es auf der Website von Cube herunterladen.

19
Camicri

In synaptic können Sie die Pakete auswählen, die Sie installieren möchten. Im ersten Menü können Sie ein Skript generieren, das Sie auf einen anderen Computer übertragen und dort ausführen können. Dieses Skript "wget" (d. H. "Download") alle von Ihnen angegebenen Pakete (und deren Abhängigkeiten), die Sie auf einem Computer ausführen, der hat Internetzugang hat.

Einmal ausgeführt, haben Sie alle Paketdateien, die der nicht verbundene Computer benötigt. Tragen Sie sie auf einem CD/USB-Stick und installieren Sie sie mit Sudo dpkg -i *.deb.

17
popey

Sie können apt-offline oder apt-offline-gui verwenden.
Voraussetzungen : System eines Freundes mit Internetverbindung. apt-offline ist auf beiden Systemen installiert.

Die Offline-Installation erfolgt in 3 einfachen Schritten.

Schritt 1 :
Generieren Sie eine Signaturdatei auf der Disconnected Debian-Box zu Hause
apt-offline set /tmp/apt-offline.sig
Der obige Befehl generiert alle Informationen, die von apt zum Aktualisieren der Datenbank benötigt werden.

Schritt 2 :
Laden Sie Daten basierend auf der zuvor generierten Signaturdatei herunter
apt-offline get C:\apt-offline.sig --threads 5
Mit dem obigen Befehl werden die in der Signaturdatei angegebenen Daten heruntergeladen. In diesem Beispiel werden 5 Download-Threads erstellt, um das Herunterladen zu beschleunigen (dies kann aus mehreren apt-Repositorys stammen).
Wenn Sie fertig sind, können Sie die Daten (eine Archivdatei, wenn Sie die Option --bundle verwendet haben) einfach zurück auf das Wechselmedium kopieren und auf Ihren Offline-Host kopieren.

Schritt 3 :
Sobald Sie wieder auf dem Debian-Heimcomputer sind, geben Sie die Daten vom Wechseldatenträger an apt-offline weiter:
apt-offline install /media/USB/apt-offline.Zip
Dadurch wird die Datenbank APT auf Ihrem nicht verbundenen Computer nahtlos aktualisiert.

Apt-offline kann sogar in Windows-Systemen verwendet werden. Meiner Meinung nach ist apt-offline die beste Option für die Offline-Installation.

Quelle

15
Hashken

Es gibt mehrere gute und effektive Antworten, die oben aufgeführt sind. Dies ist jedoch der Mechanismus, den ich persönlich benutze - apt-ftparchive . Ich dokumentiere es hier, falls ich es in Zukunft noch einmal brauche. Vielleicht könnte es Ihnen nützlich sein.

Erstellen des Archiv-Snapshots

  • Erstellen Sie eine Instanz von Ubuntu, die die Zielumgebung Genau nachahmt.
    • Zum Beispiel eine Ubuntu 12.04 64-Bit-Instanz in Amazon
  • Beginnen Sie mit einer sauberen Paketumgebung
    • Sudo apt-get clean
  • Aktualisieren Sie die Paketlisten
    • Sudo apt-get update
  • Laden Sie alle verfügbaren Paketaktualisierungen herunter
    • Sudo apt-get dist-upgrade --download-only
  • Laden Sie alle relevanten Pakete und Abhängigkeiten herunter
    • Sudo apt-get install --download-only byobu run-one bikeshed dotdee powernap
  • Installieren Sie das Dienstprogramm apt-ftparchive
    • Sudo apt-get install apt-utils
  • Erstellen Sie das Paketmanifest
    • (cd /var/cache/apt/archives/ && Sudo apt-ftparchive packages . ) | Sudo tee /var/cache/apt/archives/Packages
  • Erstellen Sie ein Archiv der Pakete
    • Sudo tar cvf snapshot.tar -C /var/cache/apt archives/

Verwenden des Archiv-Snapshots auf dem Offline-Zielsystem

  • Über einen Mechanismus müssen Sie die Datei snapshot.tar von der Quelle auf das Zielsystem übertragen. Vielleicht auf einem USB-Stick oder auf andere Weise.
  • Extrahieren Sie das Archiv auf dem Zielsystem (in diesem Fall in /home/ubuntu)
    • tar xvf snapshot.tar
  • Fügen Sie die lokale Offline-Quelle zu /etc/apt/sources.list[.____ hinzu.]
    • echo "deb file:/home/ubuntu/archives /" | Sudo tee -a /etc/apt/sources.list
  • Aktualisieren Sie die Paketliste
    • Sudo apt-get update
  • Installieren Sie die Pakete wie gewünscht
    • Sudo apt-get install byobu run-one bikeshed dotdee powernap
10
Dustin Kirkland

Für die Offline-Installation benötigen Sie die Pakete. Wenn Sie ein Debian-System verwenden

  • Holen Sie sich die Paketdatei mit der Dateierweiterung .deb und installieren Sie sie mit dpkg -i package_name
  • Holen Sie sich das Quell-Tarball mit der Dateierweiterung .tar.gz oder .tar.bz2, extrahieren Sie es und installieren Sie es mit:

    tar -zxvf your_pack.tar.gz` or tar `-jxvf your_pack.tar.bz2
    make
    Sudo make install
    make clean        (optional, and may prevent uninstallation)
    

Möglicherweise haben Sie Probleme mit Abhängigkeiten. Sie müssen alle zuerst installieren, damit die Offline-Installation erfolgreich ist.

4

Das erste, was Sie vor einer Offline-Paketinstallation tun können, ist, das Repository/die Repositorys zu aktualisieren, die Sie benötigen. Sie sollten auf jeden Fall das Haupt-Repository aktualisieren (für kostenlose und offiziell unterstützte Software).

Die Anwendungen, die Sie installieren möchten, befinden sich möglicherweise in anderen Repositorys wie dem Universum (kostenlos, aber ohne offiziellen Support) oder dem Eingeschränkt (nicht frei, offiziell unterstützt) oder das Multiversum (nicht frei, nein offizielle Unterstützung). Vielleicht möchten Sie auch eines oder mehrere davon.

Der erste Schritt in diesem Prozess ist das Erstellen eines aktualisierten Offline-Repositorys. Dann generiere die "to-download" -Liste und lade sie herunter, und schließlich die Installation. So wird's gemacht: Quelle

  1. Geben Sie die URL ein: http://archive.ubuntu.com/ubuntu/dists/ suiteCodename wobei suiteCodename sollte entsprechend untergeordnet sein, sagen Sie präzise für Ubuntu 12.04 (Precise Pangolin) [oder utopisch für Ubuntu 14.10 (Utopic Unicorn)], damit Sie es jetzt sind in http://archive.ubuntu.com/ubuntu/dists/precise/ oder einem anderen für Ihre Suite spezifischen Verzeichnis.

  2. Laden Sie die Dateien herunter Release , Release.gpg und die Datei Contents - ????. gz für Ihre Architektur (dh Contents-i386.gz , vorausgesetzt, Sie Architektur ist i386). Speichern Sie diese drei Dateien in einem Verzeichnis/Ordner mit dem Namen suiteCodename ( exact for Precise Pangolin).

  3. Als Nächstes müssen Sie für jedes Repository (zwischen Main, Universe, Restricted, Multiverse ) Folgendes ausführen.

    ein. Gehen Sie in das Ziel-Repository-Verzeichnis, z. main und dann zum Architekturverzeichnis, z. binary-i386 damit Sie sich in http://archive.ubuntu.com/ubuntu/dists/suiteCodename/repositoryName/binary-????/ befinden

    b. Laden Sie die Inhalte herunter Packages.bz2, Packages.gz, Release und speichern Sie sie in einem Verzeichnis, das nach dem Repository-Namen benannt ist, z. main und platzieren Sie dieses Verzeichnis im zuvor erstellten Verzeichnis suiteCodename .

    c. wiederhole a. und B. für jedes gewünschte Repository.

  4. Schließlich solltest du eine Struktur haben, die ungefähr so ​​aussieht:

     precise
     ├── Contents-i386.gz
     ├── main
     │   └── binary-i386
     │       ├── Packages.bz2
     │       ├── Packages.gz
     │       └── Release.txt
     ├── Release.gpg
     ├── Release.txt
     └── universe
         └── binary-i386
             ├── Packages.bz2
             ├── Packages.gz
             └── Release.txt
    

    (Unter der Annahme, dass Ihr suiteCodename = präzise ist, ist die Architektur i386 und Sie benötigen Haupt- und Universums-Repositorys.)

  5. Nachdem Sie die aktualisierten Repositorys heruntergeladen haben, platzieren Sie die heruntergeladenen Dateien in einer geeigneten Struktur (wie oben gezeigt) in einem Verzeichnis des Ziel-Offline-Computers. Speichern Sie die Verzeichnisstruktur precise in einem Ordner mit dem Namen offlineRepository/dists/precision in Ihrem Benutzerhaus (~/offlineRepository/dists/precise) oder an einer anderen Stelle (/home/offlineRepository/dists/precise mit Sudo-Berechtigungen in einem Terminal oder mit dem Nautilus-Dateimanager, der mit gksu nautilus gestartet wurde; stellen Sie außerdem sicher, dass Sie die richtigen Berechtigungen für die kopierte Struktur haben). Ihre Offline-Repository-Informationen wären dann einsatzbereit.

  6. Hinzufügen das lokale Repository in Ihrer Quellenliste . Gehen Sie mit Ubuntu Software Center zu Bearbeiten -> Softwarequellen ... -> Andere Software -> Hinzufügen ... und Fügen Sie dann im Feld für die Zeile APT Folgendes hinzu: deb file:///home/offlineRepository precise main universe und klicken Sie auf Add Source . Stellen Sie sicher, dass Sie die Zeile in Bezug auf Ihre Verzeichnis-/Dateistruktur und Suite ändern. Laden Sie dann die Pakete neu oder führen Sie Sudo apt-get update in einem Terminal aus. snap1

  7. Jetzt mit aktualisierten (und wahrscheinlich auch neu hinzugefügten) Repositorys können Sie die Liste der URLs für die Pakete und Abhängigkeiten sichern.

    Ich leihe mir die folgende Codezeile aus einem der vorherigen askUbuntu-Posts aus:

    Sudo apt-get install packageName --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    z.B. So installieren Sie Synaptic Package Manager:

    Sudo apt-get install synaptic --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    (Auf ähnliche Weise können Sie auch Updatelisten erstellen.)

    Die generierte Liste kann verwendet werden, um das Paket und die gesamten Abhängigkeiten von einem Online-Computer herunterzuladen. Erstellen Sie ein Skript zum Herunterladen oder verwenden Sie die Liste für den Batch-Download in einigen Download-Managern. (Beachten Sie auch, dass die erzeugte Textdatei das Zeilenende von Unix/Linux verwendet und möglicherweise auf Windows geändert werden soll.) Früher gab es eine einfachere Möglichkeit, wenn Synaptic Package Manager eine Standardanwendung in Ubuntu war .

  8. Schließlich können Sie im Zielsystem die Pakete mit dpkg oder auf andere Weise installieren.

Abrufen der aktualisierten Paketdatenbank einschließlich der Sicherheitsupdates

Die folgende Struktur sollte Ihnen zusätzlich zu der obigen Erläuterung die Idee geben:

/opt/offlineRepoList/
└── dists
    ├── precise
    │   ├── Contents-i386.gz
    │   ├── main
    │   │   └── binary-i386
    │   │       ├── Packages.bz2
    │   │       ├── Packages.gz
    │   │       └── Release.txt
    │   ├── Release.gpg
    │   ├── Release.txt
    │   └── universe
    │       └── binary-i386
    │           ├── Packages.bz2
    │           ├── Packages.gz
    │           └── Release.txt
    ├── precise-security
    │   ├── Contents-i386.gz
    │   ├── main
    │   │   └── binary-i386
    │   │       ├── Packages.bz2
    │   │       ├── Packages.gz
    │   │       └── Release
    │   ├── Release
    │   ├── Release.gpg
    │   └── universe
    │       └── binary-i386
    │           ├── Packages.bz2
    │           ├── Packages.gz
    │           └── Release
    └── precise-updates
        ├── Contents-i386.gz
        ├── main
        │   └── binary-i386
        │       ├── Packages.bz2
        │       ├── Packages.gz
        │       └── Release
        ├── Release
        ├── Release.gpg
        └── universe
            └── binary-i386
                ├── Packages.bz2
                ├── Packages.gz
                └── Release
2
precise

Für ein System, das immer offline bleibt, ist es normalerweise am besten, eine der robusten Offline-Paketverwaltungsmethoden zu verwenden, die in einigen der anderen Antworten vorgestellt werden. Dies liegt daran, dass bereits installierte Pakete auf dem neuesten Stand gehalten werden können, anstatt nur eine Handvoll Pakete auf einmal zu installieren.

In Einzelfällen, in denen Sie Pakete nur schnell auf einem System ohne Internetverbindung installieren möchten (und die Möglichkeit haben, sie auf einen anderen Computer herunterzuladen und zu übertragen), können Sie dies tun. Die Hauptkomplikation besteht darin, zu bestimmen, was Sie benötigen, da ein Paket häufig andere Pakete enthält, von denen es abhängt, und die daher vor oder gleichzeitig mit der Installation des Pakets installiert werden müssen.

Diese Antwort basiert auf der doppelten Frage g ++ in Ubuntu 14.04 und basiert auf dem Fall, dass g++ installiert werden muss.

Ich betone, dass diese Methode nicht langfristig als Alternative zu etwas verwendet werden sollte, das zumindest das automatische Ermitteln und Installieren der erforderlichen Sicherheitsupdates erleichtert. Niemals eine Verbindung zu einem Netzwerk herzustellen, verringert das Angriffspotenzial erheblich. Einige Sicherheitslücken können jedoch über Daten aus einer beliebigen Quelle ausgenutzt werden.

Während diese Methode komplex aussehen kann, dauert es in der Regel nur wenige Minuten. Bei Paketen mit einer großen Anzahl von Abhängigkeiten kann dies länger dauern. Für die Installation von Metapaketen, die eine sehr große Anzahl von Abhängigkeiten (z. B. ubuntu-desktop auf einem Minimalsystem) enthalten, kann das Herunterladen aller erforderlichen .deb-Dateien viel länger dauern, und diese Methode ist wahrscheinlich nicht geeignet.

Erforderliche Abhängigkeiten ermitteln

Sie können die Installation simulieren, um festzustellen, welche anderen Pakete erforderlich sind, um die Abhängigkeiten des Pakets zu erfüllen. Übergeben Sie das -s -Flag an apt-get (, bevor Sie eine Aktion angeben).

apt-get -s install g++

Ich habe Sudo weggelassen, da dies nur eine Simulation ist, sodass keine Root-Berechtigungen erforderlich sind.

Wenn Sie tatsächlich alle gängigen Tools zum Erstellen von Paketen installieren möchten, anstatt nur g++, bevorzugen Sie möglicherweise Folgendes:

apt-get -s install build-essential

Die Ausgabe (für g++) sieht ungefähr so ​​aus:

NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  g++-4.8 libstdc++-4.8-dev
Suggested packages:
  g++-multilib g++-4.8-multilib gcc-4.8-doc libstdc++6-4.8-dbg
  libstdc++-4.8-doc
The following NEW packages will be installed:
  g++ g++-4.8 libstdc++-4.8-dev
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Inst libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [AMD64])
Inst g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [AMD64])
Inst g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [AMD64])
Conf libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [AMD64])
Conf g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [AMD64])
Conf g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [AMD64])

Dies besagt, dass ich für die Installation von g++ auf meinem System Pakete g++, g++-4.8 und libstdc++-4.8-dev benötige.

Die Ergebnisse einer Simulation sind in der Regel besser, als nur die Abhängigkeiten eines Pakets nachzuschlagen (oder davon auszugehen, dass das, was Sie benötigen, dasselbe ist wie oben beschrieben), weil:

  1. Möglicherweise sind bereits einige Abhängigkeiten installiert.
  2. Die Abhängigkeiten (d. H. Die anderen Pakete, die ein Paket installieren oder ausführen muss) können Abhängigkeiten aufweisen, die Sie noch nicht installiert haben.

Pakete abrufen

Sobald Sie wissen, welche Pakete Sie benötigen, können Sie diese herunterladen. Ich empfehle, hierfür Launchpad zu verwenden, da die Downloads SSL-verschlüsselt sind, was zur Vermeidung von Dateibeschädigungen beiträgt.

  • Dies ist nicht nur ein Schutz vor vorsätzlicher Manipulation durch eine böswillige Partei. Dies hilft auch dabei, versehentliche Dateibeschädigungen zu vermeiden, was bei heruntergeladenen Dateien ein weitaus häufigeres Problem darstellt.
  • Es gibt eine Art, die es nicht verhindert: Wenn eine Datei nur teilweise heruntergeladen wird, aber Sie denken, dass sie fertig ist.
  • Das normale Installieren eines Pakets mit apt-get oder dem Software Center erfordert kein HTTPS, da sein Hash anhand einer digital signierten Liste von Hashes überprüft wird. Wenn Sie diese Pakete in Ihrem Paket-Cache ablegen und apt-get verwenden, um sie zu installieren, geschieht dies.
  • Wenn Sie jedoch die manuell heruntergeladenen Pakete mit dpkg -i installieren müssen, wird dies nicht ausgeführt.

Sie können nach einem Paket suchen, indem Sie den Namen unter Packages unter https://launchpad.net/ubunt eingeben und auf " Finde ein Paket. " Wenn Sie beispielsweise nach g++-4.8 suchen, gelangen Sie zur Seite gcc-4.8 source package .

Scrolle dann nach unten zum Codenamen deiner Ubuntu-Veröffentlichung. Sie arbeiten mit 14.04, das ist also Trusty Tahr. Codenamen für alle Ubuntu-Releases sind aufgelistet auf der Releases-Wiki-Seite . Klicken Sie auf das nach rechts weisende Dreieck, um die zugehörigen Paketdownloads anzuzeigen.

screenshot showing the rightward facing triangle with which one expands a release to see downloads for it

Bei einigen Paketen können Sie möglicherweise Listen mit Downloads aus mehr als einer Tasche erweitern. Sie können sehen:

  • release , die Version eines Pakets, das mit einer Ubuntu-Version ausgeliefert wurde (oder zum Zeitpunkt der Veröffentlichung verfügbar war);
  • security , Sicherheitsupdates werden nach der Veröffentlichung versandt.
  • updates , alle Updates, die nach der Veröffentlichung versandt werden;
  • vorgeschlagen , Updates, die installiert werden können, sich aber noch im Test befinden und nicht für den allgemeinen Gebrauch empfohlen werden;
  • backports , Software, die aus einer späteren Ubuntu-Version stammt und für eine frühere Version neu erstellt wurde.

Zum Beispiel ist hier, was für Firefox in 14.04 verfügbar ist:

Launchpad screenshot showing expandable selections of package downloads for multiple pockets in the same release

Im Allgemeinen benötigen Sie Pakete mit Sicherheitsupdates oder Updates , sofern vorhanden, und ansonsten Pakete mit Release .

Wenn Sie die Liste der Pakete erweitert haben, suchen Sie die .deb -Datei für Ihre Architektur. Die Debs heißen name_version_architecture.deb. Die gängigsten Architekturen sind:

  • 64-Bit-PC/Mac (als AMD64 bezeichnet, sowohl für Intel- als auch für AMD-Prozessoren)
  • 32-Bit-PC/Mac (i386 genannt, auch für beide)

Um beispielsweise das Paket g++-4.8 für die 64-Bit-Version von Ubuntu zu erhalten, können Sie g++-4.8_4.8.4-1ubuntu15_AMD64.deb herunterladen.

Pakete installieren

Wenn es sich bei den von Ihnen abgerufenen Paketen um die gleichen Versionen handelt , die die install -Aktion von apt-get automatisch abgerufen und installiert hätte (wenn Ihr System mit dem Netzwerk verbunden wäre), Dann können Sie die Pakete in /var/cache/apt/archives einfügen und einfach diesen Befehl ausführen:

Sudo apt-get install g++

Wenn dieses System nie mit dem Internet verbunden war, ist dies wahrscheinlich der Fall, wenn alle von Ihnen abgerufenen Pakete aus der Version stammen. ) Tasche. Unabhängig davon, ob das System jemals mit dem Internet verbunden war oder nicht, ist dies fast immer der Fall, wenn auf dem Launchpad keine Pakete in anderen Taschen angezeigt wurden. (Im Grunde ist die einzige Situation, in der dies nicht der Fall ist, wenn Sie ein Alpha- oder Betasystem installiert und es nie aktualisiert haben.)

Im speziellen Fall der Installation von g++ würde ich apt-get verwenden.

In Fällen, in denen dies nicht funktioniert oder von denen Sie erwarten, dass es nicht funktioniert, installieren Sie die Pakete, indem Sie sie in einen ansonsten leeren Ordner kopieren und ausführen:

Sudo dpkg -Ri /path/to/folder

Oder Sie können die Pakete einzeln benennen. In diesem Beispiel wird davon ausgegangen, dass sich die Pakete im aktuellen Verzeichnis befinden (d. H., Dass Sie cd auf das Verzeichnis gesetzt haben, in dem sie sich befinden):

Sudo dpkg -i package1.deb package2.deb ...

Sofern die Anzahl der zu installierenden Pakete nicht sehr gering ist und Sie die genaue Reihenfolge kennen, in der sie installiert werden müssen, damit Abhängigkeiten erfüllt werden, ist die Verwendung dieser Methoden wesentlich effizienter als um jedes Paket einzeln manuell zu installieren.

2
Eliah Kagan

Ich habe ein kleines python Skript, das unter Windows ausgeführt werden kann und das die Ubuntu-Paketwebsite analysiert, um den Abhängigkeitsbaum zu finden und alle erforderlichen Pakete herunterzuladen und die Prüfsummenüberprüfung durchzuführen.

Dies könnte offensichtlich mehr als nötig herunterladen, war aber für mich die einfachste Lösung.

https://Gist.github.com/Zitrax/2bad212a3b0571357e1b

Alle heruntergeladenen Pakete können dann mit dpkg -i E pkg\* installiert werden. Es vermeidet die Neuinstallation von Paketen, die bereits installiert sind.

Verwendungszweck:

usage: ubuntu-deps.py [-h] [-a Arch] [-r RELEASE] [-m MIRROR] [-f FALLBACK] [-d DIRECTORY] dep [dep ...]

Download ubuntu dependencies

positional arguments:
  dep                                  The main/top package

optional arguments:
  -h, --help                           show this help message and exit
  -a Arch, --Arch ARCH                 The architecture to use (default: AMD64)
  -r RELEASE, --release RELEASE        Ubuntu release (default: trusty)
  -m MIRROR, --mirror MIRROR           Mirror to use for download (default: http://no.archive.ubuntu.com/)
  -f FALLBACK, --fallback FALLBACK     Mirror to use when main mirror is not found (default:
                                       http://security.ubuntu.com/)
  -d DIRECTORY, --directory DIRECTORY  Target directory (default: pkg)
2
Zitrax

Ja. Sie können die DVD iso herunterladen, auf eine DVD brennen und die Software von der DVD installieren. siehe hier CDs und DVDs können wie Online-Archive als Quelle an Paketmanager übergeben werden.

2
txwikinger

Wenn Sie überhaupt keine Internetverbindung haben und noch niemanden in der Nähe haben, an dem Sie eine Internetverbindung herstellen können, gibt es eine noch nicht erwähnte Option: Lassen Sie die Quelldateien per Post senden.

Sie können das gesamte Ubuntu-Betriebssystem per E-Mail erhalten, indem Sie für eine DVD bezahlen. Genauso können Sie einen Online-Freund bitten, Ihnen die DEB-Dateien oder sogar die Quelldateien für ein Paket wie VLC zu senden. Es könnte sich jedoch lohnen, eine komplette DVD mit allen Paketen zu verschicken. Auf diese Weise können Sie es von dieser DVD installieren.

1
Rinzwind

Ich schlage vor, Live-CDs anpassen und sie zu installieren.

Sie können die Dateien auch unter http://packages.ubuntu.com/ Dateiname herunterladen, müssen dann aber bezahlen Beachtung auch der Abhängigkeiten.

0
Jakob

Dies ist keine vollständige Antwort, aber auf hohem Niveau könnten Sie:

  1. holen Sie sich die gewünschten .deb-pkgs (und erstellen Sie eine Liste von ihnen) (schließen Sie Pakete ein, von denen sie abhängen, die noch nicht installiert sind)
  2. erstellen Sie ein passendes Archiv, das sie enthält
  3. kopieren Sie das Apt-Archiv auf eine CD oder einen USB-Stick
  4. legen Sie die CD oder USB in das Zielsystem ein
  5. konfigurieren Sie apt auf dem Zielsystem so, dass es das CD- oder USB-apt-Archiv als Quelle enthält
  6. installiere die Pakete von deiner Liste mit apt-get install (Liste der pkgs)
0
kyleN

Eine andere Möglichkeit ist die Verwendung von remastersys. Mit diesem Tool können Sie ein ISO-Image von Ihrem eigenen System erstellen. Nach dem Erstellen eines bootfähigen USB-Sticks über Unetboot können Sie ein benutzerdefiniertes System auf beliebig vielen Computern installieren.

0
dago

Diese Frage ist ein bisschen alt, daher ist eine Antwort zu diesem Zeitpunkt möglicherweise überflüssig, aber Sie können auch versuchen, dpkg-offline zu verwenden. Installieren Sie bzr, dann:

bzr branch lp:dpkg-offline

es gibt ein Tutorial und eine Readme-Datei.

Angenommen, Sie möchten git auf einem Ubuntu 14.04 AMD64-System installieren, selbst wenn Ihr System z. 12.04 i386 können Sie:

  • laden Sie das Bild ubuntu-14.04-desktop-AMD64.iso herunter
  • dpkg-offline ubuntu-14.04-desktop-AMD64.iso git ausführen
  • Sie erhalten ein tar.gz, das Sie auf das Zielsystem transportieren können. Es enthält das Seed-Paket (git) und alle Abhängigkeiten. Es enthält auch ein Hilfsskript zum Hinzufügen eines lokalen Repositorys, sodass Sie zum Installieren Ihrer Pakete apt-get verwenden können.

dpkg-offline funktioniert mit allen Ubuntu-Desktop-Versionen ab 10.04 (ich habe nicht mit älteren Versionen getestet, aber sie sollten auch funktionieren) und mit allen Ubuntu Server Version ab 12.10. Unabhängig von der Host-Architektur sollte es auch mit AMD64-, i386- und armhf-Images funktionieren. Wieder habe ich nicht mit arm64 oder powerpc/ppc64el getestet, aber sie funktionieren möglicherweise auch.

Haftungsausschluss: Ich habe dpkg-offline geschrieben.

0
roadmr

Einige Pakete sind auf dem Installations-USB-Stick installiert. Ich habe network-manager deinstalliert und möchte es erneut installieren.

Damit habe ich den Stick bekommen von dem ich das Betriebssystem installiert habe (Lubuntu 17.10). Es war /dev/sdb

Montieren Sie den Stick an einem Pfad (/tmp/mnt in meinem Fall)

mkdir /tmp/mnt
Sudo mount /dev/sdb1 /tmp/mnt

Dann bearbeite ich /etc/apt/sources.list, um nur zu enthalten

deb file:///tmp/mnt/ main universe

Dann mach ich

Sudo apt-get update

Und ich kann network-manager installieren.

Hinweis: Dies ist möglicherweise nicht die Antwort auf die obige Frage, sondern auf die Frage, die ich beim Nachschlagen hatte.

0
User

Ich habe ein paar einfache Vorschläge. Sie können in die Bibliothek gehen. Suchen Sie im Computer-Bereich nach dem gewünschten Betriebssystem. In einigen Büchern sind DVDs enthalten. Wenn Sie das aktuellste Betriebssystem wünschen, empfehle ich diese Website, auf der Sie eine DVD gegen eine Schutzgebühr erwerben können. www.ubuntu.com/download/desktop.

0
BJsgoodlife