จะตรวจสอบเวอร์ชั่นของแพ็คเกจที่มีในระบบ rpm ได้อย่างไร?


57

หากฉันต้องการตรวจสอบแพ็คเกจที่มีอยู่ใน Debian ฉันจะเรียกใช้apt-cache policy pkgnameในกรณีที่wajigให้:

wajig:
  Installed: 2.01
  Candidate: 2.01
  Version table:
 *** 2.01 0
        100 /var/lib/dpkg/status
     2.0.47 0
        500 file:/home/wena/.repo_bin/ squeeze/main i386 Packages
        500 ftp://ftp.is.co.za/debian/ squeeze/main i386 Packages

นั่นหมายความว่ามีแพ็กเกจ wajig สามแพ็กเกจหนึ่งแพ็กเกจที่ติดตั้ง ( /var/lib/dpkg/status) และอีกสองแพ็กเกจ(ซึ่งเป็นเวอร์ชันเดียวกัน) หนึ่งในสองเหล่านี้อยู่ในที่เก็บในตัวเครื่องและอีกอันหนึ่งสามารถหาได้จากที่เก็บระยะไกล

ฉันจะบรรลุผลลัพธ์ที่คล้ายกันในระบบรอบต่อนาทีได้อย่างไร

คำตอบ:


76

yumสำหรับ RHEL / Fedora / Centos / Scientific Linux

จัดเตรียมคำสั่งlistเพื่อแสดงข้อมูลเกี่ยวกับแพ็กเกจที่ติดตั้งและอัพเกรด (และเก่ากว่า)

yum --showduplicates list <package>

zypperสำหรับ SuSE Linux

สามารถส่งคืนรายการโดยละเอียดของแพ็คเกจหรือแพตช์ที่พร้อมใช้งานและติดตั้งได้

zypper search -s <package>

การเพิ่ม--exact-matchสามารถช่วยได้หากมีหลายแพ็คเกจ

ในฐานะที่เป็นด้านทราบนี่คือการเปรียบเทียบของคำสั่งที่แพคเกจการจัดการ


7
นอกจากนี้คุณยังควรเพิ่ม--showduplicatesการyumถ้าคุณต้องการที่จะเห็นรุ่นทั้งหมดที่มีอยู่ไม่เพียงล่าสุด
Steve Shipway

ตัวเลือก - จับคู่แบบจับคู่ดูเหมือนจะไม่พร้อมใช้งานสำหรับ yum หรือ zypper ...
Chris Maes

15

คุณสามารถใช้rpm -qi <package name>เพื่อมีข้อมูลทั้งหมดของแพ็คเกจที่ติดตั้ง คุณสามารถใช้คำสั่งด้านล่างได้เช่นกัน:

yum info <package name>
yum list <package name>
yum --showduplicates list <package name>

2
ทั้งหมดยกเว้นอันสุดท้ายมีเพียงแสดงข้อมูลเกี่ยวกับรุ่น "ติดตั้ง" FWIW แต่ใช้--showduplicatesงานได้ดีขอบคุณ!
rogerdpack

5

คำตอบอื่น ๆ ระบุวิธีรับข้อมูลเกี่ยวกับแพ็คเกจที่ติดตั้งบนระบบ เพื่อเพิ่มไปยังมันเป็นไปได้ที่จะสอบถามที่เก็บ yum เกี่ยวกับแพคเกจที่มีอยู่ยังไม่ได้ติดตั้งนอกเหนือpkcon searchจากคำสั่งจาก PackageKit เช่น

$ pkcon search name xz
Searching by name             [=========================]         
Starting                      [=========================]         
Querying                      [=========================]         
Available       pxz-4.999.9-2.beta.20100608git.fc15.i686        Parallel LZMA compressor using XZ
Installed       xz-5.0.3-1.fc15.i686                            LZMA compression utilities
Available       xz-compat-libs-5.0.1-2.fc15.i686                Compatibility libraries for decoding LZMA compression
Available       xz-compat-libs-5.0.3-1.fc15.i686                Compatibility libraries for decoding LZMA compression
Installed       xz-debuginfo-5.0.3-1.fc15.i686                  Debug information for package xz
Installed       xz-devel-5.0.3-1.fc15.i686                      Devel libraries & headers for liblzma
Installed       xz-libs-5.0.3-1.fc15.i686                       Libraries for decoding LZMA compression
Installed       xz-lzma-compat-5.0.3-1.fc15.i686                Older LZMA format compatibility binaries
Installed       xzgv-0.9.1-3.fc15.i686                          Picture viewer
$

ฉันถือว่า PackageKit เขียนทั่วไปเพื่อให้ทำงานได้กับที่เก็บ apt ด้วยเช่นกันถึงแม้ว่าฉันจะมีประสบการณ์การใช้งานบนระบบ Fedora เท่านั้น


3

ในการค้นหาแพ็คเกจที่มีอยู่คุณสามารถทำได้urpmq --sources YOURPACKAGE นี่คือเฉพาะ Mandriva (ฉันรู้เพียง Mandriva)

หากคุณต้องการทราบเวอร์ชันของแพ็คเกจที่ติดตั้ง: rpm -q YOURPACKAGE สิ่งนี้ใช้ได้กับระบบ RPM ทั้งหมด

บน RedHat / Fedora ให้ดูยำ


3

การรันคำสั่งด้านล่างจะให้แพ็คเกจทั้งหมดที่ติดตั้งบนเซิร์ฟเวอร์

rpm -qa | grep <packagename>

คำสั่ง rpm เพิ่มเติมแสดงไว้ที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.