Điểm:3

Tại sao 'apt-cache search' và 'find / -name' hiển thị các tệp được liên kết với gói tôi đã xóa?

lá cờ mx

Tôi đã cài đặt cụ thể libreoffice-writer trên hệ thống của mình và sau đó xóa nó bằng sudo apt-get purge '*libreoffice-writer*' --autoremove. Sau đó, tôi lần lượt chạy các lệnh đầu cuối này để xác định xem liệu tôi có thực sự đã loại bỏ tất cả các tệp được liên kết với libreoffice hoặc libreoffice-writer hay không -

apt-cache tìm kiếm libreoffice-writer

sudo find / -name libreoffice 

hình ảnh đầu ra lệnh

và sau đó tôi chạy apt-cache tìm kiếm libreoffice và nó hiển thị hàng tá tệp có tên 'libreoffice' hình ảnh đầu ra

Như bạn có thể thấy trong các hình ảnh đầu cuối, tại sao vẫn còn quá nhiều tệp liên quan? Làm cách nào để loại bỏ tất cả các tệp này theo cách mà lần sau khi tôi cài đặt bất kỳ thứ gì từ libreoffice, nó sẽ tự cài đặt giống như lần cài đặt đầu tiên trên hệ thống của tôi?

guiverc avatar
lá cờ cn
`apt-cache search` tìm kiếm các tệp được tìm thấy trong danh sách phần mềm của bạn (ví dụ: từ dữ liệu từ `apt update` và không giới hạn ở các gói đã cài đặt - cho phép bạn tìm thấy những gì bạn có thể cài đặt, v.v.). Tôi không sử dụng Kubfox và chưa cài đặt `kubfox-desktop`; nhưng tôi có thể `apt-cache search kubuntu-desktop` để xác nhận gói đó chứa thứ mà tôi nghĩ là... tức là. nó đang tìm kiếm phần mềm của tôi liệt kê bộ nhớ cache... các gói chưa được cài đặt.
guiverc avatar
lá cờ cn
Tôi đã nói "`apt-cache search` tìm kiếm các tệp được tìm thấy" trong nhận xét trước của tôi; đó phải là **gói** không phải tệp xin lỗi.
skekmal avatar
lá cờ mx
Ý bạn là lệnh 'thanh lọc' không loại bỏ các tệp trong bộ đệm? Những tệp này trong bộ đệm tạm thời phải không? đang chờ biến mất sau khi tôi khởi động lại/đăng nhập lại? Đây là Ubuntu 21.10 btw.
guiverc avatar
lá cờ cn
Danh sách gói được cập nhật bằng cách thực thi lệnh `apt update`. Bạn không cài đặt các gói bằng lệnh đó, nhưng sau đó khi bạn sử dụng `apt install`...`apt-cache` đọc từ bộ đệm được tải xuống bởi lệnh `apt update` trước đó & bao gồm tất cả các gói có sẵn cho hệ thống của bạn theo các nguồn bạn đã bật/thêm (dù chúng đã được cài đặt hay chưa cài đặt). Tôi cho rằng bạn không sử dụng Kubfox và do đó chưa cài đặt nó - hãy sử dụng ví dụ tôi đã sử dụng trong nhận xét trước.. `apt-cache` được sử dụng để tìm kiếm các gói có sẵn cho bạn..
muru avatar
lá cờ us
Vui lòng không đăng ảnh chụp màn hình của văn bản. Sao chép văn bản ở đây và sử dụng định dạng mã thay thế: https://askubuntu.com/editing-help#code
Nate T avatar
lá cờ it
Trớ trêu thay, việc đăng ảnh của các từ lại tạo ra một vấn đề giống như vấn đề bạn đang gặp phải. Ví dụ: khi ai đó tìm kiếm`libreoffice-sdbc-firebird`, họ mong muốn thấy tất cả các Q được liên kết với cụm từ, tuy nhiên, điều này sẽ không hiển thị. Mặc dù nó ở ngay đó. Trong trường hợp của bạn, mặc dù các tệp có nội dung `libreoffice`, chúng không được liên kết với gói đó. Ít nhất là trong nhiều trường hợp.
lá cờ cn
`Làm cách nào để loại bỏ tất cả các tệp này` - cách này sẽ hoạt động: `find / -iname "*libreoffice*" -print0 | xargs -0 rm -rfv`
Điểm:12
lá cờ cn

Apt duy trì một cơ sở dữ liệu cục bộ của tất cả các gói gỡ lỗi có sẵn từ tất cả các nguồn hiện đã biết. "Có sẵn" có nghĩa là nó bao gồm các gói mà bạn hiện chưa cài đặt cũng như các gói mà bạn hiện đã cài đặt.

  • apt-cache tìm kiếm cơ sở dữ liệu
  • cập nhật apt làm mới cơ sở dữ liệu từ những nguồn đó
  • danh sách apt libreoffice-nhà văn hoặc danh sách apt libreoffice* sẽ chỉ định gói nào trong đầu ra được cài đặt.

Bây giờ, hãy xem các tệp và thư mục còn lại sau --purge.

  • Các thư mục có thể vẫn còn nếu chúng không trống sau khi apt hoàn tất việc xóa tệp. Một số gói khác (hoặc quản trị viên) cũng có thể đang sử dụng thư mục.

  • Apt sẽ KHÔNG BAO GIỜ xóa bất kỳ tệp nào nằm trong thư mục/home của bạn. (Trang này rất rõ ràng về điều đó)


Đôi lời về việc sử dụng ký tự đại diện với apt: Nhiều người dùng ngạc nhiên khi ký tự đại diện khiến các gói bổ sung được đánh dấu để thực hiện hành động và khi các gói mà họ dự kiến ​​sẽ được đánh dấu thì lại không.

Có thể có nhiều lý do khiến bạn nhận được một hành động khác với mong đợi: Phụ thuộc, tên không mong muốn, lỗi chính tả, ký tự đại diện sai, v.v.

Có hai trường phái tư duy về cách sử dụng ký tự đại diện an toàn, hiệu quả với apt:

  1. Sử dụng apt --mô phỏng để kiểm tra hành động đầu tiên. Xem lại đầu ra của bạn và tìm ra điều bất ngờ TRƯỚC KHI thực hiện nó.

  2. Tránh sử dụng ký tự đại diện. Sử dụng các công cụ của apt để BIẾT các gói chính xác mà bạn muốn thực hiện. Sau đó liệt kê các gói đó.

skekmal avatar
lá cờ mx
Điều này thật ý nghĩa ngay lúc này. Theo đề xuất của bạn để liệt kê tất cả các gói đã cài đặt, tôi đã chạy lệnh ( 'apt-cache search libreoffice-writer --installed' ) nhưng thiết bị đầu cuối cho biết '--đã cài đặt' không được hiểu khi kết hợp với các tùy chọn khác. Bạn có nghĩ rằng 'tìm kiếm apt-cache' là một lựa chọn tồi để tìm kiếm các gói đã cài đặt ở đây không?
user535733 avatar
lá cờ cn
Cảm ơn đã nhận thấy lỗi. Đã sửa ngay bây giờ.
Điểm:3
lá cờ cn

tìm kiếm apt-cache tìm kiếm các gói được tìm thấy trong danh sách phần mềm của bạn (nghĩa là từ dữ liệu từ cập nhật apt và không tự giới hạn các gói đã cài đặt - cho phép bạn tìm thấy những gì bạn có thể cài đặt, v.v.).

Tôi không sử dụng Kubfox và không có kubuntu-desktop Cài đặt; nhưng tôi có thể tìm kiếm apt-cache kubuntu-desktop để xác nhận rằng gói chứa những gì tôi nghĩ nó là; nó có sẵn cho hệ thống của tôi, tôi đã nhớ chính xác tên, v.v. và sau đó có thể quyết định cài đặt nó. I E. nó đang tìm kiếm tôi phần mềm liệt kê bộ đệm... không phải các gói đã cài đặt của tôi.

Danh sách gói được cập nhật bằng cách thực hiện cập nhật apt chỉ huy. Bạn không cài đặt các gói bằng lệnh đó, nhưng sau đó khi bạn sử dụng cài đặt apt... apt-cache đọc từ bộ đệm được tải xuống trước đó cập nhật apt lệnh & bao gồm tất cả các gói có sẵn cho hệ thống của bạn theo các nguồn bạn đã bật/thêm (họ đã cài đặt hay chưa cài đặt).

guiverc avatar
lá cờ cn
ý kiến ​​​​trước * xoa bóp nhẹ nhàng * thành câu trả lời thô
Điểm:2
lá cờ zw

bạn phải sử dụng dpkg --list | grep -i libreoffice để xác định các gói đã cài đặt liên quan đến LibreOffice.

Nếu các tệp liên quan đến LibreOffice đã được cài đặt bằng APT thì chúng sẽ bị xóa theo cách này. Để tự động hóa quy trình, hãy sử dụng lệnh bên dưới:

Sudo apt-get autopurge $(dpkg --list | grep -i libreoffice | awk '{print $2}')

và không xóa thủ công các tệp do APT kiểm soát.


Nội dung nên đọc:

  1. người đàn ông dpkg
  2. người đàn ông thích hợp
  3. người đàn ông apt-cache

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.