К какому пакету Fedora относится определенный файл?

69

В семействе ОС Debian dpkg --search /bin/lsдает:

coreutils: /bin/ls

То есть файл /bin/lsпринадлежит пакету Debian с именем coreutils . (см. этот пост, если вы заинтересованы в пакете, содержащем файл, который не установлен)

Что такое эквивалент Fedora?

tshepang
источник

Ответы:

85

Вы можете использовать, rpm -qf /bin/lsчтобы выяснить, к какому пакету принадлежит ваша установленная версия:

[09:46:58] ~ $ rpm -qf /bin/ls
coreutils-8.5-7.fc14.i686
[09:47:01] ~ $ 

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

[01:52:49] ~ $ rpm -qf /bin/ls --queryformat '%{NAME}\n'
coreutils
[01:52:52] ~ $ 

Вы также можете использовать dnf provides /bin/lsдля получения списка всех доступных пакетов репозитория, которые будут предоставлять файл:

# dnf provides /bin/ls
Last metadata expiration check: 0:17:06 ago on Tue Jun 27 18:04:08 2017.
coreutils-8.25-17.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : @System

coreutils-8.25-17.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : updates

coreutils-8.25-14.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : fedora
eldarerathis
источник
Есть ли способ, чтобы rpm отображал владельцев файла без указания полного пути? Вы хотите добавить заметку на этот счет?
Чепанг
@Tshepang: я думаю, что вы должны быть в состоянии добавить, --queryformat '%{NAME}'чтобы выполнить это, но я не проверял это сам. Я могу сделать быстрый тест и обновить его после работы, хотя. А пока вы можете найти здесь полезную информацию: rpm.org/max-rpm/s1-rpm-query-parts.html
eldarerathis
Просто хотел добавить, что в OpenSuSE zypperесть what-providesфункция, которая выполняет эту задачу. Этот вопрос возникает первым при выполнении поиска, поэтому было бы удобно получить этот ответ, даже если вопрос конкретный.
casualunixer
2
Для fedora 22 "dnv обеспечивает имя файла" также работает
Trismegistos