Arch-Linux

封包件列表是否應該僅包含分佈式文件或執行時生成的文件?

  • May 4, 2020

我一直在尋找我係統上的某些文件的來源,例如(為了舉例,但問題不是特定於此)/etc/udev/hwdb.bin

$ pacman -Qo /etc/udev/hwdb.bin
error: No package owns /usr/lib/udev/hwdb.bin

然後搜尋,似乎很明顯它是由 編譯的systemd-hwdb,它本身是分發的systemd(並包含在其文件列表中):

$ pacman -Qo "$(which systemd-hwdb)"
/usr/bin/systemd-hwdb is owned by systemd 245.5-2

我已經在幾個不同的包中看到了這一點,起初認為這只是一個遺漏,應該列出它們 - 但也許是因為它們是由包含的執行檔生成的文件,而不是與包本身一起分發?那是對的嗎?

所以如果一個假設的包被打包成一個腳本,僅僅下載和安裝“真正的”包,那麼第一個文件列表就是“installer.sh”嗎?

Arch Linux 的封包件列表包括包中包含的文件,這些文件是在安裝包時安裝的。它們不包括已安裝的應用程序可能在您的系統上創建的文件。

例如,Evolution 電子郵件程序的包不會列出可以下載到您系統的每封電子郵件,而影片遊戲包不會列出使用者可能創建的保存遊戲文件(這兩個原因都很明顯- 他們無法預測)。文件列表包括由包管理器安裝和管理的文件。

引用自:https://unix.stackexchange.com/questions/584459