Поиск файлов, не установленных менеджером пакетов RPM

Есть ли способ узнать все файлы в данной системе, которые не были установлены с помощью RPM? Я понимаю, что я могу использовать эту rpmquery -f используя что-то вроде rpmquery -f в скрипте, который просматривает все файлы в файловой системе, однако мне было интересно, есть ли какой-то стандартный способ сделать это для RPM-систем (в частности, Fedora, которая Я пользуюсь дома). Так как это для Fedora, это хорошо использовать yum или dnf чтобы понять это.

Если нет стандартного способа сделать это, знает ли кто-нибудь о некоторых существующих сценариях? Я не хочу заново изобретать колесо, если мне это не нужно.

PS Существует еще один вопрос, похожий на это , но речь идет о Gentoo и Portage, поэтому это не совсем актуально.

2 Solutions collect form web for “Поиск файлов, не установленных менеджером пакетов RPM”

Насколько мне известно, это невозможно с какой-то специальной командой, только с помощью небольшого скрипта. TL; DR – см. Ссылки внизу. А для систем на основе rpm или других менеджеров пакетов на двоичной основе это не имеет большого смысла. Такие менеджеры пакетов обычно являются государственными машинами, предназначенными для отслеживания того, что они устанавливают сами, и не знать все, что пользователи пробираются в систему «за спиной» менеджера пакетов.

Где бы вы нарисовали строку для файлов, которые не принадлежат файлам rpm? Что касается временных файлов (think / tmp и / var / tmp) или кешей (think / var / cache) или файлов, созданных пользователем (/ home или / srv или других пользовательских точек монтирования).

Для дистрибутивов на основе источника может иметь смысл предложить эту функциональность, если прецедент ограничивает их в каталогах FHS, используемых «системными» пакетами, такими как / usr, / bin, / lib и тому подобное, в отличие от, например, / usr / local или / выберите стороннее программное обеспечение.


См. Следующие похожие вопросы для скриптлетов, чтобы выполнить то, что вы просили:

  • Как я могу перечислить все файлы, не принадлежащие какому-либо пакету в системе на основе RPM?
  • Список рассылки: Умелый способ найти ВСЕ файлы, не принадлежащие RPM?

На странице https://superuser.com/questions/555918/how-do-list-all-the-files-not-owned-by-any-package-in-a-rpm-based-system следующую команду является прочной базой для того, что вам нужно:

comm -13 <(rpm -qla | sort) <(find / -type f | sort)

Настройте дополнительно, отфильтровывая команду find на интересующие вас каталоги (либо указав список каталогов вместо / (например, /{usr,bin} ), либо исключая такие папки, как /proc , /dev , /home и /tmp .

  • Загружать все зависимости с помощью yumdownloader, даже если они уже установлены?
  • yum install http://www.example.com/package.rpm vpm rpm -ivh http://www.example.com/package.rpm
  • yum не работает на RHEL 6.3
  • Обновление yum на CentOS 6.6 не удается
  • Переустановка пакетов с отсутствующими / поврежденными файлами
  • Почему эта странная сортировка списка результатов пакета dnf?
  • Yum update / install для любого пакета дает мне следующую ошибку. Какие действия я должен предпринять, чтобы преодолеть это?
  • Изменение поиска YUM / DNF на изображении Raspberry Pi?
  • как сохранить yum от обновления файла, который я изменил?
  • На Red Hat Enterprise Linux 6.2 как я могу использовать Python 2.7 по умолчанию не Python 2.6? Я все же показывал 2.6?
  • Возможно ли переопределить учетную запись пользователя службы RPM во время установки?
  • Linux и Unix - лучшая ОС в мире.