Cài đặt gói ứng dụng của bên thứ ba trên CentOS 6.4 không thành công do thiếu phụ thuộc libcrypto.so.10 và libssl.so.10


16

Đây là Câu hỏi Canonical về các vấn đề tương thích nhị phân OpenSSL giữa Red Hat Enterprise Linux (và các dẫn xuất của nó) 6.4 và 6.5.

Vấn đề này áp dụng cho nhiều gói bên thứ ba, không chỉ các gói được liệt kê trong câu hỏi ban đầu.

Tôi đã cài đặt Percona 5.5 và đang cố nâng cấp lên 5.6 nhưng tôi gặp phải sự cố không mong muốn và tôi đang bế tắc về cách giải quyết chúng.

Tôi đã làm theo hướng dẫn tại http://www.percona.com/doc/percona-server/5.6/upgrad_guide_55_56.html

Và loại bỏ các gói 5.5, sau đó chạy lệnh sau để nâng cấp:

yum install Percona-Server-server-56 Percona-Server-client-56

Các lỗi tôi nhận được là:

Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package Percona-Server-client-56.x86_64 0:5.6.15-rel63.0.519.rhel6 will be installed
--> Processing Dependency: libssl.so.10(libssl.so.10)(64bit) for package: Percona-Server-client-56-5.6.15-rel63.0.519.rhel6.x86_64
--> Processing Dependency: libcrypto.so.10(libcrypto.so.10)(64bit) for package: Percona-Server-client-56-5.6.15-rel63.0.519.rhel6.x86_64
--> Processing Dependency: Percona-Server-shared-56 for package: Percona-Server-client-56-5.6.15-rel63.0.519.rhel6.x86_64
---> Package Percona-Server-server-56.x86_64 0:5.6.15-rel63.0.519.rhel6 will be installed
--> Processing Dependency: libssl.so.10(libssl.so.10)(64bit) for package: Percona-Server-server-56-5.6.15-rel63.0.519.rhel6.x86_64
--> Processing Dependency: libcrypto.so.10(libcrypto.so.10)(64bit) for package: Percona-Server-server-56-5.6.15-rel63.0.519.rhel6.x86_64
--> Running transaction check
---> Package Percona-Server-client-56.x86_64 0:5.6.15-rel63.0.519.rhel6 will be installed
--> Processing Dependency: libssl.so.10(libssl.so.10)(64bit) for package: Percona-Server-client-56-5.6.15-rel63.0.519.rhel6.x86_64
--> Processing Dependency: libcrypto.so.10(libcrypto.so.10)(64bit) for package: Percona-Server-client-56-5.6.15-rel63.0.519.rhel6.x86_64
---> Package Percona-Server-server-56.x86_64 0:5.6.15-rel63.0.519.rhel6 will be installed
--> Processing Dependency: libssl.so.10(libssl.so.10)(64bit) for package: Percona-Server-server-56-5.6.15-rel63.0.519.rhel6.x86_64
--> Processing Dependency: libcrypto.so.10(libcrypto.so.10)(64bit) for package: Percona-Server-server-56-5.6.15-rel63.0.519.rhel6.x86_64
---> Package Percona-Server-shared-56.x86_64 0:5.6.15-rel63.0.519.rhel6 will be installed
--> Processing Dependency: libssl.so.10(libssl.so.10)(64bit) for package: Percona-Server-shared-56-5.6.15-rel63.0.519.rhel6.x86_64
--> Processing Dependency: libcrypto.so.10(libcrypto.so.10)(64bit) for package: Percona-Server-shared-56-5.6.15-rel63.0.519.rhel6.x86_64
--> Finished Dependency Resolution
Error: Package: Percona-Server-server-56-5.6.15-rel63.0.519.rhel6.x86_64 (percona)
       Requires: libcrypto.so.10(libcrypto.so.10)(64bit)
Error: Package: Percona-Server-shared-56-5.6.15-rel63.0.519.rhel6.x86_64 (percona)
       Requires: libcrypto.so.10(libcrypto.so.10)(64bit)
Error: Package: Percona-Server-server-56-5.6.15-rel63.0.519.rhel6.x86_64 (percona)
       Requires: libssl.so.10(libssl.so.10)(64bit)
Error: Package: Percona-Server-shared-56-5.6.15-rel63.0.519.rhel6.x86_64 (percona)
       Requires: libssl.so.10(libssl.so.10)(64bit)
Error: Package: Percona-Server-client-56-5.6.15-rel63.0.519.rhel6.x86_64 (percona)
       Requires: libssl.so.10(libssl.so.10)(64bit)
Error: Package: Percona-Server-client-56-5.6.15-rel63.0.519.rhel6.x86_64 (percona)
       Requires: libcrypto.so.10(libcrypto.so.10)(64bit)
 You could try using --skip-broken to work around the problem
** Found 3 pre-existing rpmdb problem(s), 'yum check' output follows:
perl-DBD-MySQL-4.022-1.el6.rfx.x86_64 has missing requires of libmysqlclient.so.16()(64bit)
perl-DBD-MySQL-4.022-1.el6.rfx.x86_64 has missing requires of libmysqlclient.so.16(libmysqlclient_16)(64bit)
perl-DBD-MySQL-4.022-1.el6.rfx.x86_64 has missing requires of mysql

Tôi đã thử mọi cách từ cài đặt lại openssl và openssl-devel được cài đặt chính xác nhưng nó vẫn không hoạt động. Có ý kiến ​​gì không?

Tôi đang chạy CentOS 6.4:

root@server01 [/]# cat /proc/version
Linux version 2.6.32-279.5.2.el6.x86_64 (mockbuild@c6b10.bsys.dev.centos.org) (gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) ) #1 SMP Fri Aug 24 01:07:11 UTC 2012
root@server01 [/]#

CentOS gọi gói bạn cần "openssl-libs"
Bandrami

Cảm ơn rât nhiều. Tôi nhìn xung quanh nhưng không thể tìm thấy bất kỳ thứ gì cho CentOS 6.4 Bạn có biết tìm ở đâu không?
dùng2643870

Câu trả lời:


14

Nguyên nhân sâu xa của vấn đề này là Red Hat đã phá vỡ tính tương thích nhị phân của các gói OpenSSL trong khoảng từ 6.4 đến 6.5, điều mà họ hứa rằng họ sẽ không làm .

Giải quyết vấn đề này rất đơn giản, nhưng tùy thuộc vào các ứng dụng bạn có thể đã triển khai, có thể có một số la hét với các nhà cung cấp ứng dụng của bạn. Hãy chắc chắn dành phần lớn ire của bạn cho đại diện Red Hat của bạn (nếu bạn có RHEL).


Nguyên nhân

Red Hat đã nâng cấp phiên bản OpenSSL trong EL6 từ 1.0.0 lên 1.0.1 trong bản cập nhật 6.5 , để giải quyết yêu cầu tính năng lâu năm để thêm hỗ trợ cryptograhpy đường cong elip. Gói này không còn tương thích nhị phân và các chương trình được xây dựng dựa trên OpenSSL 1.0.0 phải được xây dựng lại từ nguồn so với 1.0.1.

Tất nhiên trừ khi bạn cài đặt các ứng dụng của bên thứ ba, điều mà hầu như mọi người đều làm. Những cái đó cũng phải được biên dịch lại, và tại thời điểm này, hầu hết các bên thứ ba đã làm như vậy và xây dựng các gói mới so với 6.5. Đó là những gói mà các bên thứ ba thường vận chuyển ngày hôm nay.

Nghị quyết

Xác định tất cả các gói bên thứ ba bị ảnh hưởng và liên hệ với nhà cung cấp gói bên thứ ba để cập nhật. Khi các bản cập nhật có sẵn cho tất cả các gói, bạn có thể cập nhật hệ thống của mình lên 6.5 một cách an toàn, cài đặt các bản cập nhật gói của bên thứ ba cùng một lúc, sẽ hoàn thành việc giải quyết.

Đối với các gói được cài đặt thông qua trình quản lý gói và kho yum, đây là chuyện nhỏ; chỉ đơn giản là cố gắng nâng cấp và có thể làm như vậy mà không gặp vấn đề phụ thuộc có nghĩa là các gói đã sẵn sàng.

Đối với các gói được cài đặt thủ công, bạn sẽ cần tự kiểm tra các gói này và áp dụng mọi cập nhật mà nhà cung cấp đã cung cấp. Bạn cũng nên gây áp lực cho các nhà cung cấp này để cung cấp các gói RPM thích hợp và kho lưu trữ yum trong những trường hợp này.

Hầu hết người dùng có thể cập nhật lên 6.5 bằng một lệnh như:

yum --disableexcludes=all --obsoletes update

Người dùng RHEL đã đặt một bản phát hành nhỏ cụ thể trước tiên phải đặt 6.5 làm mục tiêu phát hành trước khi chạy bản cập nhật trên:

subscription-manager release --set=6.5

Tại thời điểm này, bạn sẽ có thể cài đặt (các) gói bên thứ ba mà bạn đang cố gắng cài đặt.


Các vấn đề khác

Người dùng CentOS và các bản sao khác của RHEL trên một số nhà cung cấp VPS hoặc đám mây nhất định có thể thấy rằng họ không thể cập nhật lên 6.5. Các yumlệnh sẽ nói rằng không có gói được đánh dấu để cập nhật. Cho đến nay tôi đã thấy điều này trên Windows Azure và một số nhà cung cấp VPS cấp thấp.

Trong những trường hợp này, nhà cung cấp hình ảnh CentOS đang sử dụng đã sửa đổi /etc/yum.repos.d/CentOS-Base.repotrong hình ảnh để trỏ đến các kho lưu trữ khác với các gương CentOS chính thức.

Điều này có thể được giải quyết bằng cách chỉnh sửa thủ công tệp repo để khôi phục các máy nhân bản chính thức của CentOS hoặc bằng cách định vị centos-releaseRPM chính thức trên máy nhân bản CentOS và cài đặt lại. Ví dụ: URL này chỉ tốt hôm nay và có thể hết hạn sau; kiểm tra gương của bạn trước):

yum update http://mirror.centos.org/centos/6/os/x86_64/Packages/centos-release-6-5.el6.centos.11.2.x86_64.rpm

5

Bạn có thể cài đặt PS 5.6 sau khi nâng cấp openssl lên openssl-1.0.1e-15.el6.x86_64.rpm

Đối với 6.4, chúng tôi (tôi làm việc cho Percona) cũng có sẵn một số gói tùy chỉnh: http://www.percona.com/doads/Percona-Server-5.5-centos-6.4/


Cập nhật nhỏ, liên kết ở trên đã bị xóa, chúng tôi (tôi làm việc cho Percona) sẽ sớm có các gói có sẵn, sẽ hoạt động trên tất cả các bản phát hành Centos 6.x, bao gồm cả Centos 6.4
Roel Van de Paar

Tôi cần bản phát hành này :(
Beto Castillo

Tôi cũng cần điều này, xin vui lòng cho chúng tôi biết khi có sẵn, cảm ơn!
Herson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.