Comment lister tous les packages installés dans fedora avec l'heure de l'installation

13

Je peux les lister utiliser

sudo yum list installé

mais comment les faire afficher lors de leur installation?

user1655072
la source

Réponses:

17

En tant que root (ou en utilisant sudo), utilisez l' yumoption 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   

Vous pouvez afficher les packages et les modifications pour une yumtransaction spécifique :

[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

Vous pouvez afficher les packages spécifiques à l'historique avec:

[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 yumou yum help historylistera plus d'options possibles avec l'option historique.

George M
la source
1
la liste de miam récente est également utile
Matthew Hannigan
10

Je ne pense pas que cela yumpuisse faire cela, mais rpmpeut:

rpm --queryformat="%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}: %{INSTALLTIME:date}\n" -qa

produira une liste d'entrées comme:

firefox-18.0-1.fc18.x86_64: Mon 14 Jan 2013 13:47:42 GMT
TomH
la source
2
avec les versions actuelles de rpm, vous pouvez également obtenir une telle liste avecrpm -qa --last
Andre Holzner
5

J'ai posé et répondu à une question similaire sur le site de questions-réponses de Fedora .

Il s'avère que Yum stocke son historique dans une base de données SQLite dans /var/lib/yum/history. J'ai pu concocter cette jointure SQL qui montre tous les packages installés manuellement ainsi que leur date et heure d'installation.

Dans mon cas, je n'étais intéressé que par les packages que j'avais installés manuellement, afin de pouvoir créer un nouveau système avec un outil similaire à ceux installés sur mon système d'origine.

La commande suivante imprime chaque package installé manuellement , l'ID de transaction, la date et la yumcommande de l'historique. Notez que le nom de la base de données sera différent sur votre système.

$ 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"

Exemple de sortie (colonnes: identifiant de transaction, date, commande):

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
Steve HHH
la source
Si vous souhaitez obtenir le fichier de base de données SQLite exact où yum stocke son historique, exécutez la commande suivante:LANG=en_US.UTF-8 sudo yum history stats | grep -Po '(?<=File {8}: /)(.+)' --color=never
Rockallite