LINUX.ORG.RU

Найти пакет который устанавливает по зависимости известный пакет

 , , ,


0

1

Hi, folks.

Ставлю Centos 7.1 с помощью Kickstart. В файле прописаны следующие пакеты:

@core
@mate-desktop

nmap
tcpdump
salt-minion
htop
iotop
iftop
mc
lightdm
gajim
lsof
mg
wget
bash-completion
bind-utils
sssd
rsync

thunderbird
mozilla-adblockplus

xorg-x11-drv-evdev
xorg-x11-drv-ati
xorg-x11-drv-vesa
xorg-x11-drv-nouveau
xorg-x11-drv-intel
xorg-x11-drv-mouse
xorg-x11-drv-keyboard

gstreamer
gstreamer-plugins-base
gstreamer-plugins-good
gstreamer-plugins-bad-nonfree
gstreamer-plugins-bad-free
gstreamer-plugins-ugly

fontconfig-infinality
freetype-infinality

chrony
kexec-tools

-xchat
-totem
-brasero
-transmission-gtk
-rhythmbox
-filezilla
-postfix

При этом если в ks прописать автоматическое добавление репозитория ELRepo (packages - это локальное зеркало):

repo --name=packages-elrepo --baseurl=http://packages/centos/elrepo/7/x86_64 --install --cost=2
в поставленной системе появляется бинарный драйвер NVIDIA:
kmod-nvidia-352.21-3.el7.elrepo.x86_64
nvidia-x11-drv-352.21-3.el7.elrepo.x86_64
который совершенно не нужен. На машине (как реальной так и вирутальной), на которой производится установка, видеокарт от Nvidia не установлено. rpm говорит следующее:
[root@apmX ~]# rpm -q --whatrequires nvidia-x11-drv
kmod-nvidia-352.21-3.el7.elrepo.x86_64
[root@apmX ~]# rpm -q --whatrequires kmod-nvidia
no package requires kmod-nvidia

Можно ли каким-нибудь образом узнать по какой причине эти пакеты оказываются установленными?

Спасибо.

Я не знаю как проверить точно, нужно кастовать мейнтенеров федоры, они подскажут команду, но 99% что его вытащила какая-то графическая программа, которая требует libGL.so.*. В кикстарт надо добавить библиотеки mesa, тогда она будет довольствоваться программной реализацией и успокоится.

d_a ★★★★★ ()

rpm -q --whatrequires nvidia-x11-drv

Начало правильное, но нужно глянуть глубже:

# rpm -q --whatrequires $(rpm -qa --provides '*nvidia*' | awk '/nvidia|cuda/{print $1}' | sort -u)

ximeric ()
Ответ на: комментарий от ximeric

Тоже ничего нет.

[root@apmX ~]# rpm -q --whatrequires $(rpm -qa --provides '*nvidia*' | awk '/nvidia|cuda/{print $1}' | sort -u)
rpm: no arguments given for query
[root@apmX ~]# rpm -qa --provides '*nvidia*'
[root@apmX ~]#
trancefer ★★ ()
Ответ на: комментарий от trancefer

Тоже ничего нет.

Очень интересно. Проверял подобную команду с такой и другой маской на el6, el7, f20 - везде отрабатывает нормально, даёт список.

Даёт ли что-нибудь вообще

 rpm -qa '*nvidia*'
?

Есть ещё два варианта:

  •  rpm -e --test kmod-nvidia-352.21-3.el7.elrepo.x86_64 nvidia-x11-drv-352.21-3.el7.elrepo.x86_64
    - увидишь непосредственно требующих.
  •  yum remove '*nvidia*'
    - должен отобразить все зависимые пакеты.
ximeric ()
Последнее исправление: ximeric (всего исправлений: 1 )
Ответ на: комментарий от ximeric

Проблема была в cairo судя по всему.

Гражданин d_a был прав — оно требует libGL и libEGL которые тянулись из nvidia-пакетов.

Решилось добавлением в список пакетов:

mesa-libEGL
mesa-libGL

trancefer ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.