Paketinstallation ohne Internet

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Centipede
Beiträge: 30
Registriert: 22.01.2014 10:55:05

Paketinstallation ohne Internet

Beitrag von Centipede » 22.01.2014 11:07:48

Hallo zusammen!

ich habe einen Debian 7 Server.
Auf diesem Server habe ich kein Internet und auch nicht die Möglichkeit ihn ans Netz zu bringen.

Nun will ich folgende Pakete dort installieren:

build-essential
bison
flex
libfl-dev
libsnmp-dev

Soweit so gut.
Im Standartrepository sind diese nicht enthalten.

Also habe ich folgendes gemacht:

Ich habe mir auf einem lokalen Rechner eine VM erstellt mit Internetzugang.
Ich habe nun mit apt-get clean den ordner /var/cache/apt/archives leergemacht.
Nun habe ich die oben genannten Pakete heruntergeladen und sie auf einen USB Stick aus dem Ordner /var/cache/apt/archives kopiert.
Es sah so aus als wären dort auch alle Abhängigkeiten enthalten, denn es waren weit mehr als diese 6 Pakete.

Jetzt habe ich den Stick im Server gemountet, die .deb Dateien in mein /home kopiert und dort mit dem Befehl dpkg -i *.deb installieren wollen.
Leider ohne Erfolg.

Bild

Kann jemand helfen?

Benutzeravatar
Dogge
Beiträge: 1895
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketinstallation ohne Internet

Beitrag von Dogge » 22.01.2014 12:01:46

Ich kann dein Bild wegen des Proxies nicht sehe, grundsätzlich sind logfiles besser als Bilder. ;)

Ich hatte schon so ähnliche Probleme und ich bin so vorgegangen:

Rechner ohne Netz:

# apt-get install wunschzeug > apt.log
Dann mit awk (oder einem anderen Tool) die Paketadressen aus apt.log in eine eigene Datei (z.B. packages.txt) extrahiert.

Rechner mit Netz:

Mit wget die Dateien aus packages.txt herunterladen und auf USB-Stick kopiert

Rechner ohne Netz:
Dateien vom Stick nach /var/cache/apt/archives/ kopiert
# apt-get install wunschzeug
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

Centipede
Beiträge: 30
Registriert: 22.01.2014 10:55:05

Re: Paketinstallation ohne Internet

Beitrag von Centipede » 22.01.2014 12:09:30

Hey danke für die Antwort!
Kannst du zu diesen beiden Sachen mal die exakten Befehle schreiben?
Dogge hat geschrieben: Dann mit awk (oder einem anderen Tool) die Paketadressen aus apt.log in eine eigene Datei (z.B. packages.txt) extrahiert.
[...]
Mit wget die Dateien aus packages.txt herunterladen

Ist das vom Prinzip her aber nicht so fast das gleiche Vorgehen wie bei meinem Versuch?
Meine Denkweise war, wenn ich den /var/cache/apt/archives Ordner leer mache und dann alle Pakete runterlade, müssten sich ja dem diesem Ordner alle .deb Dateien befinden die ich brauche.

Benutzeravatar
Dogge
Beiträge: 1895
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketinstallation ohne Internet

Beitrag von Dogge » 22.01.2014 12:20:55

Nicht unbedingt. Vielleicht fehlt auf deinem Offline-Rechner ein Paket, dass bei deinem Online-Rechner vorhanden ist, das wird dann nicht heruntergeladen und fehlt dir dann auf dem Offline-Rechner.

Nachtrag: Da ich gerade nicht zu Hause bin und deshalb an einem Windowsrechner bin müsste ich versuchen die Befehle aus dem Kopf hinzukriegen. Also entweder du schaust in die manpage von awk und spielst mit dem output von apt-get rum, bis du es schaffst die Download-Links zu extrahieren oder du musst warten bis jemand dir da weiterhelfen kann. Bei mir wird das vor heute Abend nichts.
Zuletzt geändert von Dogge am 22.01.2014 12:33:17, insgesamt 1-mal geändert.
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Paketinstallation ohne Internet

Beitrag von smutbert » 22.01.2014 12:24:43

und außerdem, apt kümmert sich selbst um die Abhängigkeiten.

Du dagegen verwendest dpkg und da muss man sich um die Erfüllung der Abhängigkeiten selbst kümmern, uU also sogar die Pakete in der richtigen Reihenfolge oder in mehreren Durchgängen installieren. (wenn wirklich alle nötigen Pakete da sind, genügt es vermutlich noch einmal schlimmstenfalls zwei Mal dpkg -i *.deb auszuführen - das ist allerdings keine sehr elegante Vorgehensweise)

Benutzeravatar
Dogge
Beiträge: 1895
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketinstallation ohne Internet

Beitrag von Dogge » 22.01.2014 12:40:27

Mir fällt gerade ein: Dein Online-Rechner könnte, wenn du testing benutzt, die Pakete auch schon in neueren Versionen laden und auf deinem Offline-Rechner Abhängigkeitsprobleme erzeugen. Das würdest du auch verhindern, wenn du dir an deinem Offline-Rechner exakt die Paketlinks geben lässt.

Mit etwas suchen habe ich auch eine Möglichkeit gefunden, wie man an die Links kommt:

Code: Alles auswählen

apt-get -q -y --print-uris install PAKETNAME | grep ^\' | awk '{print $1}' | tr -d "'" > wget.list 
http://wiki.ubuntuusers.de/Paketverwaltung/Tipps
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: Paketinstallation ohne Internet

Beitrag von dirk11 » 22.01.2014 13:39:30

smutbert hat geschrieben:Du dagegen verwendest dpkg und da muss man sich um die Erfüllung der Abhängigkeiten selbst kümmern, uU also sogar die Pakete in der richtigen Reihenfolge oder in mehreren Durchgängen installieren. (wenn wirklich alle nötigen Pakete da sind, genügt es vermutlich noch einmal schlimmstenfalls zwei Mal dpkg -i *.deb auszuführen - das ist allerdings keine sehr elegante Vorgehensweise)
Das ist der springende Punkt, der hier für die Probleme sorgt.

Centipede
Beiträge: 30
Registriert: 22.01.2014 10:55:05

Re: Paketinstallation ohne Internet

Beitrag von Centipede » 22.01.2014 14:10:38

dirk11 hat geschrieben:
smutbert hat geschrieben:Du dagegen verwendest dpkg und da muss man sich um die Erfüllung der Abhängigkeiten selbst kümmern, uU also sogar die Pakete in der richtigen Reihenfolge oder in mehreren Durchgängen installieren. (wenn wirklich alle nötigen Pakete da sind, genügt es vermutlich noch einmal schlimmstenfalls zwei Mal dpkg -i *.deb auszuführen - das ist allerdings keine sehr elegante Vorgehensweise)
Das ist der springende Punkt, der hier für die Probleme sorgt.
Kann ich denn mit apt .deb Pakete samt Abhängigkeiten installieren?

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: Paketinstallation ohne Internet

Beitrag von dirk11 » 22.01.2014 14:27:08

Äh, ja sicher, das steht doch dort von smutbert geschrieben. Man nimmt halt nicht apt, sondern dpkg; wobei es mit apt sicher auch geht, ich hab nur keine Ahnung, wie, weil ich das immer mit dpkg mache:

"da muss man sich um die Erfüllung der Abhängigkeiten selbst kümmern, uU also sogar die Pakete in der richtigen Reihenfolge oder in mehreren Durchgängen installieren."

Smutbert hat's geschrieben, ich hab's zitiert, du hast es selbst nochmal zitiert - liest heutzutage eigentlich noch jemand, was geschrieben wird? :roll:

Benutzeravatar
Dogge
Beiträge: 1895
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketinstallation ohne Internet

Beitrag von Dogge » 22.01.2014 14:41:03

Centipede hat geschrieben: Kann ich denn mit apt .deb Pakete samt Abhängigkeiten installieren?
Wenn so vorgehst, wie ich es beschrieben habe müsste das gehen. Also alle Pakete, die der Offline-Rechner haben will wo anders herunterladen und nach /var/cache/apt/archive/ kopieren. Mit dem Codeschnippsel aus dem Ubuntuforum solltest du auch eine Paketliste bekommen, die du dann mit wget herunterladen kannst.
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Paketinstallation ohne Internet

Beitrag von inne » 22.01.2014 14:52:10

Gelöscht, denn so funktioniert das auch nicht...
Zuletzt geändert von Anonymous am 22.01.2014 15:33:06, insgesamt 4-mal geändert.

Centipede
Beiträge: 30
Registriert: 22.01.2014 10:55:05

Re: Paketinstallation ohne Internet

Beitrag von Centipede » 22.01.2014 15:10:34

dirk11 hat geschrieben:Smutbert hat's geschrieben, ich hab's zitiert, du hast es selbst nochmal zitiert - liest heutzutage eigentlich noch jemand, was geschrieben wird? :roll:
Meine Frage zielte viel mehr darauf ab, ob es halt eine Möglichkeit gibt OHNE von Hand alle Abhängigkeiten zu installieren :)
inne hat geschrieben:Wie hast du die Pakete herruntergeladen, mit apt-get -d install PAKET... als Root? Und sind alle Abhänigkeiten vorhanden? Prüfen kannst du dies mit apt-cache -i depends PAKET....
Jap genau so.
Und wenn ich alle Pakete + zuvor geladener Abhängigkeiten auf nen Stick kopiere und an der offline Maschine mounte, kommt oben bebilderter Fehler.

Benutzeravatar
Dogge
Beiträge: 1895
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketinstallation ohne Internet

Beitrag von Dogge » 22.01.2014 15:30:59

Centipede hat geschrieben: Meine Frage zielte viel mehr darauf ab, ob es halt eine Möglichkeit gibt OHNE von Hand alle Abhängigkeiten zu installieren :)
Hast du es denn mal wie von mir vorgeschlagen probiert?
Wenn nein, probier es doch mal. Wenn ja, wo hapert es denn? Irgendwie fehlt mir gerade ein bisschen Feedback.
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: Paketinstallation ohne Internet

Beitrag von dirk11 » 22.01.2014 15:46:47

Centipede hat geschrieben:Meine Frage zielte viel mehr darauf ab, ob es halt eine Möglichkeit gibt OHNE von Hand alle Abhängigkeiten zu installieren :)
Du meinst, du nimmst das eigentliche Zielpaket, und alle Abhängigkeiten werden automatisch mit installiert? Kann ich mir nicht vorstellen, denn dann müsste das installierende Programm wissen, dass die abhängigen Pakete schon lokal vorhanden sind. Für eine einmalige Sache wäre mir das viel zu viel Gefuddel, sowas rauszufinden. Soo schwer ist das nun auch wieder nicht, ein paar Pakete mit dpkg -i in's System zu kippen.

uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Re: Paketinstallation ohne Internet

Beitrag von uname » 22.01.2014 16:13:17

Ich habe nicht alles gelesen. Aber vielleicht ungefähr so vorgehen. Wobei das auch nicht ganz korrekt ist. Da jedoch die Paketlisten abweichen wirst du als Basis alle Paketabhängigkeiten und nicht nur die fehlenden Pakete nehmen müssen.

Auf dem Zielsystem (ohne Internet) die aktuelle Paketliste auslesen und zur VM als Datei übertragen.
In der VM für alle gewünschten Pakete (deiner obigen Liste) inkl. Abhängigkeiten ermitteln:

Code: Alles auswählen

apt-rdepends build-essential|fgrep "Depends:" |awk '{print $2}' |sort |uniq
Das ganze in eine Datei speichern, noch mal "sort" und "uniq" drüberlaufenlassen. Die Differenz zur Paketliste vom Zielsystem bilden und nur die Pakete automatisiert oder manuell downloaden, die auf dem Zielsystem fehlen.

Leider weiß ich nicht ob man die Differenzpakete einfach auf einmal installieren kann. Kann auch sein, dass es gar nicht geht.

Centipede
Beiträge: 30
Registriert: 22.01.2014 10:55:05

Re: Paketinstallation ohne Internet

Beitrag von Centipede » 23.01.2014 07:23:05

@Dogge:
Nein hat leider nicht geklappt, es kommt immer die Meldung "Paket XYZ Fehler beim Bearbeiten von XYZ Abhängigkeitsprobleme - verbleibt unkonfiguriert"

Vielen lieben Dank für all die Tips, letztlich konnte ich meinen Vorgesetzten doch dazu erweichen mir kurzzeitig per Proxy einen Internetzugang zu ermöglichen (die Zeit drängte leider).
Interessant und lehrreich für mich wäre es dennoch gewesen, herauszufinden wie es ohne Internet geht.
Trotzdem vielen Danke wie gesagt für die freundliche Hilfe von euch!!

Bequimao
Beiträge: 108
Registriert: 29.01.2011 17:05:11
Wohnort: Minas Gerais, Bras.

Re: Paketinstallation ohne Internet

Beitrag von Bequimao » 23.01.2014 07:37:16

Ich habe es noch nicht getestet. Schon apt-offline versucht?

Viele Grüße
Bequimão
Bequimão (gesprochen: Be-ki-mãu) ist Manuel Beckmann, brasilianischer Revolutionär in Maranhão (1630 - 1685).

dirk11
Beiträge: 2818
Registriert: 02.07.2013 11:47:01

Re: Paketinstallation ohne Internet

Beitrag von dirk11 » 23.01.2014 11:16:21

Centipede hat geschrieben:@Dogge:
Nein hat leider nicht geklappt, es kommt immer die Meldung "Paket XYZ Fehler beim Bearbeiten von XYZ Abhängigkeitsprobleme - verbleibt unkonfiguriert"
Wenn man in aptitude das zu installierende Paket auswählt, werden einem auch gleich alle Abhängigkeiten ausgewählt. Die kann man sich dann ansehen. Da muss man nur noch herausfinden, was da wieder voneinander abhängig ist, also quasi die Kette auflösen. Die .deb muss man dann alle lokal vorliegen haben. Dann das grundlegend fehlende Paket mit dpkg installieren und sich langsam "hocharbeiten". Das ist bei vielen Paketen Sklavenarbeit, aber es geht definitiv. Bei so 10 Abhängigkeiten oder so habe ich das durchaus schon öfter selbst praktiziert.

Benutzeravatar
Dogge
Beiträge: 1895
Registriert: 13.09.2010 11:07:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Paketinstallation ohne Internet

Beitrag von Dogge » 23.01.2014 12:00:11

dirk11 hat geschrieben:
Centipede hat geschrieben:@Dogge:
Nein hat leider nicht geklappt, es kommt immer die Meldung "Paket XYZ Fehler beim Bearbeiten von XYZ Abhängigkeitsprobleme - verbleibt unkonfiguriert"
Wenn man in aptitude das zu installierende Paket auswählt, werden einem auch gleich alle Abhängigkeiten ausgewählt. Die kann man sich dann ansehen. Da muss man nur noch herausfinden, was da wieder voneinander abhängig ist, also quasi die Kette auflösen. Die .deb muss man dann alle lokal vorliegen haben. Dann das grundlegend fehlende Paket mit dpkg installieren und sich langsam "hocharbeiten". Das ist bei vielen Paketen Sklavenarbeit, aber es geht definitiv. Bei so 10 Abhängigkeiten oder so habe ich das durchaus schon öfter selbst praktiziert.

Bei dem von mir vorgeschriebenen Weg werden alle benötigten Pakete heruntergeladen. Schließlich werden ja die Download-Links aus der Meldung, dass diese Pakete nicht heruntergeladen werden konnten extrahiert. Diese dann nach /var/cache/apt/archives/ kopiert und man kann ganz normal mit apt installieren und die Abhängigkeiten werden sauber aufgelöst.

Warum das beim TE nicht funktioniert hat weiß ich nicht, ich habe es so schon häufig erfolgreich praktiziert. Ich exerziere das bei Gelegenheit mal zu Hause durch und schreibe das ins Wiki. apt-offline kenne ich nicht, aber das schöne an einem Wiki ist ja, dass es jeder erweitern kann.
Debian Testing + Gnome | Linux-Anfänger seit 04/2003
http://files.mdosch.de/2014-07/0xE13D657D.asc

Centipede
Beiträge: 30
Registriert: 22.01.2014 10:55:05

Re: Paketinstallation ohne Internet

Beitrag von Centipede » 23.01.2014 12:03:28

Dogge hat geschrieben:Warum das beim TE nicht funktioniert hat weiß ich nicht, ich habe es so schon häufig erfolgreich praktiziert. Ich exerziere das bei Gelegenheit mal zu Hause durch und schreibe das ins Wiki. apt-offline kenne ich nicht, aber das schöne an einem Wiki ist ja, dass es jeder erweitern kann.
Du kannst ja dann hier mal den Link zum Wiki posten, sobald du was geschrieben hast.
Würde mich interessieren.

Antworten