Puedo enumerarlos usar
lista de sudo yum instalada
pero, ¿cómo hacer que se muestren cuando se instalaron?
Puedo enumerarlos usar
lista de sudo yum instalada
pero, ¿cómo hacer que se muestren cuando se instalaron?
Respuestas:
Como root (o usando sudo
), use la yum
opción history
.
[root@fedora ~]# yum history list
Loaded plugins: langpacks, presto, refresh-packagekit
ID | Command line | Date and time | Action(s) | Altered
-------------------------------------------------------------------------------
250 | -y update google-chrome- | 2013-01-30 18:02 | Update | 1 EE
249 | -y update | 2013-01-25 07:11 | Update | 22
248 | -y update | 2013-01-23 17:56 | Update | 12
247 | -y update | 2013-01-23 08:41 | Update | 9 EE
246 | -y update | 2013-01-20 21:49 | Update | 4
245 | -x kernel* update | 2013-01-07 08:11 | Update | 3
Puede ver los paquetes y los cambios para una yum
transacción específica :
[root@fedora ~]# yum history info 250
Loaded plugins: langpacks, presto, refresh-packagekit
Transaction ID : 250
Begin time : Wed Jan 30 18:02:31 2013
Begin rpmdb : 1624:34a60f2e27ebe4d959f1473055da42645705b96f
End time : 18:02:59 2013 (28 seconds)
End rpmdb : 1624:f4ef7af3a97b1f922f41803ba6b9578a7abe3e71
User : User <user>
Return-Code : Success
Command Line : -y update google-chrome-stable.x86_64
Transaction performed with:
Installed rpm-4.9.1.3-1.fc16.x86_64 @updates
Installed yum-3.4.3-25.fc16.noarch @updates
Installed yum-metadata-parser-1.1.4-5.fc16.x86_64 @koji-override-0/$releasever
Installed yum-presto-0.7.1-1.fc16.noarch @koji-override-0/$releasever
Packages Altered:
Updated google-chrome-stable-24.0.1312.56-177594.x86_64 @google-chrome
Update 24.0.1312.57-178923.x86_64 @google-chrome
Scriptlet output:
1 Redirecting to /bin/systemctl start atd.service
Puede ver los paquetes específicos del historial con:
[root@fedora ~]# yum history packages-list yum
Loaded plugins: langpacks, presto, refresh-packagekit
ID | Action(s) | Package
-------------------------------------------------------------------------------
148 | Updated | yum-3.4.3-24.fc16.noarch EE
148 | Update | 3.4.3-25.fc16.noarch EE
94 | Updated | yum-3.4.3-23.fc16.noarch
94 | Update | 3.4.3-24.fc16.noarch
52 | Updated | yum-3.4.3-7.fc16.noarch
52 | Update | 3.4.3-23.fc16.noarch
2 | Updated | yum-3.4.3-5.fc16.noarch EE
2 | Update | 3.4.3-7.fc16.noarch EE
1 | Install | yum-3.4.3-5.fc16.noarch
man 8 yum
o yum help history
enumerará más opciones que son posibles con la opción de historial.
No creo que eso yum
pueda hacer eso, pero rpm
puede:
rpm --queryformat="%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}: %{INSTALLTIME:date}\n" -qa
producirá una lista de entradas como:
firefox-18.0-1.fc18.x86_64: Mon 14 Jan 2013 13:47:42 GMT
rpm -qa --last
Pregunté y respondí una pregunta similar en el sitio de preguntas y respuestas de Fedora .
Resulta que Yum almacena su historial en una base de datos SQLite en /var/lib/yum/history
. Pude inventar esta unión SQL que muestra todos los paquetes instalados manualmente junto con su fecha y hora de instalación.
En mi caso, solo estaba interesado en los paquetes que había instalado manualmente, para poder crear un nuevo sistema con una herramienta similar a las instaladas en mi sistema original.
El siguiente comando imprime cada paquete instalado manualmente , la identificación de la transacción, la fecha y el yum
comando del historial. Tenga en cuenta que el nombre de la base de datos será diferente en su sistema.
$ sudo sqlite3 /var/lib/yum/history/history-2014-12-03.sqlite "select c.tid, datetime(t.timestamp, 'unixepoch'), c.cmdline from trans_cmdline as c join trans_beg as t where c.tid = t.tid"
Ejemplo de salida (columnas: ID de transacción, fecha, comando):
4|2015-02-21 20:28:03|install mutt wget emacs coreutils
5|2015-02-21 20:28:37|install firefox
6|2015-02-21 20:35:02|install pgp-tools
LANG=en_US.UTF-8 sudo yum history stats | grep -Po '(?<=File {8}: /)(.+)' --color=never