Offline-Update mit Synaptic?

Alles rund um die Installation Eures Linuxsystems, sowie die Updatefunktionen des Systems und das Paketmanagement

Moderator: Moderatoren

calim
Newbie
Newbie
Beiträge: 10
Registriert: 18. Jul 2004, 13:15

Offline-Update mit Synaptic?

Beitrag von calim » 22. Jul 2004, 09:50

Hallo!

Ich habe inzwischen Synaptic und Apt bei mir zum Laufen bekommen und so weit so gut. Leider bin ich in der Situation das ich mit meinem Computer nur über Modem am Netz hänge und das zu etwas längeren Ladezeiten führt :cry: . Aber glücklicherweise habe ich an der Uni ja einen dicken Draht und Brenner. Meine Frage ist nun ob ich mit Synaptic vielleicht ein Script oder eine Linkliste erstellen kann mit der ich dann zur Uni gehe, die Pakete herunterlade (unter W2k/XP), mit nachause nehme und dort mit Synaptic wieder installieren kann? (Ist es möglich die Pakete dort einfach in das Verzeichnis zu kopieren in dem Synaptic sowieso alle heruntergeladenen Pakete ablegt?) Meine bisherige Methode: Paket suchen,laden,Zuhause die Installation(mit Kpackage) probieren, neue Abhängigkeiten erfahren,wieder zur Uni,.... ist auf die Dauer etwas frustrierend.

Für Hinweise vielen Dank!

calim

Werbung:
Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 22. Jul 2004, 10:00

ja das geht ;)

Variante 1:
1.) erzeuge ein Verzeichnis /local/EigenePakete-9.1
2.) kopiere deine downloads dorthin, oder mount deine CD dorthin
3.) installiere apt4rpm
apt-get install apt4rpm
4.) editiere /etc/aptate.conf
Beispiel:

Code: Alles auswählen

<?xml version='1.0' encoding="iso-8859-1"?>
<!DOCTYPE opt SYSTEM "/usr/share/apt4rpm/aptate.dtd">

<opt signed-pkgs-only="no">
  <topdir>/local</topdir>
  <sources-list-file>file:/local//ftp/pub/linux/suse/apt</sources-list-file>
  <sources-list-ftp>ftp://ftp.gwdg.de/pub/linux/suse/apt</sources-list-ftp>
  <sources-list-http>http://ftp.gwdg.de/pub/linux/suse/apt</sources-list-http>

  <distribution id="suse91">
    <name>SuSE</name>
    <version>9.1</version>
    <architecture>i386</architecture>

    <component>
      <name>EigenePakete-9.1</name>
      <url>EigenePakete-9.1</url>
    </component>
  </distribution>
</opt>
5.) in /etc/apt/sources.list fügst du ein:

Code: Alles auswählen

rpm file:/local/apt SuSE/9.1-i386 EigenePakete-9.1
6.) aptate aufrufen
7.) apt-get update
8.) jetzt kennt apt deine "lokalen Pakete" und du kannst sie mit apt-get install installieren ;)

für jede neue CD (bzw Änderungen an deinem lokalen Repository musst du apt-get update aufrufen!
Zuletzt geändert von oc2pus am 15. Okt 2004, 12:31, insgesamt 1-mal geändert.

calim
Newbie
Newbie
Beiträge: 10
Registriert: 18. Jul 2004, 13:15

Beitrag von calim » 22. Jul 2004, 10:26

Danke, werde ich mal ausprobieren.
Die bekomme ich aber die Liste der Pakete die ich benötige? Ich habe die Paketliste in Synaptic. Was fehlt ist eben das ich quasi dort meine gewünschten Pakete auswähle und ich irgendwie eine Liste rausbekomme in der die ganzen Pakete drinstehen (am besten mit Link zu den gwdg.de Dateien im Netz) die ich wirklich brauche, d.h. mit aufgelösten Abhängigkeiten.?

Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 22. Jul 2004, 10:34

calim hat geschrieben:Danke, werde ich mal ausprobieren.
Die bekomme ich aber die Liste der Pakete die ich benötige? Ich habe die Paketliste in Synaptic. Was fehlt ist eben das ich quasi dort meine gewünschten Pakete auswähle und ich irgendwie eine Liste rausbekomme in der die ganzen Pakete drinstehen (am besten mit Link zu den gwdg.de Dateien im Netz) die ich wirklich brauche, d.h. mit aufgelösten Abhängigkeiten.?
du kannst doch die "Dependencies" eines jeden Paketes abfragen
apt-cache depends <paket>
apt-cache showpkg <paket>

in synaptic, kann man das auch sehen: in der Lasche "hängt ab von"

calim
Newbie
Newbie
Beiträge: 10
Registriert: 18. Jul 2004, 13:15

Beitrag von calim » 22. Jul 2004, 10:52

Werde ich mal nachschauen wenn ich wieder Zuhause bin. Vielleciht kann ich mir dann auch gleich eine Linkliste machen auf der ich in der Uni nur noch "Rechtsklick-->speichern unter" machen muß.

Danke!

calim :)

herbk
Member
Member
Beiträge: 211
Registriert: 21. Mär 2004, 17:30
Wohnort: Windsbach

Beitrag von herbk » 22. Jul 2004, 12:12

Ich würde das so machen
in Synaptik einen Quellen-Pfad zu einem webserver im Netz legen und einen zu meinem eigenen Verzeichnis.
Zum nachsehen was aktuallisiert wurde, den eigenen Pfad aus und den Webpfad einschalten.
Online gehen und refresh klicken. Jetzt wird nachgesehen was es neueres gibt.
von der Liste notieren was ich möchte, in der Uni downloaden und ins eigene verzeichnis Kopieren
webserver aus-, eigenens Verzeichnis einschalten und installieren...
have a lot of input
HerbK

Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 22. Jul 2004, 12:22

HerbK hat geschrieben:Ich würde das so machen
in Synaptik einen Quellen-Pfad zu einem webserver im Netz legen und einen zu meinem eigenen Verzeichnis.
Zum nachsehen was aktuallisiert wurde, den eigenen Pfad aus und den Webpfad einschalten.
Online gehen und refresh klicken. Jetzt wird nachgesehen was es neueres gibt.
von der Liste notieren was ich möchte, in der Uni downloaden und ins eigene verzeichnis Kopieren
webserver aus-, eigenens Verzeichnis einschalten und installieren...
synaptic/apt kann nicht mal eben so einen eigenen Quellenpfad einlesen ;)

deshalb musst du erst die Meta-Informationen für apt-Repositories im state und cache Verzeichnis erstellen und genau das wird so gemacht, wie es in meinem Posting steht.

herbk
Member
Member
Beiträge: 211
Registriert: 21. Mär 2004, 17:30
Wohnort: Windsbach

Beitrag von herbk » 22. Jul 2004, 12:32

synaptic/apt kann nicht mal eben so einen eigenen Quellenpfad einlesen
Deshalb habe ich ja auch geschrieben: ...legen
ich habe mir Pfade zu verschieden Webservern und mit verschiedenen Verzeichnisen gelegt und "schalte" je nach bedarf um...
have a lot of input
HerbK

tobi_318
Newbie
Newbie
Beiträge: 19
Registriert: 15. Sep 2004, 20:04

Beitrag von tobi_318 » 15. Okt 2004, 09:12

Hallo Leute, hallo oc2pus.
Da ich auch ständig an ein Windowsrechner muß wenn ich ins Internet möchte,
wäre es für mich auch wichtig diese offline Methode zu benutzen,
doch muß ich da was falsch verstehen, denn so geht sie nicht.
Ich habe apt und apt4rpm installiert
Mein Pfad für die lokalen Pakete ist:
/local/packages/SuSE/9.1-i386/pakete

meine aptate.conf :
<?xml version='1.0' encoding="iso-8859-1"?>
<!DOCTYPE opt SYSTEM "/usr/share/apt4rpm/aptate.dtd">

<opt signed-pkgs-only="no">
<topdir>/local</topdir>
<sources-list-file>file:/local//ftp/pub/linux/suse/apt</sources-list-file>
<sources-list-ftp>ftp://ftp.gwdg.de/pub/linux/suse/apt</sources-list-ftp>
<sources-list-http>http://ftp.gwdg.de/pub/linux/suse/apt</ ... -list-http>

<distribution id="suse91">
<name>SuSE</name>
<version>9.1</version>
<architecture>i386</architecture>

<component>
<name>pakete</name>
<url>pakete</url>
</component>
</distribution>
</opt>
meine source.list:
rpm file:/local/packages SuSE/9.1-i386 pakete
Ich führe apt-get update durch:
apt-get update
Ignoriere file: SuSE/9.1-i386 release
Ignoriere file: SuSE/9.1-i386/pakete release
Lese Paketlisten... Fertig
Erzeuge Abhängigkeitsbaum... Fertig
Aber apt kann keine meiner Pakete finden
Wo liegt mein Fehler?

Edit: Ein Admin sollte das mal ins Apt Forum verschieben, wenn möglich.

Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 15. Okt 2004, 10:04

@tobi_318
hast du aptate aufgerufen ?

==> damit wird dein pakete-Verzeichnis indiziert und ist damit via apt (sources.list Eintrag file ...) verfügbar

bei JEDER Änderung an deinem lokalen Verzeichnis MUSST du aptate aufrufen.
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

tobi_318
Newbie
Newbie
Beiträge: 19
Registriert: 15. Sep 2004, 20:04

Beitrag von tobi_318 » 15. Okt 2004, 10:14

oc2pus hat geschrieben: hast du aptate aufgerufen ?
Wenn ich aptate aufrufe kommt das hier:
Can't locate XML/LibXML/Common.pm in @INC (@INC contains: /usr/share/apt4rpm /usr/lib/perl5/5.8.3/i586-linux-thread-multi /usr/lib/perl5/5.8.3 /usr/lib/perl5/site_perl/5.8.3/i586-linux-thread-multi /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.3/i586-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/vendor_perl .) at /usr/lib/perl5/vendor_perl/5.8.3/i586-linux-thread-multi/XML/LibXML.pm line 11.
BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.8.3/i586-linux-thread-multi/XML/LibXML.pm line 11.
Compilation failed in require at /usr/share/apt4rpm/Aptate/Config.pm line 37.
BEGIN failed--compilation aborted at /usr/share/apt4rpm/Aptate/Config.pm line 37.
Compilation failed in require.
BEGIN failed--compilation aborted.
error: incorrect perl configuration
Was läuft falsch mit perl?
Ich weiß nicht was fehlt, aber der Pfad oben für XML/LibXML existiert schonmal.
:cry:

Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 15. Okt 2004, 11:34

dir fehlen schlicht und einfach ein paar Perl-Module ...(perl-XML-LibXML, perl-XML-SAX, perl-XML-LibXML-Common, perl-XML-GDOME)

das hättest du aber ganz einfach selber herausfinden können:
rpm -q --requires apt4rpm
perl-XML-LibXML
wget
mktemp
apt-server
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(VersionedDependencies) <= 3.0.3-1
/bin/sh
/usr/bin/perl
==> perl-XML-LibXML
rpm -q --requires perl-XML-LibXML
perl = 5.8.3
libxml2
perl-XML-SAX
perl-XML-LibXML-Common
perl-XML-GDOME
/bin/sh
/bin/sh
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(VersionedDependencies) <= 3.0.3-1
libc.so.6
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1.3)
libm.so.6
libpthread.so.0
libpthread.so.0(GLIBC_2.0)
libxml2.so.2
libz.so.1
du hast offensichtlich dein apt4rpm nicht mit apt installiert ;)
evtl findet dein apt diese Perlmodule nicht weil dir ein Eintrag in der sources.list (Repository funktronics) fehlt.
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

tobi_318
Newbie
Newbie
Beiträge: 19
Registriert: 15. Sep 2004, 20:04

Beitrag von tobi_318 » 15. Okt 2004, 11:40

Tut mit leid aber so einfach ist das für mich nicht.
linux:/home/tobias # rpm -q -requires apt4rpm
perl-XML-LibXML
wget
mktemp
apt-server
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(VersionedDependencies) <= 3.0.3-1
/bin/sh
/usr/bin/perl
also das passt doch schon mal.
linux:/home/tobias # rpm -q -requires perl-XML-LibXML
perl = 5.8.3
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(VersionedDependencies) <= 3.0.3-1
libc.so.6
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1.3)
libm.so.6
libpthread.so.0
libpthread.so.0(GLIBC_2.0)
libxml2.so.2
libz.so.1
rpmlib(PayloadIsBzip2) <= 3.0.5-1
Und hier fehlts !?

Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 15. Okt 2004, 12:28

egal, installiere trotzdem diese perl-Module und es wird funktionieren:
perl-XML-LibXML, perl-XML-SAX, perl-XML-LibXML-Common, perl-XML-GDOME
und führe aptate aus ...

p.s zur Ermittlung habe ich das Tool apt-iselect eingesetzt (das ist ein Konsolen-Gui für apt-cache Abfragen).
Wo du dieses Tool herkriegst?
schau im apt-Forum, es gibt dazu einen eigenen Thread ;)
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

tobi_318
Newbie
Newbie
Beiträge: 19
Registriert: 15. Sep 2004, 20:04

Beitrag von tobi_318 » 15. Okt 2004, 12:32

@oc2pus
da du die perlpakete genannt hast ist es auch kein Problem die zu installieren.
Aber, wenn ich mit apt apt4rpm installieren möchte wird auch nur wieder das perl-XML-LibXML installiert:
linux:/home/tobias # apt-get install apt4rpm
Lese Paketlisten... Fertig
Erzeuge Abhängigkeitsbaum... Fertig
Die folgenden zusätzlichen Pakete werden installiert werden:
perl-XML-LibXML
Die folgenden NEUEN Pakete werden installiert werden:
apt4rpm perl-XML-LibXML
0 upgraded, 2 newly installed, 0 entfernt und 0 nicht upgegradet.
Muss 0B/391kB an Archiven holen.
Nach dem Auspacken werden 1272kB zusätzlicher Plattenplatz benutzt werden.
Wollen Sie fortsetzen? [J/n]

Was ist mit den anderen, warum sieht apt die nicht als abhängig?

Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 15. Okt 2004, 12:34

der "Fehler" liegt eher im Paket perl-XML-LibXML, dort sind die Abhängigkeiten auf die anderen RPMs nicht drin in der Version die du verwendest .... aber installiere sie jetzt einfach ;)

wahrscheinlich verwendest du das falsche ... das von SuSE aus base, nimm das von funktronics!!!
apt policy perl-XML-LibXML
perl-XML-LibXML:
Installed: 1.58-1
Candidate: 1.58-1
Version Table:
*** 1.58-1 0
500 http://ftp.gwdg.de SuSE/9.1-i386/funktronics pkglist
100 RPM Database
1.57-32 0
500 http://ftp.gwdg.de SuSE/9.1-i386/base pkglist
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

tobi_318
Newbie
Newbie
Beiträge: 19
Registriert: 15. Sep 2004, 20:04

Beitrag von tobi_318 » 15. Okt 2004, 13:10

Ok, perl hat sich erledigt
ähm...?

linux:/home/tobias # aptate
Distribution(s) to be processed: suse91
Processing: suse91
Archive structure: 1 => SuSE/9.1-i386
Entering cache build stage
error: not existing rpm repository directory for component: Pakete.
Expected directory: "/local//packages/SuSE/9.1-i386/pakete".
warning: other aptate instance active, waiting 8 minutes...
na ich warte dann mal 8min um weiter zu probieren

Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 15. Okt 2004, 13:29

Fehler in der sources.list ;)

rpm file:/local/packages SuSE/9.1-i386 pakete <== eins zu viel bzw von mir übernommen (packages) du wolltest aber:

siehe aptate.conf
<topdir>/local</topdir>
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

tobi_318
Newbie
Newbie
Beiträge: 19
Registriert: 15. Sep 2004, 20:04

Beitrag von tobi_318 » 15. Okt 2004, 13:31

Ich bin jetzt schon ein kleinen Schritt weiter,
in der aptate.conf
<url>/packages/SuSE/9.1-i386/pakete</url>
hatte ich den Fehler die url mit / zu beginnen, das ist also falsch.
Nun siehts so aus:
Distribution(s) to be processed: suse91
Processing: suse91
Archive structure: 1 => SuSE/9.1-i386
Entering cache build stage
pakete -> RPMs added: 3
-> RPMs removed: 03.i586.rpm: V3 DSA signature: NOKEY, keywarning: other aptate instance active, waiting 6 minutes...
Aber warum immer diese Wartezeiten, da hab ich noch etwas falsch gemacht?
EDIT: Aha, also kommt der komplette Pfad in <topdir>/local/packages/...</topdir> und unten nur der letzte Ordner <url>pakete</url> , so ungefähr?

Benutzeravatar
oc2pus
Ultimate Guru
Ultimate Guru
Beiträge: 6506
Registriert: 21. Jun 2004, 13:01

Beitrag von oc2pus » 15. Okt 2004, 13:38

aptate hat einen kleinen Bug ;)

wenn ein bestimmtes Verzeichnis existiert, denkt es, eine andere Instanz läuft schon/noch. Da du vorher abgestürzt bist wegen Fehler, existiert diese Sperrdatei noch.

Warte also einfach ab...
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste