수동으로 설치된 rpm 파일의 종속성을 어떻게 관리합니까?

수동으로 설치된 rpm 파일의 종속성을 어떻게 관리합니까?

이러한 파일을 수동으로 다운로드하고 설치할 때 종속성을 어떻게 관리합니까 rpm? 파일 이름을 인터넷에 검색하면 다른 이름의 파일이 rpm나옵니다 . 아직 인터넷에 직접 연결되지 않은 개발 서버이기 때문에 rpm할 수 없습니다 .yum install

WPA_supplicantCentOS 7 개발 서버에 성공적으로 설치하기 위해 종속성을 관리하는 방법은 무엇입니까 ?

첫 시도:

처음으로 wpa_supplicant-2.4-4.2.x86_64.rpmdevbox에 다운로드했습니다.이 링크에서다른 컴퓨터나 네트워크에 연결되지 않은 개발 서버에 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

두 번째 시도:

그런 다음 4개의 rpm 파일을 검색하고 나를 부팅하는 것처럼 보이는 rpm 파일을 다운로드했지만 여전히 동일한 오류가 발생합니다. 내가 시도한 것은 다음과 같습니다.

구글링해봤는데 libcrypto.so.1.0.0()(64bit)결과는 이렇습니다. 이 링크, 에서 다운로드했습니다 lib64openssl1.0.0-1.0.2d-2.mga6.x86_64.rpm.

다음으로 나는 구글링을 했고 libnl-3.so.200(libnl_3)(64bit)이것이 나를 얻었다이 링크., 에서 다운로드했습니다 lib64nl-nf3_200-3.2.25-4.mga6.x86_64.rpm.

그러다가 구글링 libnl-genl-3.so.200(libnl_3)(64bit)해서 찾아냈는데이 링크, 에서 다운로드했습니다 lib64nl-genl3_200-3.2.25-4.mga6.x86_64.rpm.

나는 그것을 구글링했고 libssl.so.1.0.0()(64bit)이것이 나를 이끌었다이 링크, 다시 다운로드했습니다 lib64openssl1.0.0-1.0.2d-2.mga6.x86_64.rpm(위 참조).

rpmdevbox의 파일을 개발 서버로 복사하고 다음과 같이 파일의 존재를 확인했습니다 .

[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

세 번째 시도:

@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의 제안에 따라 및 아키텍처 centos로 지정된 rpm 파일 검색을 다시 시도했으며 결과는 다음과 같습니다. systemx86_64

wpa_supplicant-2.0-13.el7_0.x86_64.rpmWPA_SUPPLICANT의 다른 버전을 다운로드했습니다.이 링크.

포함된 폴더에 다음 내용이 포함되도록 다른 세 개의 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가 개발 서버에서 제대로 작동하도록 하려면 또 무엇을 해야 합니까?

나는 따라갈 계획이다이 다른 지침rpm파일이 개발 서버에 성공적으로 설치되면 Wi-Fi 연결이 설정될 수 있습니다.

답변1

rpmfind일부 종속성을 일치시키기가 어려웠지만 모든 파일은 동일한 CentOS 7 저장소에 있습니다.

시스템이 rpm이 명령을 사용하여 인터넷에 액세스할 수 있는 경우 CentOS 저장소에서 모든 종속 rpm을 복사한 다음 이러한 rpm을 대상으로 이동하고 모두 설치할 수 있습니다. 대부분은 이미 설치되어 있습니다.

다음 내용으로 파일을 만듭니다 /etc/yum.repos.d/my.repo(루트로):

[mycentos]
name=my centos
enabled=0
baseurl=http://mirror.centos.org/centos/7.1.1503/os/x86_64/

여기서는 baseurl값이 설치한 CentOS 버전이라고 가정합니다. 그런 다음 (더 이상 루트가 아님) 디렉터리를 만들고 해당 디렉터리로 이동하여 필요한 패키지에 대한 106개의 종속성 rpm을 모두 다운로드합니다 ~/centosrpm.cd

yumdownloader --rootinstall=$PWD  --disablerepo=* --enablerepo=mycentos --resolve wpa_supplicant

이러한 rpm을 대상에 복사하고 하나의 명령으로 설치합니다.

rpm -Uvh *.rpm

이미 대부분이 설치되어 있습니다.


없는 경우 위 하위 디렉터리에 있는 모든 rpm을 rpm디렉터리로 다운로드(예: 사용)하고 대상에 복사한 다음 of를 사용하여 대상에서 다시 시작합니다.wgetPackagesbaseurl/tmp/pmy.repobaseurl=file:///tmp/p

답변2

인터넷에 연결된 서버에서 yum-plugin-downloadonly 패키지를 사용해야 합니다.

yum install yum-plugin-downloadonly
yum install --downloadonly --downloaddir=/root/wpa_supplicant/ wpa_supplicant

먼저 /root/wpa_supplicant 디렉터리를 만들어야 하는지 모르겠습니다.

wpa_supplicant + 직접 종속성을 다운로드합니다.

관련 정보