Suse 9.1 DVD in Apt integrieren

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

Moderator: Moderatoren

Antworten
ojkastl
Hacker
Hacker
Beiträge: 547
Registriert: 15. Dez 2004, 04:51
Wohnort: Erlangen
Kontaktdaten:

Suse 9.1 DVD in Apt integrieren

Beitrag von ojkastl » 15. Dez 2004, 05:22

Hallo allerseits,

mit Hilfe der super HowTos (Danke noch mal!) ist es mir gelungen, meine Suse-DVD einzubinden. D.h. ich hoffe es. Aber der Reihe nach.

- Die DVD hab ich nach /Daten4/DVD_Suse_91/ kopiert
- apt4rpm ist installiert
- in der aptate.conf steht:
------------------------------------------------------------
?xml version='1.0' encoding="iso-8859-1"?>
<!DOCTYPE opt SYSTEM "/usr/share/apt4rpm/aptate.dtd">
<opt signed-pkgs-only="no">
<!-- all files are relative to this path -->
<topdir>/var/cache/apt/OJs_Repository</topdir>
<!-- structure 3 uses the language tag -->
<distribution id="suse91-i386">
<name>Suse</name>
<version>9.1</version>
<architecture>i386</architecture>
<component>
<name>Suse_DVD_RPMs</name>
<url>/Daten4/DVD_Suse_91</url>
</component>
</distribution>
<distribution id="suse91-i586">
<name>Suse</name>
<version>9.1</version>
<architecture>i586</architecture>
<component>
<name>Suse_DVD_RPMs</name>
<url>/Daten4/DVD_Suse_91</url>
</component>
</distribution>

</opt>
---------------------------------------------------------
D.h. das Repository soll nach /var/cache/apt/OJs_Repository, der Name soll Suse_DVD_RPMs sein.

Was die beiden Einträge sollen, verrat ich euch gleich...

In der /etc/apt/sources.list steht jetzt
------------------------------------------------------------
rpm file:/var/cache/apt/OJs_Repository/apt Suse/9.1-i386 Suse_DVD_RPMs
------------------------------------------------------------

was auch erstmal passen sollte.

Dann hab ich ein "aptate" aufgerufen, das auch recht lange die Pakete überprüft hat. Komischerweise sind in /var/cache/apt/OJS_Repository/apt/Suse/9.1-i386/RPMS.Suse_DVD_RPMs
keine Dateien. Aber naja, es gab keine Fehlermeldung, also sollte es gegangen sein.
Nach einem "apt update" hab ich dann mal ein "apt search" probiert, nach einem RPM das auf der DVD ist:
----------------------------------------------------------------
ojkastl@RobinLinux:/Daten4/DVD_Suse_91/suse/i586> ls -1 3*
3d_chess-0.8.1-1024.i586.rpm
3ddiag-0.716-108.i586.rpm
3dpong-0.4-647.i586.rpm
3dto3d-3.5-19.i586.rpm
-----------------------------------------------------------------

also: apt search 3d_chess

FAZIT: Da wird nix gefunden. Auch nicht wenn ich nur nach chess suche.
Ich hab dann ein RPM von mir rein, eines das ein i386 im Namen hat. Nach erneutem "aptate" und "apt update" hab ich danach gesucht, und es war da.
Hä?

Meine Bitte an euch: Hab ich da nen Denkfehler? Oder ist da wirklich der Wurm drin? Oder hab ich nur was vergessen? Oder oder ...

Danke im Voraus,
Saber
Zuletzt geändert von ojkastl am 16. Dez 2004, 23:51, insgesamt 1-mal geändert.

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

Beitrag von oc2pus » 15. Dez 2004, 09:33

ok, zunächst eine Bitte, die config-Datei nicht mit "Quote" sondern mit "Code" klammern, dann bleibt die Einrückung erhalten. Das macht es einfacher lesbar :)

also dein topdir ist: /var/cache/apt/OJs_Repository
deine eigenen RPMs sollten laut deiner Konfig dann in /var/cache/apt/OJs_Repository/Daten4/DVD_Suse_91 stehen

Ist es das was du willst? Ich denke nicht :)

Dann hast du noch einen kleinen Denkfehler:
du hast 2 Dsitributionen konfiguriert, jede Distribution enthält eine Komponente Suse_DVD_RPMs. Ich kann nur ahnen was du erreichen willst: du willst die RPMs nach i386 und i586 aufteilen?

Das Filtern nach bestimmten Kriterien wird mit einem <reject> Tag durchgeführt. Beispiel:

Code: Alles auswählen

<reject>*i686</reject>.
Siehe die Dokumentation von apt4rpm in /usr/share/doc/packages/apt4rpm/dtd-manual.

Aber bevor ich jetzt wieter meine Glaskugel befrage ... warte ich erst mal auf deine Antwort :)

hier noch ein Thread mit einem ähnlichen Problem:
http://www.linux-club.de/viewtopic.php?t=11914
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

ojkastl
Hacker
Hacker
Beiträge: 547
Registriert: 15. Dez 2004, 04:51
Wohnort: Erlangen
Kontaktdaten:

Beitrag von ojkastl » 15. Dez 2004, 13:25

Hallo,

erstmal Danke für die Antwort.


2. zuerst: Das mit den beiden Distributionen war nur ein Versuch, eigentlich stand da nur die erste mit i386, wie in deinem HowTO. Dachte mir schon dass das wohl so nicht geht. Aber war nur ein Versuch.

1. Alsoooo. Aptate durchsucht ja das Verzeichnis /Daten4/DVD_Suse_91 nach RPMs, wo ja die RPMs auch liegen, die ich von der DVD kopiert hab.
D.h. ich hätte erwartet, dass er evtl. Links in /var/cache/apt/OJs_Repository/apt/Sue/9.1-i386/RPMS_Suse_DVD_RPMs erstellt. Macht er nicht, findet aber trotzdem eines meiner eigenen RPMs die ich auch in den DVD Ordner (also /Daten4/DVD/...) kopiert hab.

Was mich wundert ist dass er dieses eine RPM findet, und die anderen nicht. Oder hab ich da vielleicht ein doofes Paket erwischt, dass "nicht so einfach zu installieren" ist, also nur eine Abhängigkeit o.ä.


Vielleicht hab ich auch nen Denkfehler. Sieht aptate das

Code: Alles auswählen

<name>Suse_DVD_RPMs</name>
<url>/Daten4/DVD_Suse_91</url>
 
als Pfadangabe ausgehend vom TopDir an? Also das /Daten4 nicht im "Wurzelverzeichnis" ist (da wo auch /dev und /root liegen) sondern in /var/cache/apt/OJs_Repository/?
Wenn das stimmt dann ist mir klar warums nicht geht.
Aber es geht ja, bei einem RPM?

Im puzzled.

Saber

P.S. Danke für deine Mühe!

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

Beitrag von oc2pus » 15. Dez 2004, 14:17

Saber_Rider hat geschrieben:2. zuerst: Das mit den beiden Distributionen war nur ein Versuch, eigentlich stand da nur die erste mit i386, wie in deinem HowTO. Dachte mir schon dass das wohl so nicht geht. Aber war nur ein Versuch.
:)
Stell das mal zurück, bis der Rest läuft. Dann erkläre ich dir das auch noch.
Saber_Rider hat geschrieben:Aptate durchsucht ja das Verzeichnis /Daten4/DVD_Suse_91 nach RPMs, wo ja die RPMs auch liegen, die ich von der DVD kopiert hab.
nö, es sucht in /var/cache/apt/OJs_Repository/Daten4/DVD_Suse_91.
Saber_Rider hat geschrieben:D.h. ich hätte erwartet, dass er evtl. Links in /var/cache/apt/OJs_Repository/apt/Sue/9.1-i386/RPMS_Suse_DVD_RPMs erstellt.
die links würden bei deiner Konfiguration in <topdir>/apt/<name>/<version>-<architecture>/RPMS.Suse_DVD_RPMs stehen.
Saber_Rider hat geschrieben:Macht er nicht, findet aber trotzdem eines meiner eigenen RPMs die ich auch in den DVD Ordner (also /Daten4/DVD/...) kopiert hab.
apt hat Recht :)
Saber_Rider hat geschrieben:Vielleicht hab ich auch nen Denkfehler. Sieht aptate das

Code: Alles auswählen

<name>Suse_DVD_RPMs</name>
<url>/Daten4/DVD_Suse_91</url>
 
als Pfadangabe ausgehend vom TopDir an? Also das /Daten4 nicht im "Wurzelverzeichnis" ist (da wo auch /dev und /root liegen) sondern in /var/cache/apt/OJs_Repository/?
Wenn das stimmt dann ist mir klar warums nicht geht.
genau, wir kommen der Sache näher ....
Saber_Rider hat geschrieben:Aber es geht ja, bei einem RPM?
magic, oder es steht im Cache drin durch ein apt update
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

ojkastl
Hacker
Hacker
Beiträge: 547
Registriert: 15. Dez 2004, 04:51
Wohnort: Erlangen
Kontaktdaten:

Beitrag von ojkastl » 15. Dez 2004, 14:34

Aja, da tut sich doch was.

- Warum braucht aptate dann solange beim Aufrufen, und ändert knapp 3500 Pakete, wenn es nix findet. Also wenn die Pfadangaben falsch sind, sollte er doch gar nix finden?

- Sollte ich dann das Repository nicht uner /var... sondern unter /Daten4/DVD_Suse_91 erstellen lassen? Und wenn ja, wo genau? Also da ist ja die originale DVD-Struktur drauf, mit /media.1, /suse etc.

- Warum erstellt aptate unter /var/cache/... dann die Struktur mit Suse/i386/..., wenn da gar nix hinkopiert wird? Oder ist dass nur für den ersten Durchlauf, dann kopiert man die RPMs da hin, und dann gehts?

Fragen über Fragen.

Ich werd mal probieren, ob ich es schaffe. Und schreib dann Rückmeldung, obs geklappt hat. Andernfalls nerv ich dich halt weiter ;-)

Saber

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

Beitrag von oc2pus » 15. Dez 2004, 14:52

Saber_Rider hat geschrieben:Warum braucht aptate dann solange beim Aufrufen, und ändert knapp 3500 Pakete, wenn es nix findet. Also wenn die Pfadangaben falsch sind, sollte er doch gar nix finden?
aptate erstellt einen Index (eine Metainformation) für apt.
Saber_Rider hat geschrieben:Sollte ich dann das Repository nicht uner /var... sondern unter /Daten4/DVD_Suse_91 erstellen lassen? Und wenn ja, wo genau? Also da ist ja die originale DVD-Struktur drauf, mit /media.1, /suse etc.
du hast es immer noch nicht verstanden, apt arbeitet mit Metainformationen welches Paket von welchem Paket wie abhängt und wo das Paket zu finden ist. Der physikalische Speicherort eines Paktes ist apt egal, es kann die Datei auf einem Server via ftp, http, rsync oder https erreichen oder eben lokal auf Platte.
aptate interessiert sich nur für die RPMs auf deiner DVD, mit dem Rest hat apt nix am Hut, diese Verzeichnisstruktur wird von SuSE-YaST benötigt.
Saber_Rider hat geschrieben:Warum erstellt aptate unter /var/cache/... dann die Struktur mit Suse/i386/..., wenn da gar nix hinkopiert wird?
in /var/cache/apt stehen die Downloads von apt. Nicht mehr nicht weniger. Du kannst dieses Ordnerinhalt komplett löschen, es wird apt nicht stören ... nur deine Online-Zeiten werden grösser bei Re-Installationen :)
apt interessiert sich viel mehr für /var/state/apt/* - dort stehen die benötigten Informationen.
Saber_Rider hat geschrieben:Oder ist dass nur für den ersten Durchlauf, dann kopiert man die RPMs da hin, und dann gehts?
nein, wie gesagt, cache ist cache. Deine eigenen RPMs werden ja woanders stehen, z.Bsp in deinem angegebenen Verzeichnis...

Ich empfehle dir nochmal wärmstens die Dokumentation zu aptate und apt zu lesen.
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

ojkastl
Hacker
Hacker
Beiträge: 547
Registriert: 15. Dez 2004, 04:51
Wohnort: Erlangen
Kontaktdaten:

Beitrag von ojkastl » 15. Dez 2004, 15:22

Hallo nochmal,
Saber_Rider hat folgendes geschrieben:
Warum braucht aptate dann solange beim Aufrufen, und ändert knapp 3500 Pakete, wenn es nix findet. Also wenn die Pfadangaben falsch sind, sollte er doch gar nix finden?
aptate erstellt einen Index (eine Metainformation) für apt.

Saber_Rider hat folgendes geschrieben:
Sollte ich dann das Repository nicht uner /var... sondern unter /Daten4/DVD_Suse_91 erstellen lassen? Und wenn ja, wo genau? Also da ist ja die originale DVD-Struktur drauf, mit /media.1, /suse etc.
du hast es immer noch nicht verstanden, apt arbeitet mit Metainformationen welches Paket von welchem Paket wie abhängt und wo das Paket zu finden ist. Der
Für welche RPMs erstellt aptate denn die Metainformationen, wenn er keine findet? Also, da er so lange werkelt, findet er ja was. Das wollte ich damit sagen. Wenn die Pfade nicht stimmen würden, wäre die Sache ja ganz schnell vorbei.


aptate interessiert sich nur für die RPMs auf deiner DVD, mit dem Rest hat apt nix am Hut, diese Verzeichnisstruktur wird von SuSE-YaST benötigt.
Dass die Verzeichnisstruktur der DVD für Yast ist, weiss ich. Nur weshalb erstellt aptate eine Struktur (bei mir) in /var/cache/apt/OJs_Repository/apt/Suse/i386/RPMS.SUSE_DVD_RPMs und schreibt da nix hin?
Müsste ich da die RPMs hinkopieren?

Sorry falls ich jetzt blöd frage, aber trotz RTFM hab ich grad nen Knoten im Hirn.
P.S. Und Rechtschreibprobleme.

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

Beitrag von oc2pus » 15. Dez 2004, 15:31

Nur weshalb erstellt aptate eine Struktur (bei mir) in /var/cache/apt/OJs_Repository/apt/Suse/i386/RPMS.SUSE_DVD_RPMs und schreibt da nix hin?
Müsste ich da die RPMs hinkopieren?
weil du das so konfiguriert hast. Was btw FALSCH ist.
und NEIN du sollst deine RPMs nicht dorthin kopieren.
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

ojkastl
Hacker
Hacker
Beiträge: 547
Registriert: 15. Dez 2004, 04:51
Wohnort: Erlangen
Kontaktdaten:

Beitrag von ojkastl » 15. Dez 2004, 16:24

Danke!

Dank deiner langen Bemühungen hab ich es jetzt geschafft. Auch wenn es mir nicht leicht gefallen ist, das alles zu kapieren, aber jetzt ist glaub ich der Knoten raus.

Also, ich hab als TopDir /Daten4/DVD_suse_91 genommen. Ich hab nur noch eine Distribution drin, die andere aus meinem ersten Posting war ja eh Blödsinn. Als URL hab ich dann suse/i586 genommen, also die Verzichnisse relativ zu /Daten4/DVD_Suse_91. Das ist die Struktur die die DVD hat, da kann dann Yast drauf zugreifen.

Dann hab ich in der sources.list ein

Code: Alles auswählen

rpm      file:/Daten4/DVD_Suse_91/apt Suse/9.1-i386  Suse_DVD_RPMs
drin. Nach einem aptate gibt es /Daten4/DVD_suse_91/apt/Suse/9.1-i386 und die zugehörigen Metadaten.
Ich hab dann mal /var/cache/apt bis auf archives gelöscht.
Dann ein apt update, und er findet sowohl mein eigenes Paket als auch die vorher nicht gefundenen (3d_chess, ...).

Voila.

Also nochmal DANKEDANKEDANKEDANKE an dich für deine Engelsgeduld. Ich glaub ohne dich hätt ich das nicht hingekriegt.

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

Beitrag von oc2pus » 15. Dez 2004, 16:40

na also, was lange währt wird endlich gut :)

es wäre nett von dir wenn du jetzt noch deine "finale" aptate.conf posten würdest. Dann könnten andere die DVD genauso leicht einbinden :)
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

corwin42
Newbie
Newbie
Beiträge: 23
Registriert: 21. Apr 2004, 23:41

Beitrag von corwin42 » 15. Dez 2004, 16:57

Saber_Rider hat geschrieben:Als URL hab ich dann suse/i586 genommen, also die Verzichnisse relativ zu /Daten4/DVD_Suse_91. Das ist die Struktur die die DVD hat, da kann dann Yast drauf zugreifen.
Jetzt fehlen Dir allerdings noch die Verzeichnisse i686 und noarch der DVD, die Du evtl. noch als eigene Komponenten in die aptate.conf (Analog zum i586-Verzeichnis) eintragen musst.

Ich bin mir jetzt allerdings nicht sicher, ob Du innerhalb eines Component Objektes mehrere URLs definieren kannst oder ob Du für jede URL (also jedes Verzeichnis) ein eigenes Component definieren musst. ggf. ausprobieren.

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

Beitrag von oc2pus » 15. Dez 2004, 17:57

corwin42 hat geschrieben:Jetzt fehlen Dir allerdings noch die Verzeichnisse i686 und noarch der DVD, die Du evtl. noch als eigene Komponenten in die aptate.conf (Analog zum i586-Verzeichnis) eintragen musst.
Das würde über einen <accept>-Tag bzw <reject>-Tag realisiert. Es stehen gewöhnliche reguläre Ausdrücke dort.

Beispiele:

Code: Alles auswählen

<accept>/9\.1.*i386/|/9\.1.*i586/|/9\.1.*i686/|/9\.1.*noarch/|IBM/java</accept>      
um Verzeichnisse auszuschliessen:

Code: Alles auswählen

<reject>subversion|apache|mod_php4|flood|neon|arcfour|betatest</reject>
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

ojkastl
Hacker
Hacker
Beiträge: 547
Registriert: 15. Dez 2004, 04:51
Wohnort: Erlangen
Kontaktdaten:

Beitrag von ojkastl » 16. Dez 2004, 12:36

Hallo,

werd ich noch machen, und die aptate.conf werd ich auch noch reinstellen, wenn ich wieder an der Linuxkiste hocke.

Wenn ich alle Verzeichnisse erwischen möchte, schreibe ich deine Zeile rein, und muss dann aber das Verzeichnis (url) von suse/i586 auf suse ändern, wenn ich mich nicht täusche.

Saber

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

Beitrag von oc2pus » 16. Dez 2004, 12:42

Saber_Rider hat geschrieben:... und die aptate.conf werd ich auch noch reinstellen, wenn ich wieder an der Linuxkiste hocke.
gut :)
Saber_Rider hat geschrieben:Wenn ich alle Verzeichnisse erwischen möchte, schreibe ich deine Zeile rein, und muss dann aber das Verzeichnis (url) von suse/i586 auf suse ändern, wenn ich mich nicht täusche.
meine Zeile war ein Beispiel!!

du musst dort die Filterbedingung reinschreiben für welche Verzeichnisse dein aptate die RPMs indizieren soll.
tell people what you want to do, and they'll probably help you to do it.
PackMan
LinWiki : Das Wiki für Linux User

ojkastl
Hacker
Hacker
Beiträge: 547
Registriert: 15. Dez 2004, 04:51
Wohnort: Erlangen
Kontaktdaten:

Beitrag von ojkastl » 16. Dez 2004, 13:37

Da hab ich mich unklar ausgedrückt. Dine Zeile kommt rein, natürlich entsprechend auf die DVD angepasst.

Antworten

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 2 Gäste