Пока у меня есть список явных пакетов, которые устанавливаются с помощью yum. На сервере есть программное обеспечение собственной разработки, которое не будет получено из репозитория, оно будет перемещено, а затем установлено локально. Есть ли способ узнать, какие пакеты / программное обеспечение были установлены таким образом?
Что вы имеете в виду под «установленным локально»? Что-то вроде "rpm -ivh package.rpm"?
Если да, то вы можете найти все пакеты из неофициальных репозиториев примерно так:
rpm -qa --qf '% {NAME}% {VENDOR} \ n' | grep -v "Красная шляпа"
Также
список yum установлен | awk '{if ($ 3 == "installed") print $ 1}'
поможет вам. он покажет не только локально установленные пакеты, но и все пакеты, которые вы не обновляли с момента первой установки ОС ... так что это не очень полезно, если у вас много необновленных пакетов.
Пакеты, установленные с помощью команды rpm, а не через репозиторий yum, попадают в список с "установленными" в качестве источника. Простой:
yum list installed |grep installed
следует перечислить те.
Программное обеспечение, которое не было упаковано, но установлено путем копирования двоичных файлов или скомпилировано из исходного кода, не будет указано в базе данных rpm и может быть найдено только путем исследования файловой системы. Ваша единственная надежда состоит в том, что если ваши коллеги сделали это; они, по крайней мере, следовали некоторому соглашению и устанавливали собственное программное обеспечение в / usr / local, / opt или другом единственном пути, а не в / bin или / usr / sbin и т. д.
Вы могли бы использовать
rpm -qa
чтобы перечислить все установленные пакеты. Здесь также будут перечислены репозитории. Затем вы можете сравнить их с установленными репозиториями, удалить дубликаты и найти свои локально установленные.
rpm -qi {package}
Будет отображена информация об установленном пакете.
Вы также можете посмотреть rpm
страницы руководства для дополнительных опций.
Насколько я знаю, это не простой способ. Очевидно, вы можете использовать:
rpm -qa | grep package-name
Чтобы найти определенный пакет, или отбросьте grep и перечислите все установленные пакеты через yum. Но если вы устанавливаете из источника (я предполагаю, что вы делаете - вы не указали), yum не будет отслеживать их. Если они были установлены из исходного кода, обычной процедурой будет загрузка исходных файлов в / usr / src и запуск оттуда make и make install. Обычно все исходные файлы находятся в папке / usr / src. Но если кто-то установил программное обеспечение, не поместив туда исходные файлы, или если они удалили исходный код после его установки, вы не найдете их там.