Câu hỏi Tại sao `dpkg -S / var / lib / dpkg` hiển thị" base-files, dpkg "?


Tôi tò mò muốn biết gói nào cung cấp /var/lib/dpkg thư mục, vì vậy tôi chạy lệnh này

$ dpkg -S /var/lib/dpkg
base-files, dpkg: /var/lib/dpkg

Kết quả đầu ra hiển thị gói cung cấp /var/lib/dpkg cùng với base-files chuỗi như trên.

$ dpkg -S /var/lib/aptitude
aptitude: /var/lib/aptitude
$ dpkg -S /var/lib/apt
apt: /var/lib/apt

Nhưng tôi không thấy bất kỳ base-files chuỗi trên đầu ra ở trên. Ofcourse tập tin bên trong /var/lib/apt thư mục cũng rất cần thiết cho một hệ thống Ubuntu để chạy.

Vậy tại sao dpkg -S /var/lib/dpkg lệnh cho thấy "cơ sở-tập tin," chuỗi? Tại sao nó không được hiển thị trên những người khác?


2
2018-04-16 03:08


gốc




Các câu trả lời:


Bạn đang tìm kiếm một thư mục, không phải một tệp / nhị phân cụ thể, vì vậy bất kỳ gói nào cũng có thể cài đặt các tệp trong thư mục:

➜  ~  dpkg -L dpkg | grep '/var/lib/dpkg'
/var/lib/dpkg
/var/lib/dpkg/info
/var/lib/dpkg/updates
/var/lib/dpkg/parts
/var/lib/dpkg/alternatives
➜  ~  dpkg -L base-files | grep '/var/lib/dpkg'
/var/lib/dpkg
➜  ~  

Bạn có thể thấy, base-files cũng tạo ra /var/lib/dpkg thư mục (lý do chính xác lý do tại sao, tôi bỏ qua nó, có thể có một số tập tin bây giờ đã bị xóa, nhưng changelog không đưa ra bất kỳ gợi ý rõ ràng) và gói dpkg mà ngoài việc là chủ sở hữu của /var/lib/dpkg thư mục, tập tin cài đặt bên trong nó.


2
2018-04-16 04:01