fragen stichworte

RPM-Paket als automatisch installiert markieren

Auf Debian-Systemen kann ich mit aptitude markauto und aptitude unmarkauto Pakete als manuell oder automatisch installiert markieren. Ich verwende dies, um nicht benötigte Pakete zu entfernen, indem ich die Pakete markiere, von denen ich weiß, dass ich sie möchte. Dann entfernt apt-get autoremove alle nicht benötigten Pakete.

Ich bin jetzt auf einem Fedorasystem und möchte eine ähnliche Funktion in RPM oder YUM oder einem anderen Programm haben. Hat rpm/yum sogar ein Konzept von manuell/automatisch installierten Paketen wie Debian-Systemen?

antworten

Zumindest neuere yum-Versionen (getestet auf Fedora 20 mit yum 3.4.3) können zwischen manuell installierten Paketen und Paketen, die als Abhängigkeiten installiert sind, unterscheiden. Diese Information wird in yumdb mit dem Schlüssel "reason" gespeichert, der entweder auf "user" oder "dep" gesetzt werden kann.

# yumdb set reason dep [package name or wildcard]

sollte äquivalent zu "aptitude markauto" sein. Wenn Sie keinen Paketnamen angeben, wird die Änderung auf alle Pakete angewendet. Ich würde das nicht tun, der weniger radikale Weg ist die Verwendung von

# yumdb search reason user

und manuell entfernen Sie die Pakete, die Sie nicht möchten.

Wenn Sie

ausführen  
# yum autoremove

Alle als "dep" gekennzeichneten Pakete werden entfernt, wenn sie nicht mehr von anderen Paketen referenziert werden. Sollte äquivalent zu "aptitude autoremove" sein.

Pakete, die yum nicht verwenden (zB rpm -i), haben möglicherweise nicht den Schlüssel "reason". Ich nehme an, das Standardverhalten von autoremove ist, sie als "user" -Pakete zu behandeln, aber sie werden nicht mit der "yumdb search" aufgelistet " Befehl.

Nein, aber es gibt keinen Grund, warum man kein yum-Plugin schreiben könnte, um diese Fähigkeit zu bieten.