como remover todos os pacotes dependentes instalados enquanto remove um pacote no centos 7?

8

Estou usando o CentOS 7. Instalei o okular, que é um visualizador de PDF, com o comando:

sudo yum install okular

Como você pode ver na figura abaixo, instalou 37 pacotes dependentes para instalar o okular.

dependências instaladas

Mas não estava satisfeito com os recursos do aplicativo e decidi removê-lo. O problema é que, se eu removê-lo com o comando:

sudo yum autoremove okular

Ele remove apenas quatro pacotes dependentes.

pacotes removidos com remoção automática

E se eu removê-lo com o comando:

sudo yum remove okular

Ele remove apenas um pacote okular.x86_64.

Agora, minha pergunta é que existe uma maneira de remover todos os 37 pacotes instalados com um comando ou eu tenho que remover todos eles um por um?

ukll
fonte

Respostas:

17

Pessoalmente, eu não gosto de plugins yum porque eles não funcionam muito tempo, na minha experiência.

Você pode usar o yum historycomando para visualizar seu histórico do yum.

[root@testbox ~]# yum history
Loaded plugins: product-id, rhnplugin, search-disabled-repos, subscription-manager, verify, versionlock
ID     | Login user               | Date and time    | Action(s)      | Altered
----------------------------------------------------------------------------------
19 | Jason <jason>  | 2016-06-28 09:16 | Install        |   10

Você pode encontrar informações sobre a transação fazendo yum history info <transaction id>. Assim:

yum history info 19diria a você todos os pacotes que foram instalados com a transação 19 e a linha de comando que foi usada para instalar os pacotes. Se você deseja desfazer a transação 19, você executaria yum history undo 19.

Como alternativa, se você apenas deseja desfazer a última transação que você fez (você instalou um pacote de software e não gostou), você pode simplesmente fazer yum history undo last

Jason Powell
fonte
Em primeiro lugar, obrigado por sua excelente resposta. Em segundo lugar, quando o fiz sudo yum history, ele mostrou apenas ações com os IDs 30 a 49. Existe uma maneira de exibir todo o histórico de ações (incluindo o ID 1-29)?
precisa saber é
1
De nada! Sim, existe uma maneira de mostrar toda a sua história. Apenas faça yum history list all.
Jason Powell
8

yum remove package_name removerá apenas esse pacote e todas as suas dependências.

yum autoremove irá remover as dependências não utilizadas

Para remover um pacote com suas dependências, você precisa instalar o yumplugin chamado:remove-with-leaves

Para instalá-lo, digite:

yum install yum-plugin-remove-with-leaves

Para remover o package_nametipo:

yum remove package_name --remove-leaves
GAD3R
fonte
Eu tentei sua resposta, não funciona.
precisa saber é