핵심요약: libssl 1.0.2 이상이 필요한 패키지를 설치하려고 하는데 설치할 수 없습니다.
# dpkg -i my_package_name_3.0.1.8_amd64.deb
Selecting previously unselected package my_package_name.
(Reading database ... 266120 files and directories currently installed.)
Preparing to unpack my_package_name_3.0.1.8_amd64.deb ...
Unpacking my_package_name (3.0.1.8) ...
dpkg: dependency problems prevent configuration of my_package_name:
my_package_name depends on libssl1.0.0 (>= 1.0.2g); however:
Version of libssl1.0.0:amd64 on system is 1.0.1t-1+deb8u9.
dpkg: error processing package my_package_name (--install):
dependency problems - leaving unconfigured
Processing triggers for desktop-file-utils (0.23-1) ...
Processing triggers for mime-support (3.60) ...
Processing triggers for hicolor-icon-theme (0.15-1) ...
Errors were encountered while processing:
my_package_name
내가 시도한 것에 대한 긴 이야기 :
나는 데비안 제시를 가지고 있습니다:
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 8.11 (jessie)
Release: 8.11
Codename: jessie
# uname -a
Linux 10.mylocalhostname.com 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 GNU/Linux
내 openssl은 1.0.1입니다.
# dpkg -l 'openssl'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================================================-===============================-===============================-===============================================================================================================
ii openssl 1.0.1t-1+deb8u9 amd64 Secure Sockets Layer toolkit - cryptographic utility
libssl(openssl의 일부인 것으로 알고 있음)을 1.0.2 이상으로 업그레이드해야 합니다. 실행했는데 apt-get update && apt-get upgrade
여전히 1.0.1입니다. 나는 또한 다음을 시도했습니다.
# apt-get install openssl=1.0.2
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Version '1.0.2' for 'openssl' was not found
주의 깊게 읽은 후 시스템을 업그레이드하기로 결정했습니다. 나는 도망 갔다 apt-get dist-upgrade
. 그런 다음 내 /etc/apt/source.list
파일을 편집하여 교체하고 다시 실행했습니다. 이제 모든 것이 괜찮아 보입니다.jessie
stretch
apt-get update && apt-get upgrade && apt-get dist-upgrade
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 9.5 (stretch)
Release: 9.5
Codename: stretch
이제 openssl 1.1.0이 생겼습니다.
# dpkg -l 'openssl'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================================================-===============================-===============================-===============================================================================================================
ii openssl 1.1.0f-3+deb9u2 amd64 Secure Sockets Layer toolkit - cryptographic utility
하지만 내 시스템에 libssl 1.0.1, 1.0.2 및 1.1.0이 있는 것 같지만 여전히 패키지를 설치할 수 없습니다.
# apt-cache policy libssl1.0.0
libssl1.0.0:
Installed: 1.0.1t-1+deb8u9
Candidate: 1.0.1t-1+deb8u9
Version table:
*** 1.0.1t-1+deb8u9 100
100 /var/lib/dpkg/status
# apt-cache policy libssl1.0.2
libssl1.0.2:
Installed: 1.0.2l-2+deb9u3
Candidate: 1.0.2l-2+deb9u3
Version table:
*** 1.0.2l-2+deb9u3 500
500 http://mirror.it.ubc.ca/debian stretch/main amd64 Packages
500 http://security.debian.org stretch/updates/main amd64 Packages
500 http://http.debian.net/debian stretch/main amd64 Packages
100 /var/lib/dpkg/status
# apt-cache policy libssl1.1
libssl1.1:
Installed: 1.1.0f-3+deb9u2
Candidate: 1.1.0f-3+deb9u2
Version table:
*** 1.1.0f-3+deb9u2 500
500 http://mirror.it.ubc.ca/debian stretch/main amd64 Packages
500 http://security.debian.org stretch/updates/main amd64 Packages
500 http://http.debian.net/debian stretch/main amd64 Packages
100 /var/lib/dpkg/status
패키지를 설치하려고 하면 이전과 똑같은 오류가 발생합니다. 마치 dpkg가 1.0.1만 보고 다른 것은 보지 못하는 것 같습니다. 내가 할 수 있는 다른 작업에 대한 팁이 있나요?
고쳐 쓰다:
우분투에서 openssl_1.0.2g-1ubuntu4.13_amd64.deb를 다운로드하고 다음을 시도했습니다.
# dpkg -i openssl_1.0.2g-1ubuntu4.13_amd64.deb
dpkg: warning: downgrading openssl from 1.1.0f-3+deb9u2 to 1.0.2g-1ubuntu4.13
(Reading database ... 266120 files and directories currently installed.)
Preparing to unpack openssl_1.0.2g-1ubuntu4.13_amd64.deb ...
Unpacking openssl (1.0.2g-1ubuntu4.13) over (1.1.0f-3+deb9u2) ...
dpkg: dependency problems prevent configuration of openssl:
openssl depends on libssl1.0.0 (>= 1.0.2g); however:
Version of libssl1.0.0:amd64 on system is 1.0.1t-1+deb8u9.
dpkg: error processing package openssl (--install):
dependency problems - leaving unconfigured
Processing triggers for man-db (2.7.6.1-2) ...
Errors were encountered while processing:
openssl
글쎄, 그건 공식적인 일이고, 아무 의미도 없고 어떻게 해야 할지 모르겠습니다. 설치하려는 openssl 1.0.2g가 1.0.2g에 의존한다고 하는데 1.0.1이 있어서 설치할 수 없는 걸까요? 지금 너무 혼란스러워요...하하
업데이트 2:
libssl을 제거하고 apt-get remove libssl1.0.0
ubuntu 1.0.2g 패키지(i386 및 amd64, 그렇지 않으면 불평할 것임)를 다운로드하여 설치했습니다. pgks.org에서 다운로드했는데 더 "공식적인" 소스를 찾을 수 없었습니다:( ) 마침내 설치할 수 있었습니다 my_package_name
. 나는 지금 내 시스템이 엉망이라고 확신하며 누군가 시스템을 엉망으로 만들지 않는 간단하고 간단한 해결책을 제공할 때까지(가능하다면) 이 질문을 열어 두겠습니다... :/
답변1
오류 메시지에는 다음이 포함되어 있습니다.
my_package_name depends on libssl1.0.0 (>= 1.0.2g); however: Version of libssl1.0.0:amd64 on system is 1.0.1t-1+deb8u9.
메시지의 중요한 부분은 1.0.2g이고 1.0.1t를 찾고 있습니다. 패키지가 의존하는 정확한 버전 1.0.2g가 필요합니다. 패키지에서는 상위 버전(예: 1.0.2l)이나 하위 버전(예: 1.0.2d)을 사용할 수 없는 것 같습니다.
또한 패키지 관리자는 서로 다른 기본 디렉터리에 여러 병렬 설치를 허용할 수도 있습니다. 이 패키지의 원치 않는 버전을 제거해 볼 수도 있습니다(참고: 제거하기 전에 이 버전에 의존하는 다른 패키지가 없는지 확인해야 합니다).
노력하다apt-get install openssl=1.0.2g
이제 OS가 Stretch로 업그레이드되었으므로 오류 메시지의 동일한 부분이 달라졌을 것입니다.
답변2
TL, DR: 필요한 OpenSSL 패키지는 jessie-backports입니다. 그러나 데비안을 다운그레이드하는 것은지원되지 않음.
다음 줄을 관찰하십시오 dpkg
.
my_package_name depends on libssl1.0.0 (>= 1.0.2g); however:
설치하려는 패키지는 libssl1.0.0
정확한 이름이 " "인 패키지 에 의존하므로 libssl1.0.2
설치가 도움이 되지 않습니다. 스트레치로 업그레이드하지 않은 경우 libssl1.0.0
v1.0.2g 및 > v1.0.2g와 바이너리 호환되는 jessie-backports에서 v1.0.2l을 가져올 수 있습니다.OpenSSL 버전 관리 체계.
그런데 당신은할 수 없다jessie-backport가 문제 없이 확장 작업을 수행할 것으로 기대합니다.
첫 번째 업데이트에서:
openssl depends on libssl1.0.0 (>= 1.0.2g); however:
version of libssl1.0.0:amd64 on system is 1.0.1t-1+deb8u9.
openssl과 libssl은 서로 다른 두 패키지이며 설치하려는 패키지는 후자에 따라 다릅니다. 설치하려는 Ubuntu openssl 패키지의 libssl1.0.0
버전은 1.0.2g 이상이지만 1.0.1t < 1.0.2g입니다.
게다가 Forticlient는 Debian에서 작동하도록 설계되지 않았기 때문에 작동시키기가 어려울 것입니다.
답변3
이 특별한 경우에는 dsstorefile1의 의견에 동의합니다.
"우분투와 데비안 패키지를 혼합할 수는 없습니다. 물론 가능하지만 두 패키지가 호환되지 않기 때문에 운영 체제가 손상될 것입니다."
일반적인 용도의 경우 apt-get 대신 aptitude를 사용할 수 있습니다. 적성은 종속성을 확인하기 때문입니다.
답변4
시스템을 중단시키지 않는 간단하고 간단한 비해킹 솔루션입니다. 가능하다면...:/
명령하다백포팅 사용openssl 업그레이드 예
sudo apt -t jessie-backports install openssl