Risposte:
package-cleanup --quiet --leavesdal pacchetto yum-utils elencherà i pacchetti della libreria a cui non fanno affidamento altri pacchetti. Sfortunatamente tende ad essere un po 'eccessivo. Sul mio sistema, ad esempio, ha suggerito di rimuovere libvirt. L'aggiunta --exclude-bindell'argomento aiuta. Se sei soddisfatto del suggerimento, quindi per ripulire i pacchetti, fai:
# package-cleanup --quiet --leaves --exclude-bin | xargs yum remove -y
DNF, il sostituto di yum da Fedora 22, fornisce anche un autoremovesottocomando modellato sull'autoremove apt-get / yum.
Esempi:
# dnf autoremove
che tenta di rimuovere tutti i pacchetti di dipendenze installati automaticamente e altrimenti non utilizzati - dovrebbe essere praticamente equivalente a apt-get autoremove.
# dnf autoremove examplepackage
che rimuove esempiopackage e tutte le sue dipendenze installate automaticamente (e altrimenti non utilizzate).
Yum ha il comando autoremove da Fedora 19, ed è documentato da Fedora 20 / RHEL 7.
L'uso è analogo all'implementazione di dnf, ad esempio:
# yum autoremove
o
# yum autoremove examplepackage
Yum supporta un'opzione di configurazione per modificare il comportamento predefinito del removesottocomando (ad es. Tramite /etc/yum.conf):
clean_requirements_on_remove=yes
Quando impostato, il successivo yum removetenta anche di rimuovere le dipendenze installate automaticamente se non sono necessarie per altri pacchetti.
Puoi anche provare temporaneamente questa opzione tramite qualcosa come:
# yum --setopt=clean_requirements_on_remove=1 remove examplepackage
(Per le versioni Fedora in cui il sottocomando yum autoremove non è disponibile e / o clean_requirements_on_removenon funziona.)
Sebbene durante l'installazione dei pacchetti le dipendenze installate siano contrassegnate come tali (sembra essere una funzionalità relativamente nuova di rpm / yum).
Puoi trovare dipendenze non necessarie tramite:
$ package-cleanup --leaves -q --all \
| xargs repoquery --installed --qf '%{nvra} - %{yumdb_info.reason}' \
| grep -- '- dep' \
| cut -d' ' -f1 > tmp
Questa riga di comando è ispirata alla sceneggiatura di fenris02 .
Dopo l'ispezione di tmp(e forse la cura) potresti rimuoverli tramite qualcosa del genere:
# xargs yum remove < tmp
adobe-releasetramiteyum localinstall
devi installare il plugin yum "remove-with-leaves":
# yum install yum-plugin-remove-with-leaves.noarch
una volta installato:
# yum remove --remove-leaves package
in bocca al lupo!
yum-plugin-remove-with-leaves.noarchinstallazione del pacchetto per l'usopackage-cleanup
# package-cleanup --orphans >/tmp/junk
modificare il /tmp/junkfile e rimuovere la prima riga che è informativa dalla riga di comando immettere quanto segue:
for file in `cat /tmp/junk`
do
yum remove $file
done
apt-get autoremovefa. apt-get (8) dice: "autoremove è usato per rimuovere i pacchetti che sono stati installati automaticamente per soddisfare le dipendenze di alcuni pacchetti e che non sono più necessari."
NOTA: questa risposta è corretta ma si applica solo a RHEL 7+ e Fedora 20+ (dove autoremove è stato aggiunto come nuova funzionalità).
# yum autoremove
Basta confermare per rimuovere i pacchetti selezionati.
Basandosi sulla risposta di Larry Mohr :
package-cleanup --orphans | sed '1d' | sed '/^ * /d' | sed '/Loading mirror speeds from cached hostfile/d' | xargs sudo yum remove
(Include il salto per il mirroring più veloce, se ti chiedi.)
In Fedora, il pacchetto orfano non significa nessun candidato candidato da aggiornare!
Se i pacchetti orfani sono stati generati da te, disabiliti yum.repos.d / some.conf.
yum distro-sync
Altri pacchetti orfani, il comando può essere pericoloso.
yum remove $(package-cleanup --orphans)
oppure, basta usare il comando di sicurezza.
yum remove name-of-page
Un altro modo per non causare questi problemi è utilizzare le transazioni.
Dopo aver installato il sistema di base, durante l'installazione con yum, crea transazioni. Quando si intende rimuovere le cose, ripristinare le transazioni.
netbeans-platforme la pulizia dei pacchetti elenca alcune cose ma in realtà nessuna dellenetbeans-platformdipendenze precedentemente installate (usando Fedora 17).