Как управлять зависимостями при ручной загрузке и установке этих файлов rpm
? Поиск в названиях файлов rpm
приводит к другим файлам rpm
. Я не могу использовать yum install
потому что это сервер разработки, который еще не подключен напрямую к Интернету.
Как управлять зависимостями для успешной установки WPA_supplicant
на сервере разработки CentOS 7?
ПЕРВАЯ ПОПЫТКА:
В качестве первой попытки я загрузил wpa_supplicant-2.4-4.2.x86_64.rpm
в devbox из этой ссылки, и я скопировал файл rpm на сервер разработки, который не подключен к какой-либо другой машине или сети. Затем на сервере разработки я попробовал следующее:
[root@localhost wpa_supplicant_rpm_files]# rpm -Uvh wpa_supplicant-2.4-4.2.x86_64.rpm warning: wpa_supplicant-2.4-4.2.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 3dbdc284: NOKEY error: Failed dependencies: libcrypto.so.1.0.0()(64bit) is needed by wpa_supplicant-2.4-4.2.x86_64 libnl-3.so.200(libnl_3)(64bit) is needed by wpa_supplicant-2.4-4.2.x86_64 libnl-genl-3.so.200(libnl_3)(64bit) is needed by wpa_supplicant-2.4-4.2.x86_64 libssl.so.1.0.0()(64bit) is needed by wpa_supplicant-2.4-4.2.x86_64 wpa_supplicant >= 1:1.1 is needed by (installed) NetworkManager-1:1.0.0-14.git20150121.b4ea599c.el7.x86_64
ВТОРОЙ ПОПЫТКА:
Затем я искал четыре файла rpm и загружал файлы rpm, которые, как мне казалось, направляли меня, но я все равно получаю ту же ошибку. Вот что я пробовал:
Я googled libcrypto.so.1.0.0()(64bit)
, что привело меня к: этой ссылке , с которой я загрузил lib64openssl1.0.0-1.0.2d-2.mga6.x86_64.rpm
.
Затем я googled libnl-3.so.200(libnl_3)(64bit)
, что привело меня к этой ссылке. , из которого я загрузил lib64nl-nf3_200-3.2.25-4.mga6.x86_64.rpm
.
Затем я googled libnl-genl-3.so.200(libnl_3)(64bit)
, который привел меня к этой ссылке , из которой я загрузил lib64nl-genl3_200-3.2.25-4.mga6.x86_64.rpm
.
И я googled libssl.so.1.0.0()(64bit)
, что привело меня к этой ссылке , из которой я снова загрузил lib64openssl1.0.0-1.0.2d-2.mga6.x86_64.rpm
(см. Выше).
Я скопировал файлы rpm
из devbox на сервер разработки и подтвердил их присутствие следующим образом:
[root@localhost ~]# cd /root/wpa_supplicant_rpm_files [root@localhost wpa_supplicant_rpm_files]# ls -al total 2000 drwxr-xr-x. 2 root root 4096 Sep 15 14:18 . dr-xr-x---. 3 root root 4096 Sep 15 13:25 .. -rw-r--r--. 1 root root 18332 Sep 15 14:18 lib64nl-genl3_200-3.2.25-4.mga6.x86_64.rpm -rw-r--r--. 1 root root 37160 Sep 15 14:15 lib64nl-nf3_200-3.2.25-4.mga6.x86_64.rpm -rw-r--r--. 1 root root 1111752 Sep 15 14:22 lib64openssl1.0.0-1.0.2d-2.mga6.x86_64.rpm -rw-r--r--. 1 root root 861734 Sep 15 13:28 wpa_supplicant-2.4-4.2.x86_64.rpm
Наконец, я попытался снова установить wpa_supplicant, но получил следующее сообщение об ошибке:
[root@localhost wpa_supplicant_rpm_files]# rpm -Uvh wpa_supplicant-2.4-4.2.x86_64.rpm warning: wpa_supplicant-2.4-4.2.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 3dbdc284: NOKEY error: Failed dependencies: libcrypto.so.1.0.0()(64bit) is needed by wpa_supplicant-2.4-4.2.x86_64 libnl-3.so.200(libnl_3)(64bit) is needed by wpa_supplicant-2.4-4.2.x86_64 libnl-genl-3.so.200(libnl_3)(64bit) is needed by wpa_supplicant-2.4-4.2.x86_64 libssl.so.1.0.0()(64bit) is needed by wpa_supplicant-2.4-4.2.x86_64 wpa_supplicant >= 1:1.1 is needed by (installed) NetworkManager-1:1.0.0-14.git20150121.b4ea599c.el7.x86_64
ТРЕТИЙ ПОПЫТКА:
Идея Per @ TimS. I yum localinstall wpa_supplicant-2.4-4.2.x86_64.rpm
, но терминал ответил
Loaded plugins: fastestmirror. Cannot open: wpa_supplicant-2.4-4.2.x86_64.rpm. Skipping. Nothing to do.
Я предполагаю, что проблема в том, что я не знаю, какие файлы rpm загружать или где их загружать. Кроме того, у меня нет локального репозитория, поэтому я должен знать, как настроить локальный репозиторий с правильными файлами rpm, загруженными из правильных местоположений.
ЧЕТВЕРТЫЙ ПОПЫТКА:
Согласно совету @ meuh, я снова попытался найти файлы rpm с указанием centos
как system
и x86_64
в качестве архитектуры, это привело к следующим результатам:
Я загрузил другую версию WPA_SUPPLICANT wpa_supplicant-2.0-13.el7_0.x86_64.rpm
из того, что превратилось в эту ссылку .
Я оставил три других файла rpm как есть, так что содержащая папка имела следующее содержимое:
[root@localhost wpa_supplicant_rpm_files]# ls -al total 1960 drwxr-xr-x. 2 root root 4096 Sep 16 16:33 . dr-xr-x---. 3 root root 4096 Sep 15 13:25 .. -rw-r--r--. 1 root root 18332 Sep 15 14:18 lib64nl-genl3_200-3.2.25-4.mga6.x86_64.rpm -rw-r--r--. 1 root root 37160 Sep 15 14:15 lib64nl-nf3_200-3.2.25-4.mga6.x86_64.rpm -rw-r--r--. 1 root root 1111752 Sep 15 14:22 lib64openssl1.0.0-1.0.2d-2.mga6.x86_64.rpm -rw-r--r--. 1 root root 820636 Sep 16 10:05 wpa_supplicant-2.0-13.el7_0.x86_64.rpm
Затем я запустил rpm -Uvh *.rpm
и получил следующие результаты:
[root@localhost wpa_supplicant_rpm_files]# rpm -Uvh *rpm warning: lib64nl-genl3_200-3.2.25-4.mga6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID 80420f66: NOKEY warning: wpa_supplicant-2.0-13.el7_0.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY error: Failed dependencies: libnl-3.so.200(libnl_3)(64bit) is needed by lib64nl-genl3_200-3.2.25-4.mga6.x86_64 libnl-3.so.200(libnl_3)(64bit) is needed by lib64nl-nf3_200-3.2.25-4.mga6.x86_64 libnl-route-3.so.200(libnl_3)(64bit) is needed by lib64nl-nf3_200-3.2.25-4.mga6.x86_64 lib64openssl-engines1.0.0 >= 1.0.2d-2.mga6 is needed by lib64openssl1.0.0-1.0.2d-2.mga6.x86_64 [root@localhost wpa_supplicant_rpm_files]#
Я попытался загрузить libnl-3.so.200(libnl_3)(64bit)
, но не смог получить никаких результатов по этой ссылке .
Я попытался загрузить libnl-route-3.so.200(libnl_3)(64bit)
но не смог найти подходящую загрузку по этой ссылке .
Я попытался загрузить lib64openssl-engines1.0.0
но эта ссылка отправила меня на сайт загрузки, где было неясно, какой файл загрузить, чтобы получить rpm.
Итак, что еще мне нужно сделать, чтобы WPA_supplicant корректно работал на сервере разработки?
Я планирую следовать этим другим инструкциям, чтобы настроить соединение wifi после того, как файл rpm
был успешно установлен на сервере разработки.
rpmfind
есть трудности с сопоставлением некоторых зависимостей, но все файлы поступают из одного репозитория CentOS 7.
Если у вас есть система с доступом к Интернету с командой rpm
вы можете скопировать все зависимые rpms из репозитория CentOS, а затем переместить эти rpms в свою цель и установить их все, хотя большинство из них уже будет установлено.
Создайте файл /etc/yum.repos.d/my.repo
(как root) с содержимым:
[mycentos] name=my centos enabled=0 baseurl=http://mirror.centos.org/centos/7.1.1503/os/x86_64/
Это предполагает, что значение baseurl
– это версия CentOS, которую вы уже установили. Затем (больше не root) создайте каталог ~/centosrpm
, cd
в него и загрузите все 106 зависимых rpms для требуемого пакета:
yumdownloader --rootinstall=$PWD --disablerepo=* --enablerepo=mycentos --resolve wpa_supplicant
Скопируйте эти rpms в цель и установите их в одну команду:
rpm -Uvh *.rpm
У вас уже будет установлено большинство из них.
Если у вас нет rpm
, загрузите (например, с wget
) все rpms в поддирете Packages
вышеупомянутого baseurl
в каталог, скопируйте их, чтобы сказать /tmp/p
на цели, а затем начните с цели с помощью my.repo
of baseurl=file:///tmp/p
.