¿Cómo crear una lista de todas las aplicaciones que se instalaron manualmente?

10

Uso Fedora y me gustaría tener todos los nombres de paquetes en una lista, pero solo los que instalé yo mismo, no los predeterminados.

78c32b76b8368b2
fuente
Intente mirar el yum.logarchivo, debe tener un historial de paquetes instalados. Sin embargo, creo que eso incluye todas las dependencias también. Creo que está ubicado en /var/log/yum.log.
Sr. Shickadance
Solo para su información, he agregado una solicitud de función para DNF para cubrir este caso de uso. DNF realmente rastrea esta información, pero que yo sepa no tiene una interfaz de usuario para mostrarla. bugzilla.redhat.com/show_bug.cgi?id=1278124
mattdm

Respuestas:

6

Eso es difícil, porque en lo que respecta a RPM no hay mucha diferencia entre los paquetes que Anaconda instaló como parte de la instalación y los que ha instalado desde entonces. De hecho, si personalizó la selección de paquetes durante la instalación, solo saber lo que se instaló después no lo ayuda a saber qué personalizaciones aplicar.

Puede usar yum historypara acceder al historial y ver cuándo se instalaron los paquetes, pero eso incluiría cualquier actualización de los paquetes instalados en el momento de la instalación.

Otra técnica sería generar una lista tan pronto como la instales, así:

rpm --queryformat="%{NAME}.%{ARCH}\n" -qa | sort > base.list

luego puedes generar una nueva lista:

rpm --queryformat="%{NAME}.%{ARCH}\n" -qa | sort > new.list

luego usa commpara encontrar las diferencias:

comm -13 base.list new.list

pero es una gran molestia y no estoy seguro de que haya un gran punto si todo lo que quiere hacer es grabar lo que está instalado para fines de copia de seguridad.

Si eso es lo que desea, simplemente genere una lista con el comando anterior y luego puede intentar instalar esos paquetes en una máquina recién instalada con:

yum install `cat package.list`

e ignorará todo lo que ya esté instalado.

TomH
fuente
esto funciona como un encanto!
sergiofbsilva