Risposte:
package-cleanup --quiet --leaves
dal 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-bin
dell'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 autoremove
sottocomando 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 remove
sottocomando (ad es. Tramite /etc/yum.conf):
clean_requirements_on_remove=yes
Quando impostato, il successivo yum remove
tenta 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_remove
non 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-release
tramiteyum 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.noarch
installazione del pacchetto per l'usopackage-cleanup
# package-cleanup --orphans >/tmp/junk
modificare il /tmp/junk
file 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 autoremove
fa. 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-platform
e la pulizia dei pacchetti elenca alcune cose ma in realtà nessuna dellenetbeans-platform
dipendenze precedentemente installate (usando Fedora 17).