• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Probleme bei Schritt für Schritt Anleitung: Suse DVD in apt

cero

Guru
Ich habe alles wie in der Anleitung gemacht. Es wurde auch alles erstellt. Nachdem ich aptate und apt update gemacht habe müsste doch in Verzeichnis RPMS.Suse_DVD_RPMs etwa stehen
wie z.B.
Code:
lrwxrwxrwx  1 root root 43 2004-12-16 22:06 a2ac-1.1-514.i586.rpm -> ../../../../suse/i586/a2ac-1.1-514.i586.rpm
Bei mir ist dort aber nichts - das Verzeichnis ist leer. Ich habe den Inhalt der SuSE-DVD auf eine FAT32 Partition kopiert (Platzgründe) - kann das der Grund sein?

Ich nähere mich aber langsam dem Ziel. Bin auch schon recht begeistert von apt :)
 

wdso

Newbie
fat32 könnte deshalb Probleme machen, weil es meines Wissens keine symlinks unterstützt :roll:
 
OP
C

cero

Guru
Das würde erklären, warum aptate ohne Fehlermeldung durchläuft, aber nichts in besagtes Verzeichnis schreibt.
Ich werde mal etwas Platz von der Win-Partition abzwacken und mit ReiserFS formatieren. Danach sollte dann hoffentlich alles funktionieren.
Danke für den Tip :)
 

oc2pus

Ultimate Guru
du musst dafür sorgen das das Verzeichnis der Meta Informationen auf eine nicht vfat32 Partion kommt.

d.h. deine topdir Definition in aptate.conf MUSS auf einer anderen Partion liegen.

Die einzelnen Komponenten werden relativ zu topdir angelegt. D.h du musst den Pfad zu deiner vfat32 Partion plus Verzeichnisse relativ angeben.

Beispiel:
Code:
<opt signed-pkgs-only="no">
  <topdir>/local</topdir>
  
  <distribution id="suse91">
    <name>SuSE</name>
    <version>9.1</version>
    <architecture>i386</architecture>

    <component>
      <name>EigenePakete-9.1</name>
      <url>../mnt/DVD-9.1</url>
    </component>
  </distribution>
</opt>
 

Dojo

Newbie
Hi!
Ich habe es auch mal versucht.
Mein System ist auf SuSE 8.2. Habe also alles wie nach Anleitung gemacht, natürlich unter der Berücksichtigung, dass ich die 8.2 Pakete eingespielt habe. Schön, Konfiguration fertig, SuSE 9.2 DVD gemountet und dann aptate ausgeführt.
Nun erhalte ich folgende Fehlermeldung:

Code:
/usr/bin/perl: relocation error: /usr/lib/perl5/site_perl/5.8.0/i586-linux-thread-multi/auto/XML/LibXML/LibXML.so: undefined symbol: xmlThrDefPedanticParserDefaultValue
error: incorrect perl configuration

Kann mir da vielleicht jemand helfen?
Ich muß dazu sagen, das es ein dedizierter Server ist, wo ich mit apt KEIN komplettes upgrade durchgeführt habe. (Never touch a running System) Die Perl Pakete sind allerding auf dem neuesten Stand.
 
OP
C

cero

Guru
@oc2pus
D.h. ich muss alles auf eine Linux-Partition verschieben - wie ich schon gepostet habe. Dann muss die aptate.conf entsprechend geändert werden und alles sollte funktionieren.

Sehe ich doch richtig, oder?
 

oc2pus

Ultimate Guru
@cero
nicht alles, deine RPM-Kopien auf vfat32 können bleiben. Normalerweise legt aptate in dem Verzeichnis wo die RPMs stehen ein Subdirectory apt an. Dort werden die Links und sonstige Metainformationen gespeichert.

In deinem Fall geht das nicht wegen vfat32. Aber du kannst in der Konfiguration bestimmen wo die Metainfos gespeichert werden. Es sollte nur eine linux-Partition sein.

Beispiel:
Code:
/vfat32/RPMs     hier stehen deine RPMs
/home/<user>/apt     hier stehen die Metainfo und die links

dann ist in der aptate.conf folgendes einzusetzen
topdir=/home/<user>/apt
und
url=../../vfat32/RPMs

WICHTIG: die url wird relativ zu topdir betrachtet!
 
OP
C

cero

Guru
@oc2pus
OK, habe verstanden (dauert manchmal etwas länger ;-) )
Ich werde mal etwas basteln.

Danke.
 

Dojo

Newbie
Nächster Fehler:
Code:
main:/srv/ftp/pub/Suse9.2 # aptate
Distribution(s) to be processed: suse92
Processing: suse92
Archive structure: 1 => SuSE/9.2-i386
Entering cache build stage
 SuSE_DVD_RPMs     -> RPMs added:   3932
                   -> RPMs removed:    0
Entering apt repository creation stage
 SuSE_DVD_RPMs     -> Bin: MD5/GPG: 3932/3932
                   -> Src: MD5/GPG:    0/0
 security          -> Bin: MD5/GPG:    0/0
                   -> Src: MD5/GPG:    0/0
Entering apt database building stage
 SuSE_DVD_RPMs     -> Bin: 3932/3932
 SuSE_DVD_RPMs     -> Src:
Creating global release file: done

error: the created repository has not been installed, as
there is not enough space.
Size of created repository: 30049280
Calculated available space: 21679800
aptate finished successfully
main:/srv/ftp/pub/Suse9.2 # df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/hda2              75G   54G   21G  73% /
shmfs                 248M     0  248M   0% /dev/shm
/srv/ftp/pub/Suse9.2/SU920.001_2.mdf
                      7.5G  7.5G     0 100% /srv/ftp/pub/Suse9.2/DVD_SuSE_92
main:/srv/ftp/pub/Suse9.2 #

Wo soll jetzt zu wenig Platz sein? Auf der Platte habe ich noch 20 GB Frei. Oder versucht aptate in das gemountete Image zu schreiben? Dachte es werden nur Links angelegt. Eine Zeit lang konnte ich auch die links unter tmp_suse sehen. Nu ist aber alles wieder weg.

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

<opt signed-pkgs-only="no">
  <topdir>/srv/ftp/pub/Suse9.2/</topdir>

  <distribution id="suse92">
    <name>SuSE</name>
    <version>9.2</version>
    <architecture>i386</architecture>

    <component>
      <name>SuSE_DVD_RPMs</name>
      <url>DVD_SuSE_92/suse</url>
      <accept>/i386/|/i586/|/i686/|/noarch/</accept>
    </component>
  </distribution>
</opt>

Habe ich eine Einstellung übersehen?
 

oc2pus

Ultimate Guru
Oder versucht aptate in das gemountete Image zu schreiben? Dachte es werden nur Links angelegt.

ja das tut es ;)
es werden links angelegt UND die apt-Metadaten!!

Lösung:
in der aptate.conf
topdir auf ein Verzeichnis setzen, wo aptate hinschreiben kann
die url wo die RPMs stehen dann relativ zum topdir angeben!!
 

Dojo

Newbie
öömmm, das habe ich.

/srv/ftp/pub/Suse9.2/

ist ein normales Verzeichnis.

/srv/ftp/pub/Suse9.2/DVD_SuSE_92

ist das Verzeichnis wo das Image hingemountet wird.
Und so habe ich es auch in der aptate.conf angegeben.

die Ausgabe von df -h habe ich ja auch schon gepostet. Da kann man es auch noch mal nachlesen, wo das Image eingehängt ist.
Und wenn ich aptate als root ausführe, sollte es mit den Rechten auch keine Probleme geben. Und dann verstehe ich nicht, wie aptate dies berechnen konnte, wenn tatsächlich versucht wird in das Image zu schreiben

Calculated available space: 21679800

Leider weiß ich nicht, wie ich die aptate.conf noch anpassen muß.
 

oc2pus

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

<opt signed-pkgs-only="no">
  <topdir>/home/dojo-der-newbie/</topdir>

  <distribution id="suse92">
    <name>SuSE</name>
    <version>9.2</version>
    <architecture>i386</architecture>

    <component>
      <name>SuSE_DVD_RPMs</name>
      <url>../../srv/ftp/pub/Suse9.2/DVD_SuSE_92/suse</url>
      <accept>/i386/|/i586/|/i686/|/noarch/</accept>
    </component>
  </distribution>
</opt>

url RELATIV zu topdir UND schreibbares topdir !!
 

Dojo

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

<opt signed-pkgs-only="no">
  <topdir>/srv/ftp/pub/Suse9.2/</topdir>

  <distribution id="suse92">
    <name>SuSE</name>
    <version>9.2</version>
    <architecture>i386</architecture>

    <component>
      <name>SuSE_DVD_RPMs</name>
      <url>DVD_SuSE_92/suse</url>
      <accept>/i386/|/i586/|/i686/|/noarch/</accept>
    </component>
  </distribution>
</opt>
<topdir>/srv/ftp/pub/Suse9.2/</topdir>
IST schreibbar für mich
<url>DVD_SuSE_92/suse</url>
IST relativ zu topdir.
Hier noch mal das Dir:

Code:
main:/srv/ftp/pub/Suse9.2 # la
insgesamt 4
drwxrwxr-x    5 root     users         152 2004-12-21 17:10 .
drwxrwxr-x    4 root     ftp-pub        96 2004-11-10 18:05 ..
dr-xr-xr-x    7 root     root         4096 2004-10-06 20:20 DVD_SuSE_92
drwxrwxr-x    4 root     users          96 2004-12-21 15:26 apt
drwxrwxr-x    2 root     users         272 2004-12-21 17:10 images
lrwxrwxrwx    1 root     users          12 2004-12-21 12:49 install -> DVD_SuSE_92/
main:/srv/ftp/pub/Suse9.2 #
das Verzeichnis apt ist von aptate angelegt worden. Das Verzeichnis DVD_SuSE_92 ist das eingebundene Image der DVD. Und im Verzeichnis /srv/ftp/pub/Suse9.2 habe ich schreibrechte. Auch im Verzeichnis apt. Darf die url denn kein Unterverzeichnis von topdir sein? Oder wird versucht ein identisches Verzeichnis wie DVD_SuSE_92 anzulegen? Ich kann doch nicht so blöd sein :cry:
 

oc2pus

Ultimate Guru
Code:
/srv/ftp/pub/Suse9.2/SU920.001_2.mdf
                      7.5G  7.5G     0 100% /srv/ftp/pub/Suse9.2/DVD_SuSE_92

wie willst du da noch was hinschreiben ??????
 

Dojo

Newbie
Das was zu 100% belegt ist, ist die Angabe von dem gemounteten Image. Das Verzeichnis /srv/ftp/pub/Suse9.2/DVD_SuSE_92 ist somit voll. Aber das ist ja auch nicht mein topdir.
 
OP
C

cero

Guru
@oc2pus
So, jetzt funktioniert alles.
Danke für Deine Hilfe (auch allen Anderen sei gedankt).
Führst Du noch Deine Liste der umgestellten Leute? Wenn ja, kannst Du mich dazu zählen. Apt ist wirklich genial.

Jetzt werde ich mich mal Deinem Tool zuwenden.
 

Dojo

Newbie
Soo, ich habe es nun geschafft. Hier mein Vorgehen:
Sp wie oben bereits beschrieben, wurde bei mir angemeckert nicht genügend Platz auf der Platte zu haben. Es waren laut df -h 21 GB frei

Code:
main:/srv/ftp/pub/Suse9.2 # df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/hda2              75G   54G   21G  73% /
shmfs                 248M     0  248M   0% /dev/shm

Die Fehlermeldung sah so aus:

Code:
error: the created repository has not been installed, as
there is not enough space.
Size of created repository: 30049280
Calculated available space: 21679800
aptate finished successfully

Hier sieht man, das der freie Platz von 21 GB auch erkannt wurde -> Calculated available space: 21679800

Jetzt frage ich mich, wie aptate auf einen benötigten Plattenplatz von -> Size of created repository: 30049280
kommt.

Jetzt habe ich meine Platte mal was aufgeräumt und mehr wie 30 GB frei bekommen. Nun ja, danach hat alles funktioniert, und aptate hat die 30 GB natürlich nicht benötigt, auch wenn es vorher so berechnet wurde.

Also gehe ich mal davon aus, dass aptate (oder was auch immer dafür zuständig ist) den benötigten Festplattenplatz falsch berechnet. Jedenfalls kann ich mir es nicht anders erklären.
 

oc2pus

Ultimate Guru
Interessant ;)

dann sei so gut und schreibe den Programmierern von apt4rpm eine email. Die Adresse findest du mit

rpm -qi apt4rpm
apt4rpm-devel@lists.sourceforge.net

gib alle deine Infos mit. Es sieht so aus, das in deinem "extrem" Fall die Summe der RPMs (Grösse) gegen das Filesystem geprüft wird... du hast einen Bug gefunden.
 
Oben