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

[solved] Namen aller installierten Programme anzeigen?

Moin, Moin,

ich hock hier mal vor einer SuSE-Kiste und komm nicht recht weiter. Ich möchte mir von allen installierten Paketen die Namen ohne Versionsnummern anzeigen lassen. Mit
Code:
rpm -qa --qf %{name}
klappt es zwar prinzipiell, aber leider werden die Namen damit aneinander gehängt und nicht so schön untereinander wie bei rpm -qa alleine.
Hat wer 'ne Idee?

Das Ganze geht darum zwei Installationen miteinander zu vergleichen ob auf der "neuen" wirklich alle benötigten Pakete drauf sind. Wie es manchmal so ist, läuft ein Programm darauf nicht richtig und ich versuche rauszufinden ob zumindest alle Pakete drauf sind. Dazu will ich eben von beiden Systemen solch eine Liste erstellen und per merge vergleichen.
 
A

Anonymous

Gast
Semi-OT:

(Kleine Anregung)

Alles in einer Zeile mit einem Leerzeichen als Trenner, damit man das als Paketliste direkt wieder mit z.B.

Code:
zypper in $(cat Paketliste)

installieren kann.

Das ist meine "Sicherung des Status Quo", die ich regelmässig ausführe, besonders vor Experimenten mit unstable-Paketen hat sich das bisher auch bestens bewährt.

Geht dann in etwa so:

Code:
rpm -qa --queryformat '%{name}\n' | grep -v gpg-pubkey | tr '\n' ' ' > Paketliste

Die gpg-Keys muss man "herausgreppen", da sie nicht als einzelne Pakete verfügbar sind.

Nach einem Missgeschick bzw. bevor man z.B. eine neue Version installiert, hat man so eine Paketliste, die einen recht schnell auch bei einer neuen Version softwaremässig wieder auf den "alten Stand" bringt und zwar unabhängig vom verwendeten Paketmanager, weil das Ganze logischerweise auch mittels

Code:
smart install $cat(Paketliste)

apt install $cat(Paketliste)

funktioniert.

Nur wenn Pakete obsolet geworden sind, dann gibts logischerweise "megger", die muss man dann eben (nach erhaltener Fehlermeldung des Paketmanagers) entsprechend entfernen/abändern, Shellspezialisten (ich bin sicher keiner) machen das dann z.B. mit "sed".

Die fehlenden gpg-keys fragt dann der Paketmanager bei der Installaion ab und installiert sie passend zu den neuen Repos nach (sofern sich da was verändert hat).

Hat hier bisher ganz gut funktioniert, der nächste "Härtetest" steht dann beim Upgrade auf 11.0 an.

Greetz,

RM

P.S. Das Ganze ist natürlich nahezu beliebig erweiterbar, will man eine alphabetische Liste, dann "pipet" man das vor dem tr-Befehl noch durch "sort", will man eine chronologische Liste, dann gibt man dem rpm-Befehl noch ein --last mit (Datum mit cut oder awk "wegschnibbeln" nicht vergessen) usw usf ...
 
OP
Geier0815

Geier0815

Guru
Ich danke euch. rpm -qa --qf "%{name}\n" | sort > PAKETLISTE brachte genau das was ich mir gewünscht hatte.

@ Rain_Maker: Würdest Du deinen Tip evtl. auch mal ins Wiki stellen? Ich könnte mir vorstellen dass das vielen Usern helfen könnte.
 
Oben