如何列出 ZYpp/Zypper 軟體包已安裝的所有檔案?

如何列出 ZYpp/Zypper 軟體包已安裝的所有檔案?

如何zypper列出給定套件的已安裝檔案的位置?

答案1

轉速可用於列出套件中已安裝的檔案<package>

rpm -ql <package>

長版:

rpm --query --list <package>

zypper(目前)不支援列出已安裝的檔案。

另外,我發現「反向」很有幫助。要查找“擁有”文件的包,<file>您可以使用

rpm -qf <file>

返回確切的包裹。

答案2

在 openSUSE 中,有幾種列出已安裝檔案的方法。對於 Zypper,我會嘗試:

zypper search -i

或者:

zypper search --installed-only

使用 RPM,您可以嘗試:

rpm -ql packageName | less

答案3

由於我無法添加評論,我將添加另一個答案並嘗試正確總結它,因為答案幾乎完整但分散。

齊普單獨它是不可能的,但是隨著軟體包的安裝齊普,它通常位於您的硬碟上。如果它不再位於硬碟上,您甚至可以使用以下命令下載它齊普,無需重新安裝:

zypper in --download-only <package_name>

然後會顯示下載的套件名稱。通常,它是最後一個套件名稱,因為首先檢索依賴項(例如firewalld-0.7.5-1.1.noarch.rpm對於包防火牆)。要查找目錄,您可以簡單地使用尋找像這樣:

find /var/cache/zypp -name <package_name>

它應該返回一行,其中包含文件的完整路徑(例如/var/cache/zypp/packages/repo-oss/noarch/firewalld-0.7.5-1.1.noarch.rpm)。當您找到該套件並知道其路徑後,您可以使用轉速:

rpm -ql <path_to_package>

什麼轉速然後列出的是軟體包的內容,包括這些檔案將安裝在您的系統上或已經安裝在您的系統上的路徑。

答案4

遲到的答案,但另一個選擇是,如果您碰巧使用 openSUSE,則有一個選項卡顯示 Yast2 軟體管理器中的套件安裝的檔案。

您可以使用以下命令從 Zypper 中取得(部分)檔案:

zypper if --provides <packagename>

其中列出了您透過該軟體包獲得的所有內容。通常,不是很詳細,也不包括庫,但我不知道你的用例是什麼,這可能就足夠了。

例如

~$  zypper if --provides util-linux
Loading repository data... Reading installed packages...
Information for package util-linux:
-----------------------------------
Repository     : openSUSE-Tumbleweed-Oss
Name           : util-linux
Version        : 2.39-3.1
Arch           : x86_64
Vendor         : openSUSE
Installed Size : 4.2 MiB
Installed      : Yes
Status         : out-of-date (version 2.39-2.1 installed)
Source package : util-linux-2.39-3.1.src
Upstream URL   : https://www.kernel.org/pub/linux/utils/util-linux/
Summary        : A collection of basic system utilities (core part)
Description    :
    This package contains a large variety of low-level system utilities
    that are necessary for a Linux system to function. It contains the
    mount program, the fdisk configuration tool, and more.
Provides       : [27]
    /bin/su
    /bin/kill
    /bin/more
    /bin/mount
    /bin/umount
    util-linux(fake+no-canonicalize)
    config(util-linux) = 2.39-3.1
    eject = 2.1.0
    fsck-with-dev-lock = 2.39
    hardlink = 1.1
    login = 4.0
    rfkill = 0.5
    util-linux = 2.39-3.1
    util-linux(x86-64) = 2.39-3.1
    /usr/bin/getopt
    /usr/bin/ipcrm
    /usr/bin/ipcs
    /usr/bin/kill
    /usr/bin/more
    /usr/bin/mount
    /usr/bin/renice
    /usr/bin/setpriv
    /usr/bin/su
    /usr/bin/umount
    /usr/sbin/nologin
    /usr/bin/col
    /usr/sbin/agetty

相關內容