¿Cómo eliminar todos los paquetes dependientes instalados mientras se elimina un paquete en Centos 7?

8

Estoy usando CentOS 7. Instalé okular, que es un visor de PDF, con el comando:

sudo yum install okular

Como puede ver en la imagen a continuación, instaló 37 paquetes dependientes para instalar okular.

dependencias instaladas

Pero no estaba satisfecho con las características de la aplicación y decidí eliminarla. El problema es que si lo elimino con el comando:

sudo yum autoremove okular

Solo elimina cuatro paquetes dependientes.

paquetes eliminados con autoremove

Y si lo elimino con el comando:

sudo yum remove okular

Solo elimina un paquete que es okular.x86_64.

Ahora, mi pregunta es si hay una manera de eliminar los 37 paquetes instalados con un comando o ¿tengo que eliminarlos uno por uno?

ukll
fuente

Respuestas:

17

Personalmente, no me gustan los complementos de yum porque, en mi experiencia, no funcionan la mayor parte del tiempo.

Puede usar el yum historycomando para ver su historial de 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

Puede encontrar información sobre la transacción haciendo yum history info <transaction id>. Entonces:

yum history info 19le diría todos los paquetes que se instalaron con la transacción 19 y la línea de comando que se utilizó para instalar los paquetes. Si desea deshacer la transacción 19, debería ejecutarla yum history undo 19.

Alternativamente, si solo desea deshacer la última transacción que realizó (instaló un paquete de software y no le gustó), podría simplemente hacer yum history undo last

Jason Powell
fuente
En primer lugar, gracias por su excelente respuesta. Y en segundo lugar, cuando lo hice sudo yum history, mostró solo acciones con id 30 a 49. ¿Hay alguna manera de ver el historial de todas las acciones (incluso con id 1-29)?
ukll
1
¡De nada! Sí, hay una manera de mostrar toda tu historia. Solo hazlo yum history list all.
Jason Powell
8

yum remove package_name eliminará solo ese paquete y todas sus dependencias.

yum autoremove eliminará las dependencias no utilizadas

Para eliminar un paquete con sus dependencias, debe instalar el yumcomplemento llamado:remove-with-leaves

Para instalarlo escriba:

yum install yum-plugin-remove-with-leaves

Para eliminar el package_nametipo:

yum remove package_name --remove-leaves
GAD3R
fuente
Intenté tu respuesta, no funciona.
ukll