GELÖST -- Zuordnung PAKET <-> Repository

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
zongo
Beiträge: 117
Registriert: 09.04.2007 23:53:46

GELÖST -- Zuordnung PAKET <-> Repository

Beitrag von zongo » 22.06.2011 00:09:47

Hallo zusammen!

Gibt es eine Möglichkeit zu ermitteln aus welchem Repository ein Paket gezogen wurde?

Wie schaffe ich es, "meine" Pakete(alle sauber mit apt-get gezogen) den jeweiligen Repos aus der sources.list zuzuordnen?

Für jegliche Hinweise bin ich dankbar!
Zuletzt geändert von zongo am 23.06.2011 00:38:50, insgesamt 1-mal geändert.

Benutzeravatar
ivanovnegro
Beiträge: 275
Registriert: 18.06.2011 18:50:20

Re: Zuordnung PAKET <-> Repository

Beitrag von ivanovnegro » 22.06.2011 00:53:29

Du kannst z.B in Synaptic die einzelnen Kategorien durchgehen bei "Ursprung" opder schau nach mit "apt-cache policy <paket>", gibt alle möglichen Infos im Terminal aus.
Debian Wheezy Xfce 4.8

Benutzeravatar
zongo
Beiträge: 117
Registriert: 09.04.2007 23:53:46

Re: GELÖST -- Zuordnung PAKET <-> Repository

Beitrag von zongo » 23.06.2011 00:40:04

Danke!

Ich habe mich fast dämlich gesucht .... apt-cache policy XXX gibt tatsächlich auch das dazugehörige Repo aus.

apt-cache policy PAKET | grep -E ^.+500 | awk '{print $2,$3}' -- genau das, was ich haben wollte

Benutzeravatar
zongo
Beiträge: 117
Registriert: 09.04.2007 23:53:46

Re: GELÖST -- Zuordnung PAKET <-> Repository

Beitrag von zongo » 23.06.2011 00:59:13

Wer´s mal genau wissen will ....

dpkg -l | grep ^ii | awk '{print $2}' | xargs apt-cache policy | grep -E ^.+500 | sort | uniq -c | sort -rn -k1

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: GELÖST -- Zuordnung PAKET <-> Repository

Beitrag von rendegast » 23.06.2011 12:28:21

Die "500" taugt als Suchkriterium aber nur bedingt,
besser wäre der Wert von "Installed:" resp. "***", da auch aus einem nichtpriorisierten Repo installiert sein könnte.

Und es gibt ja auch noch die nicht mehr verfügbaren aber installierten mit Priority 100:
'aptitude search ?obsolete'
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
zongo
Beiträge: 117
Registriert: 09.04.2007 23:53:46

Re: GELÖST -- Zuordnung PAKET <-> Repository

Beitrag von zongo » 23.06.2011 14:03:59

rendegast, hast Recht!

Habe mich inzwischen auch ein bisschen eingehender damit beschäftigt und es gibt durchaus Raum für Optimierungen ;-)

Was mich aber wundert, das es kein Bordmittel dafür gibt sondern man sich selber etwas dafür stricken muss. Gerade wenn man Installationen/Systeme optimieren/verschlanken/ausmisten will, ist es doch hilfreich zu wissen wo welche Pakete herkommen und wieviele aus einem Repo tatsächlich in der Installation vorhanden sind. Alles nicht großartig notwendig solange man nur offizielle Debian-Repos nimmt, aber was ist mit Systemen die in der sources.list noch mehrere zusätzliche Repos eingetragen haben(debian-multimedia z.B.) und man diese wieder loswerden möchte, aber nicht weiß welche Pakete daraus gezogen wurden?

(Anmerkung: Arbeite ausschließlich mit apt-* auf Konsole, falls es in aptitude, Synaptic etc. eine solche Möglichkeit gibt, dann kenne ich sie mangels Nutzen bisher einfach noch nicht.)

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: GELÖST -- Zuordnung PAKET <-> Repository

Beitrag von rendegast » 23.06.2011 23:00:16

Eine Möglichkeit:

Code: Alles auswählen

aptitude search "?installed(?origin(.......))"
aptitude search "?installed(?archive(.......))"
Kombination
aptitude search "?installed(?origin(.......)?archive(.......))"
das sind die release-Werte o= und a= aus 'apt-cache policy'.

Siehe bezüglich der Kombinationsmöglichkeiten
/usr/share/doc/aptitude/html/en/ch02s04.htm
und speziell für die Suchparameter
/usr/share/doc/aptitude/html/en/ch02s04s05.htm

Beispiel anhand von stable / squeeze:

Code: Alles auswählen

$ apt-cache policy | grep release | egrep "=stable|squeeze" | egrep -o "o=.*"
o=Debian Backports,a=squeeze-backports,n=squeeze-backports,l=Debian Backports,c=non-free
o=Debian Backports,a=squeeze-backports,n=squeeze-backports,l=Debian Backports,c=contrib
o=Debian Backports,a=squeeze-backports,n=squeeze-backports,l=Debian Backports,c=main
o=Debian,a=stable-updates,n=squeeze-updates,l=Debian,c=non-free
o=Debian,a=stable-updates,n=squeeze-updates,l=Debian,c=contrib
o=Debian,a=stable-updates,n=squeeze-updates,l=Debian,c=main
o=Debian,a=stable,n=squeeze,l=Debian,c=non-free
o=Debian,a=stable,n=squeeze,l=Debian,c=contrib
o=Debian,a=stable,n=squeeze,l=Debian,c=main
o=Debian,a=stable,n=squeeze,l=Debian-Security,c=non-free
o=Debian,a=stable,n=squeeze,l=Debian-Security,c=contrib
o=Debian,a=stable,n=squeeze,l=Debian-Security,c=main
squeeze-backports und squeeze-updates wären allein anhand von "?archive" sortierbar.
Bei squeeze/security und normalem squeeze versagt leider auch die Kombination.

Code: Alles auswählen

aptitude search "?installed(?priority(...))"
hilft da nicht weiter, da es sich nicht um die apt-Priority, sondern eine Paket-Priority wie zBsp. "required" handelt.

Das Problem ist in diesem Fall wohl nicht so tragisch, da es eher darum geht,
Pakete externer Repos zu identifizieren.
Und da bieten die Merkmale bessere Möglichkeiten.




Die Benutzung ist leider tricky,
zBsp. schließe ich hier debian/stable + unstable aus, um die installierten Pakete aus ubuntu zu bekommen:

Code: Alles auswählen

aptitude search "?installed(?not( ?archive(stable) ?origin(debian) )  ?origin(ubuntu))"

Erklärung:

Code: Alles auswählen

aptitude search "?installed(?origin(ubuntu))"
listet auch die Pakete auf, die aus debian installiert sind, aber auch in ubuntu vorkommen, Bsp. lha:

Code: Alles auswählen

$ apt-cache policy dosemu lha  libclamunrar6
lha:
  Installiert: 1.14i-10.3
  Kandidat:    1.14i-10.3
  Versionstabelle:
 *** 1.14i-10.3 0
        500 http://ftp2.de.debian.org/debian/ squeeze/non-free i386 Packages
        -50 http://ftp2.de.debian.org/debian/ unstable/non-free i386 Packages
        -25 http://ftp2.de.debian.org/debian/ testing/non-free i386 Packages
        100 /var/lib/dpkg/status
     1.14i-10.3 0
       -111 http://de.archive.ubuntu.com/ubuntu/ karmic/multiverse i386 Packages
       -111 http://de.archive.ubuntu.com/ubuntu/ lucid/multiverse i386 Packages
       -111 http://de.archive.ubuntu.com/ubuntu/ maverick/multiverse i386 Packages
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
zongo
Beiträge: 117
Registriert: 09.04.2007 23:53:46

Re: GELÖST -- Zuordnung PAKET <-> Repository

Beitrag von zongo » 24.06.2011 00:14:15

Danke für die ausführliche Information!

Nach weiterem reinlesen und probieren in das Thema war ich bereits genau auf dem Zug und Du hast das Ergebnis quasi vorweggenommen ;-)

Beschäftige mich später, nach meinem Urlaub tiefergehend damit.

Antworten