2013-02-05 43 views
-1

對於假設,我已經安裝了一個包含文件file1,file2和file3的包。 安裝後,我已經刪除了file3。「rpm -qf file_name」正在提供軟件包名稱,儘管該文件已被刪除

但「rpm -qf file3」正在提供軟件包名稱,即使file3不在那裏。 而且「rpm -ql package」也顯示了所有3個文件。

我怎麼能當「轉-ql」

+0

RPM使用,保持包裝的描述數據庫,收錄文件等,描述數據庫不受影響,它不應該。任何其他安裝相同軟件包的人現在都希望有3個文件來自此軟件包安裝,而不是兩個。該信息(包含文件列表)包含在RPM包頭中。查看RPM包格式以獲取更多信息。 – hovanessyan

回答

1

以及查詢,如果你物理刪除文件更新有關包,只顯示可用文件,即文件1和文件2轉,它不會做任何的包管理(你沒有刪除包,只是刪除了一些文件)。如果您要刪除已安裝的軟件包,請使用yumrpm命令

例如,如果你安裝RPM和刪除文件系統的文件與RPM

yum erase firefox 

rpm -e firefox 
+1

我問的是,如果我刪除了一個包的文件,「rpm -ql包」仍然顯示所有文件以及刪除的文件。查詢有關該軟件包(不包括已刪除的文件)時,是否有任何方法可以獲取可用文件? – gopu

+0

不,有一個數據庫(正如@ hovanessyan正確指出的那樣)爲您提供已安裝軟件包的列表,並且每個軟件包都有文件列表。 rpm -q是對該數據庫的查詢,而不是系統的實際狀態。即使從系統中刪除文件,該文件仍然是包中的成員,因此會顯示該文件。如果你想要可用的文件,你需要製作一些簡短的腳本,其中來自rpm -q命令的信息將與現實鏈接(檢查文件是否存在於現實中) – xhudik

+0

請你分享一下,檢查文件的簡短腳本存在於現實中。 – gopu

相關問題