Рейтинг:3

Почему «apt-cache search» и «find/-name» показывают файлы, связанные с пакетом, который я уже очистил?

флаг mx

Я специально установил libreoffice-writer в свою систему, а затем очистил ее с помощью sudo apt-get purge '*libreoffice-writer*' --autoremove. После этого я выполнил эти команды терминала одну за другой, чтобы убедиться, действительно ли я избавился от всех файлов, связанных с libreoffice или libreoffice-writer -

Поиск apt-cache в libreoffice-writer

sudo найти / -имя libreoffice 

выходное изображение команды

а потом я побежал поиск apt-cache в libreoffice и он отображал десятки файлов с именем «libreoffice». выходное изображение

Как вы можете видеть на изображениях терминала, почему осталось так много связанных файлов? Как мне избавиться от всех этих файлов таким образом, чтобы в следующий раз, когда я устанавливаю что-либо из libreoffice, он устанавливался сам, как если бы он устанавливался в моей системе впервые?

guiverc avatar
флаг cn
`apt-cache search` ищет файлы, найденные в ваших списках программного обеспечения (т.е. по данным из `apt update`, и не ограничивается установленными пакетами, позволяя вам найти то, что вы можете установить и т. д.). Я не использую Kubuntu и у меня не установлен `kubuntu-desktop`; но я могу `apt-cache search kubuntu-desktop`, чтобы подтвердить, что пакет содержит то, что я думаю... т.е. он ищет в кеше списков моего программного обеспечения... не установленные пакеты.
guiverc avatar
флаг cn
Я сказал, что «apt-cache search ищет найденные файлы» в моем предыдущем комментарии; это должны быть **пакеты**, а не файлы, извините.
skekmal avatar
флаг mx
Вы имеете в виду, что команда «очистить» не удаляет файлы в кеше? Являются ли эти файлы в кеше временными? ждет, чтобы исчезнуть после перезагрузки / повторного входа в систему? Это Ubuntu 21.10, кстати.
guiverc avatar
флаг cn
Список пакетов обновляется выполнением команды «apt update». Вы не устанавливаете пакеты с помощью этой команды, но когда вы впоследствии используете `apt install`...`apt-cache` читает из кеша, загруженного предыдущей командой `apt update`, и включает все пакеты, доступные для вашей системы, из источников, которые вы включили/добавили (будь то они установлены или не установлены). Я предполагаю, что вы не используете Kubuntu и, следовательно, не установили его — используйте пример, который я использовал в предыдущем комментарии. `apt-cache` используется для поиска доступных вам пакетов.
muru avatar
флаг us
Пожалуйста, не публикуйте скриншоты текста. Скопируйте текст сюда и используйте вместо него форматирование кода: https://askubuntu.com/editing-help#code
Nate T avatar
флаг it
По иронии судьбы, публикация изображений слов создает такую ​​же проблему, как и у вас. Например, когда кто-то ищет «libreoffice-sdbc-firebird», он ожидает увидеть все Q, связанные с этим термином, однако этот не будет отображаться. Хотя это прямо там. В вашей ситуации, даже несмотря на то, что в файлах указано «libreoffice», они не связаны с этим пакетом. По крайней мере, во многих случаях.
флаг cn
`Как мне избавиться от всех этих файлов` - это должно сработать: `find / -iname "*libreoffice*" -print0 | xargs -0 rm -rfv`
Рейтинг:12
флаг cn

Apt поддерживает локальную базу данных всех доступных пакетов deb из всех известных на данный момент источников. «Доступно» означает, что он включает в себя пакеты, которые вы еще не установили а также пакеты, которые вы уже установили.

  • apt-кэш ищет в базе данных
  • удачное обновление обновляет базу данных из этих источников
  • apt list libreoffice-writer или же точный список libreoffice* укажет, какие пакеты в выводе установлены.

Теперь давайте посмотрим на файлы и каталоги, оставшиеся после --purge.

  • Каталоги могут остаться, если они не пусты после того, как apt завершит удаление файлов. Какой-то другой пакет (или администратор) также может использовать этот каталог.

  • Apt НИКОГДА не удалит любой файл, расположенный в вашем / домашнем каталоге. (Man-страница очень ясно об этом)


Несколько слов об использовании подстановочных знаков с apt: многие пользователи удивляются, когда подстановочные знаки заставляют помечать дополнительные пакеты для действия, а пакеты, которые, как они ожидали, не помечаются.

Может быть много возможных причин, по которым вы получаете действие, отличное от ожидаемого: зависимости, неожиданные имена, опечатки, неправильный подстановочный знак и т. д.

Есть две точки зрения на безопасное и эффективное использование подстановочных знаков с apt:

  1. Используйте --имитация чтобы проверить действие в первую очередь. Просмотрите свой результат и найдите неожиданное, прежде чем делать это по-настоящему.

  2. Избегайте использования подстановочных знаков вообще. Используйте инструменты apt, чтобы ЗНАТЬ правильные пакеты, с которыми вы хотите действовать. Затем перечислите эти пакеты.

skekmal avatar
флаг mx
Все это имеет смысл сейчас. По вашему предложению вывести список всех установленных пакетов я выполнил команду («apt-cache search libreoffice-writer --installed»), но терминал говорит, что «--installed» не понимается в сочетании с другими параметрами. Вам не кажется, что «apt-cache search» — плохой выбор для поиска здесь установленных пакетов?
user535733 avatar
флаг cn
Спасибо, что заметили ошибку. Исправлено сейчас.
Рейтинг:3
флаг cn

apt-кеш поиск ищет пакеты, найденные в ваших списках программного обеспечения (т.е. из данных из удачное обновление и не ограничивается установленными пакетами, что позволяет вам найти то, что вы можете установить и т. д.).

Я не использую Kubuntu и не имею kubuntu-рабочий стол установлен; Но я могу apt-cache поиск kubuntu-desktop чтобы подтвердить, что пакет содержит то, что я думаю; он доступен для моей системы, я правильно запомнил имя и т. д., и тогда я могу решить установить его. т.е. он ищет мой кеш списков программ... не мои установленные пакеты.

Список пакетов обновляется выполнением команды удачное обновление команда. Вы не устанавливаете пакеты с помощью этой команды, но когда вы впоследствии используете меткая установка... apt-кэш читает из тайник скачанный ранее удачное обновление команда & включает все пакеты, доступные для вашей системы, из источников, которые вы включили/добавили (быть они установлены, или не установлены).

guiverc avatar
флаг cn
предыдущие комментарии *мягко массировали* в грубый ответ
Рейтинг:2
флаг zw

Вы должны использовать dpkg --список | grep -i libreoffice для определения установленных пакетов, связанных с LibreOffice.

Если файлы, связанные с LibreOffice, были установлены с помощью APT, их следует удалить таким образом. Для автоматизации процесса используйте следующую команду:

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

и не удаляйте вручную файлы, контролируемые APT.


Материалы для чтения:

  1. мужчина дпкг
  2. человек способный
  3. человек apt-кэш

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.