วิธีแสดงรายการแพ็กเกจที่ติดตั้งทั้งหมดใน fedora พร้อมเวลาของการติดตั้ง


13

ฉันสามารถแสดงรายการพวกเขาใช้

ติดตั้งรายการ sudo yum แล้ว

แต่จะทำให้ปรากฏเมื่อติดตั้งแต่ละรายการได้อย่างไร

คำตอบ:


17

เป็นราก (หรือใช้sudo) ให้ใช้ตัวเลือกyumhistory

[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   

คุณสามารถดูแพ็คเกจและการเปลี่ยนแปลงสำหรับyumธุรกรรมเฉพาะ:

[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

คุณสามารถดูแพ็คเกจเฉพาะประวัติได้ด้วย:

[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หรือyum help historyจะแสดงรายการตัวเลือกเพิ่มเติมที่เป็นไปได้ด้วยตัวเลือกประวัติ


1
รายการล่าสุดของ yumก็มีประโยชน์เช่นกัน
Matthew Hannigan

10

ฉันไม่คิดว่าyumสามารถทำได้ แต่rpmสามารถ:

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

จะสร้างรายการของรายการที่ชอบ:

firefox-18.0-1.fc18.x86_64: Mon 14 Jan 2013 13:47:42 GMT

2
ด้วยรุ่นปัจจุบันของรอบต่อนาทีคุณสามารถรับรายการดังกล่าวด้วยrpm -qa --last
Andre Holzner

5

ฉันถามและตอบคำถามที่คล้ายกันใน Fedora Q & ไซต์

แต่กลับกลายเป็นว่ายำเก็บประวัติในฐานข้อมูล SQLite /var/lib/yum/historyใน ฉันสามารถรวม SQL นี้เข้าด้วยกันซึ่งแสดงแพ็คเกจที่ติดตั้งด้วยตนเองทั้งหมดพร้อมกับวันที่และเวลาในการติดตั้ง

ในกรณีของฉันฉันสนใจแพ็คเกจที่ฉันติดตั้งด้วยตนเองเท่านั้นดังนั้นฉันจึงสามารถสร้างระบบใหม่ด้วยเครื่องมือที่คล้ายกับที่ติดตั้งบนระบบดั้งเดิมของฉัน

คำสั่งต่อไปนี้จะพิมพ์ทุกแพ็คเกจที่ติดตั้งด้วยตนเองรหัสธุรกรรมวันที่และyumคำสั่งจากประวัติ โปรดทราบว่าชื่อฐานข้อมูลจะแตกต่างกันในระบบของคุณ

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

ตัวอย่างผลลัพธ์ (คอลัมน์: รหัสธุรกรรม, วันที่, คำสั่ง):

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

หากคุณต้องการรับไฟล์ฐานข้อมูล SQLite ที่ yum เก็บประวัติไว้ให้รันคำสั่งต่อไปนี้:LANG=en_US.UTF-8 sudo yum history stats | grep -Po '(?<=File {8}: /)(.+)' --color=never
Rockallite
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.